从 Kubernetes 内部连接到 MongoDB 数据库资源
以下过程描述如何从 Kubernetes 集群内部连接到 Kubernetes 部署的 MongoDB 资源。
Considerations
您必须能够连接到部署 Kubernetes 资源的主机和端口。 要了解有关连接到部署的更多信息,请参阅连接到 MongoDB 进程。
步骤
检索并运行部署的连接命令。您可以从MongoDB Ops Manager或Cloud Manager应用程序检索连接命令,具体取决于集群的托管位置。您还可以从Kubernetes 密钥 中检索连接命令,该密钥是在您使用SCRAM身份验证或 X509 添加MongoDB用户时Kubernetes Operator 自动创建的。
连接 MongoDB 数据库资源的过程视您想要检索连接字符串的方式而有所不同:
在 Ops Manager 或 Cloud Manager 应用程序中执行以下步骤,具体取决于托管集群的位置:
从 Kubernetes 内部连接到资源时,您连接的主机名具有以下形式:
<k8s-pod-name>.<k8s-internal-service-name>.<k8s-namespace>.<cluster-name>
当您创建新的MongoDB database 用户时,Kubernetes Operator 会自动创建新的Kubernetes 密钥 。Kubernetes 的 秘密 包含有关新数据库用户的以下信息:
username
:数据库用户的用户名password
:数据库用户的密码connectionString.standard
:标准连接string ,可以让您以此数据库用户的身份连接到数据库。connectionString.standardSrv
: DNS 种子列表连接string ,可以让您以此数据库用户的身份连接到数据库。
注意
或者,您可以在MongoDB 用户资源规范中指定可选的spec.connectionStringSecretName
字段,以指定 Kubernetes Operator 创建的连接字符串密钥的名称。
执行以下步骤以查看档案并使用连接string连接到MongoDB :
运行连接命令。
使用连接string中的 connectionString.standard
值连接到部署。
mongosh {connectionString.standard}
(可选)在 Pod 中挂载 Kubernetes 密钥。
您可以 在 pod 中挂载密钥 以确保您的应用程序可以访问档案。