【发布时间】:2018-01-26 06:13:14
【问题描述】:
我们已经根据我们的项目要求成功创建了 pod、服务和复制控制器。现在我们计划使用 Kubernetes 在 AWS 中设置持久性存储。我已经创建了 YAML 文件以在 AWS 中创建 EBS 卷,它按预期工作正常。我能够认领卷并成功挂载到我的 pod(这仅适用于单个副本)。
但是当我尝试创建更多一个副本时,我的 pod 没有成功创建。当我尝试创建卷时,它只在一个可用区中创建。如果我的 pod 是在不同的区域节点中创建的,由于我的卷已经在不同的区域中创建,因此我的 pod 没有成功创建。如何为同一应用程序在不同区域创建卷?如何让它成功,连同副本?如何创建我的持久卷声明?
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: mongo-pvc
labels:
type: amazonEBS
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
---
apiVersion: v1
kind: ReplicationController
metadata:
labels:
name: mongo-pp
name: mongo-controller-pp
spec:
replicas: 2
template:
metadata:
labels:
name: mongo-pp
spec:
containers:
- image: mongo
name: mongo-pp
ports:
- name: mongo-pp
containerPort: 27017
hostPort: 27017
volumeMounts:
- mountPath: "/opt/couchbase/var"
name: mypd1
volumes:
- name: mypd1
persistentVolumeClaim:
claimName: mongo-pvc
【问题讨论】:
-
注意:Kubernetes 1.12(2018 年 9 月)引入了拓扑感知动态配置,这可能会有所帮助:stackoverflow.com/a/52570486/6309
标签: kubernetes