K8S部署CloudNativePG,忘记设置密码,修改管理员密码解决方案
直接进入容器修改(不推荐!)
当部署CloudNativePG,特别是使用yml部署集群时,忘了设置密码,但是集群已经部署完成,需要找回密码时,可以直接进入rw的节点,然后修改密码即可
kubectl get pod -A -o wide
kubectl exec -it pg-instance-1 -n pg-system -- /bin/bash
psql
ALTER USER postgres PASSWORD '123456';
从配置文件修改
- 修改cluster的配置
cluster的配置片段:
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:name: pg-instancenamespace: pg-system
spec:instances: 3# 这个不设置为true,下面的设置不会生效enableSuperuserAccess: truesuperuserSecret:# 这一行填写superuser的namename: cluster-superuser
- 创建配置文件superuser.yml
- 然后apply进去
kubectl apply -f superuser.yml
apiVersion: v1
data:password: MTIzNDU2username: cG9zdGdyZXM=
kind: Secret
metadata:name: cluster-superusernamespace: pg-system
type: kubernetes.io/basic-auth