【发布时间】:2021-04-23 01:21:54
【问题描述】:
我无法从部署在 k8s 上的 MongoDB 更改现有用户的密码,除非我删除数据库然后使用新密码重新创建它。
如何在不删除数据库的情况下使用 yaml 更改 mongo 状态对象的密码?
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mongo-db-statefulset
namespace: development
spec:
serviceName: mongo-svc
replicas: 1
selector:
matchLabels:
component: mongo
template:
metadata:
labels:
component: mongo
spec:
terminationGracePeriodSeconds: 10
containers:
- name: mongo
image: mongo:4.0.4
volumeMounts:
- mountPath: /data/db
name: volume
ports:
- containerPort: 27017
env:
- name: MONGO_INITDB_ROOT_USERNAME
value: admin
- name: MONGO_INITDB_ROOT_PASSWORD
# from secrets
value: password
- name: MONGO_INITDB_DATABASE
value: admin
volumes:
- name: volume
persistentVolumeClaim:
claimName: database-persistent-volume-claim
【问题讨论】:
-
如果您不想删除数据库,您不能使用这些命令更改密码吗? docs.bitnami.com/bch/apps/lets-chat/administration/…
-
嗨@Mike Me,您所说的
# from secrets是什么意思,MONGO_INITDB_ROOT_PASSWORD 是来自秘密的值,您在秘密中更改了它,还是在 statefulset yaml 中指定? -
嗨@Jakub 它存储在一个秘密中并在那里进行了更改。
标签: mongodb kubernetes