我已经在kubernetes中部署了postgresql有状态服务,现在将/bitnami/postgresql映射到NFS,如下所示:
spec:
volumes:
- name: dshm
emptyDir:
medium: Memory
- name: data-reddwarf-postgresql-postgresql-general
persistentVolumeClaim:
claimName: data-reddwarf-postgresql-postgresql-general
containers:
- name: reddwarf-postgresql
image: docker.io/bitnami/postgresql:13.3.0-debian-10-r75
ports:
- name: tcp-postgresql
containerPort: 5432
protocol: TCP
env:
- name: BITNAMI_DEBUG
value: 'false'
- name: POSTGRESQL_PORT_NUMBER
value: '5432'
- name: POSTGRESQL_VOLUME_DIR
value: /bitnami/postgresql
- name: PGDATA
value: /bitnami/postgresql/data
- name: POSTGRES_USER
value: postgres
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: reddwarf-postgresql
key: postgresql-password
- name: POSTGRESQL_ENABLE_LDAP
value: 'no'
- name: POSTGRESQL_ENABLE_TLS
value: 'no'
- name: POSTGRESQL_LOG_HOSTNAME
value: 'false'
- name: POSTGRESQL_LOG_CONNECTIONS
value: 'false'
- name: POSTGRESQL_LOG_DISCONNECTIONS
value: 'false'
- name: POSTGRESQL_PGAUDIT_LOG_CATALOG
value: 'off'
- name: POSTGRESQL_CLIENT_MIN_MESSAGES
value: error
- name: POSTGRESQL_SHARED_PRELOAD_LIBRARIES
value: pgaudit
resources:
limits:
cpu: 600m
memory: 1Gi
requests:
cpu: 250m
memory: 256Mi
volumeMounts:
- name: dshm
mountPath: /dev/shm
- name: data-reddwarf-postgresql-postgresql-general
mountPath: /bitnami/postgresql现在,我想添加另一个从部署到NFS的文件夹/docker-entrypoint-preinitdb.d映射。是否需要添加一个新的PVC&PV来映射新文件夹?我应该做什么来使用相同的PV&PVC与多个文件夹,以便我不需要添加额外的NFS映射?我已经尝试过这样的配置:
volumeMounts:
- name: dshm
mountPath: /dev/shm
- name: data-reddwarf-postgresql-postgresql-general
mountPath: /bitnami/postgresql
- name: data-reddwarf-postgresql-postgresql-general
mountPath: /docker-entrypoint-preinitdb.d但是NFS文件夹没有创建容器文件夹docker-entrypoint-preinitdb.d。看来地图没能成功。
发布于 2022-07-19 13:44:29
你绝对应该有一卷单独的书。
即使您设法在不同的位置多次挂载相同的PV,每个挂载仍然会公开PV中的所有文件和目录。如果/docker-entrypoint-preinitdb.d包含大量脚本而没有实际数据,则可以使用ConfigMap而不是创建新的NFS。
https://stackoverflow.com/questions/73032037
复制相似问题