使用 mongosh 从 kubernetes pod 测试 mongo Atlas 连接

Test mongo Atlas connection from a kubernetes pod with mongosh

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

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

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

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

上安装 mongodb 的文档

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

  1. 使用命令 wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add -
  2. 导入 public 密钥
  3. 为 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
  4. 重新加载本地包数据库:sudo apt-get update
  5. 安装 mongosh:sudo apt-get install -y mongodb-mongosh

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

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

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