当前位置: 首页 > 知识库问答 >
问题:

在部署在kubernetes上的mongodb中更改密码

吴凯
2023-03-14

我无法从部署在k8s上的MongoDB更改现有用户的密码,除非我正在删除数据库,然后用新密码重新创建它。

如何使用yaml为mongo有状态对象更改密码而不删除DB?

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

共有1个答案

刘承悦
2023-03-14

如果我正确理解你的问题:

  • 您拥有以密码作为环境变量的secret,而pod可以通过卷访问secret数据
  • 您更改了秘密密码,但在不重新启动的情况下,pod无法接收该密码。

根据文件:

 类似资料:
  • TiCDC 是一款 TiDB 增量数据同步工具,本文介绍如何使用 TiDB Operator 在 Kubernetes 上部署 TiCDC。 前置条件 TiDB Operator 部署完成。 全新部署 TiDB 集群同时部署 TiCDC 参考 在标准 Kubernetes 上部署 TiDB 集群进行部署。 在现有 TiDB 集群上新增 TiCDC 组件 编辑 TidbCluster Custom

  • 本文介绍如何在 Kubernetes 上部署 TiFlash。 前置条件 TiDB Operator 部署完成。 全新部署 TiDB 集群同时部署 TiFlash 参考 在标准 Kubernetes 上部署 TiDB 集群进行部署。 在现有 TiDB 集群上新增 TiFlash 组件 编辑 TidbCluster Custom Resource: kubectl edit tc ${cluster

  • 本文介绍如何在 Kubernetes 上部署 TiDB Operator。 准备环境 TiDB Operator 部署前,请确认以下软件需求: Kubernetes v1.12 或者更高版本 DNS 插件 PersistentVolume RBAC 启用(可选) Helm 版本 >= 2.11.0 && < 3.0.0 && != 2.16.4 部署 Kubernetes 集群 TiDB Oper

  • 本文档最初是基于kubenetes1.6版本编写的,对于kuberentes1.8及以上版本同样适用,只是个别位置有稍许变动,变动的地方我将特别注明版本要求。 本系列文档介绍使用二进制部署 kubernetes 集群的所有步骤,而不是使用 kubeadm 等自动化方式来部署集群,同时开启了集群的TLS安全认证,该安装步骤适用于所有bare metal环境、on-premise环境和公有云环境。 如

  • 我已经使用create react app构建了一个静态react网站,并使用git和github在netlify中部署了它。事实证明,我现在必须在我的网站上做一个小小的改变。我应该怎么做才能使更改反映在已部署的站点上。我在github中提交了更改,但更改没有显示在实时部署的url中。

  • 我已经在应用程序中添加了这些字段。pom中微服务和依赖关系的yml。xml。Jaeger在my local上运行也可以识别服务 我已经在kubernetes上部署了所有的微服务。请帮助我在kubernetes部署jaeger。 更新:我已达到此步骤。我有一个用于jaeger查询的负载平衡器IP。但是我的微服务将把日志发送到哪个主机和端口??