gpt4 book ai didi

mongodb - MongoDB在kubernetes中不持久

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

我正在尝试在k8s世界中配置mongodb部署。
我的mongo部署文件如下所示:

apiVersion: apps/v1
kind: Deployment
metadata:
name: panel-admin-mongo-deployment
spec:
replicas: 1
selector:
matchLabels:
component: panel-admin-mongo
template:
metadata:
labels:
component: panel-admin-mongo
spec:
volumes:
- name: panel-admin-mongo-storage
persistentVolumeClaim:
claimName: database-persistent-volume-claim
containers:
- name: panel-admin-mongo
image: mongo
ports:
- containerPort: 27017
volumeMounts:
- name: panel-admin-mongo-storage
mountPath: /data/db

Mongo服务文件:
apiVersion: v1
kind: Service
metadata:
name: panel-admin-mongo-cluster-ip-service
spec:
type: ClusterIP
selector:
component: panel-admin-mongo
ports:
- port: 27017
targetPort: 27017

我的持续销量声称:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: database-persistent-volume-claim
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 2Gi

当我使用以下命令进入mongodb容器时: kubectl exec -it panel-admin-mongo-deployment-6dcfc5b8c7-mk8d5 sh并且我将一些用户的电子邮件和密码(例如f.ex.用户)保存在集合中,一切正常。但是当我击落 pods 和其中的容器时,再次启动,数据就消失了。不应该独立于Pod的生命周期吗?如果是,我想念什么?

最佳答案

我不是k8s专家,但是您的问题是您没有使用Kubernetes statfulsets,请在此处查看
https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/

AFAIK,对于任何持久部署,您都需要使用statefulsets创建pod。

关于mongodb - MongoDB在kubernetes中不持久,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59505819/

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