kubernetes - 是否可以对 Pod 中的 VM 执行 ssh?
问题描述
我在 GKE 上的 Kubernetes 集群中有一个 pod,它可以在 Azure 上远程创建一个 Kubernetes 集群,我想从 pod 连接到 Azure 集群的主 VM,这样我就可以在其上远程运行一些命令。但是,每当我在 pod 内运行 ssh / scp 时都会遇到超时问题:
ssh: connect to host port 22: Connection timed out
我已经在我的 pod 中安装了 OpenSSH-client/server。我确保 VM 具有公共 IP 地址,并且 pod 也可以访问 VM 的私钥。我尝试通过 ssh 连接到笔记本电脑上的 Azure 主 VM,它运行良好。有任何想法吗?
解决方案
请按照以下步骤操作
- 在 azure 集群中部署一个包含 ssh 二进制文件的测试 pod。
- 更新集群节点上的 ssh 证书(如果您已经拥有证书,请忽略)
- 使用 kubectl cp 命令将 ssh 证书复制到测试 pod
- 进入测试 pod 和 ssh 到任何集群节点
- 您应该能够在集群节点上运行命令
推荐阅读
- reactjs - 您如何一次将文本区域动态添加到页面?
- android - 我刚刚将 Android Studio 从 3.6 更新到 4.0,我收到错误最低支持的 Gradle 版本是 6.1.1。当前版本是 5.6.4
- docker - 尝试在 Traefik 上配置 HTTPS 时出现 502 Bad Gateway
- css - 从 string.Split 中排除单词
- asp.net-core - ef core 可能会更新很多额外的文件
- c - 使用 waitpid() 函数时,第二个 wstatus 值填充为 11 或 139
- homebrew - 我们如何减少 homebrew-cask 和 homebrew-core 文件夹的大小?
- r - 在保留注释的同时解析 R 表达式
- php - 注意:尝试访问第 25 行 C:\xampp\htdocs\twitter\core\classes\follow.php 中 bool 类型值的数组偏移量
- c# - application.System.InvalidOperationException:无法解析类型“Projects.Models.DatabaseContext”的服务