首页 > 解决方案 > 使用 mongosh 从 kubernetes pod 测试 mongo Atlas 连接

问题描述

我正在尝试将 GKE pod 连接到 mongodb Atlas。

我在 Atlas 和 GCP VPC 网络之间设置并激活了 VPC 对等网络连接,但我无法在 gcloud 终端或 GKE pod 上配置 mongosh 来测试我的连接。

我该怎么做呢?完全卡住了!

标签: google-kubernetes-enginemongodb-atlasmongo-shellgke-networking

解决方案


要在 Cloud Shell 中安装 mongosh,您首先需要使用命令找出正在运行的操作系统lsb_release -dc;对于这个例子,运行的操作系统是“Debian GNU/Linux 10 (buster)”。在这里,您可以找到有关如何在不同操作系统上安装 mongodb [1] 的文档。

这些是在 Debian 系统上安装 mongosh 社区版的步骤:

  1. 使用命令导入公钥wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
  2. 为 mongodb 包创建一个列表文件:echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/5.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-5.0.list
  3. 重新加载本地包数据库:sudo apt-get update
  4. 安装 mongosh:sudo apt-get install -y mongodb-mongosh

现在,对于在 GKE pod 上的安装,您有几个选择;首先,使用命令在正在运行的 pod 中打开一个 bash 命令 shell,kubectl exec -it pod-name -- /bin/bash然后使用提供的步骤从那里安装 mongosh(这些步骤可能因 pod 映像所基于的操作系统而异)。第二个选项是在您的 pod [2] 中运行一个 mongodb docker 映像,该映像已经加载了运行 mongodb 所需的所有依赖项,包括 mongosh,在这种情况下,您只需要在您的 pod 中打开一个 bash 命令 shell 并测试。

[1] https://docs.mongodb.com/manual/installation/

[2] https://hub.docker.com/_/mongo


推荐阅读