我想在启用本地 PV的裸元 kubernetes 1.7 中设置一个预定义的 PostgreSQL 集群。我有三个工作节点。我在每个节点上创建本地 PV 并成功部署有状态集(使用一些复杂的脚本来设置 Postgres 复制)。
但是我注意到在volumeClaimTemplates 和PersistentVolumeClaim 之间有一种命名约定。例如
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
name: postgres
volumeClaimTemplates:
- metadata:
name: pgvolume
创建的 pvc 是pgvolume-postgres-0
, pgvolume-postgres-1
, pgvolume-postgres-2
.
有点棘手,我手动创建 PVC 并通过选择器绑定到目标 PV。我再次测试有状态集。看来有状态集很乐意使用这些 PVC。
我成功地完成了我的测试,但我仍然有这个问题。我可以依赖 volumeClaimTemplates 命名约定吗?这是一个未记录的功能吗?