无法在OpenShift上连接或装载Postgres pod副本的卷



我在OpenShift上部署了一个postgres pod和一个PVC,我认为我正确地连接了它,但我可能错了。这是我的PVC,它被正确绑定-

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: postgres-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
storageClassName: xxxxx

我创建了带有PGDATAenv设置为/var/lib/postgresql/pgdata的postgres pods,并安装了类似PVC的so-

oc set volume dc/postgres --add --name=postgres-pvc --type=persistentVolumeClaim 
--claim-name=postgres-pvc --mount-path=/var/lib/postgresql/pgdata --containers=postgres

我最初试图通过覆盖原始容器卷将PVC连接到/var/lib/postgresql/data,但它说直接安装到data文件夹路径之类的东西存在问题,所以这就是我使用pgdata的原因。

oc set volume dc/postgres --add --overwrite --name=postgres-volume-1 --type=persistentVolumeClaim 
--claim-name=postgres-pvc --mount-path=/var/lib/postgresql/data --containers=postgres

我现在遇到的错误是,当我试图通过DC扩大吊舱/添加副本时,它会出现以下错误-

Unable to attach or mount volumes: unmounted volumes=[postgres-pvc], unattached volumes=[postgres-volume-1 postgres-pvc postgres-token-h7jvr]: timed out waiting for the condition

Error while attaching the device pv pvc-b87b49ff-2bce-495c-b17f-b45f51eab27b cannot be attached to the node xx.xx.xxx.xx. Error: PV pvc-b87b49ff-2bce-495c-b17f-b45f51eab27b is already attached to another node xx.xx.xxx.x and there are active pods [postgres-7-6p6sz] using that

是因为我的PVC安装不正确吗?或者我需要创建一个新的PVC,然后手动将新的pod更新为新创建的PVC?

因为您可以看到错误

已经连接到另一个节点xx.xx.xxx.x,并且有活动pod[postgres-7-6p6sz]正在使用该

您正在使用块存储作为pv,它具有ReadWriteOnceaccessModes,这意味着在任何给定时间,卷都可以连接到单个kubernetes节点,然后在该节点上,pod可以装载它。现在,如果你想连接到另一个pod,你需要删除现有的pod,这将使pv从上一个节点中脱离,重新连接到新节点。

有关更多详细信息,请参阅持久卷/

相关内容

  • 没有找到相关文章

最新更新