gpt4 book ai didi

kubernetes - Kubernetes 中的持久存储不会持久化数据

转载 作者:行者123 更新时间:2023-12-02 16:51:28 24 4
gpt4 key购买 nike

在我的 Kubernetes 集群中,在我的数据库容器上,如果 pod 被删除,我的持久存储(在 Digital Ocean 上动态配置)不会持久存储。

我已将存储的回收策略从删除更改为保留,但这没有什么不同。

这是 DB YAML 文件的副本:

apiVersion: v1
kind: Service
metadata:
name: db
namespace: hm-namespace01
app: app1
spec:
type: NodePort
ports:
- port: 5432
selector:
app: app1

---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: hm-pv-claim
namespace: hm-namespace01
labels:
app: app1
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
storageClassName: do-block-storage

---
apiVersion: apps/v1
kind: Deployment
metadata:
name: app1
namespace: hm-namespace01
labels:
app: app1
spec:
selector:
matchLabels:
app: app1
tier: backend
strategy:
type: Recreate
template:
metadata:
labels:
app: app1
tier: backend
spec:
containers:
- name: app1
image: postgres:11
imagePullPolicy: "IfNotPresent"
ports:
- containerPort: 5432
volumeMounts:
- name: postgredb
mountPath: /var/lib/postgresql

volumes:
- name: postgredb
persistentVolumeClaim:
claimName: hm-pv-claim

最佳答案

您必须将 mountPath 与 Postgres PGDATA 环境变量相匹配。

default value of PGDATA/var/lib/postgresql/data(不是 /var/lib/postgresql)。

您需要调整您的 mountPath 或设置 PGDATA env 以匹配它。

关于kubernetes - Kubernetes 中的持久存储不会持久化数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58528663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com