【发布时间】:2021-12-28 02:18:15
【问题描述】:
我正在使用多节点 Kubernetes 集群。我正在使用以下 YAML 来连接和管理主机。
apiVersion: v1
kind: Pod
metadata:
name: my-nsenter-test
spec:
hostPID: true
hostNetwork: true
hostIPC: true
containers:
- name: my-nsenter-test
image: ubuntu:18.04
command: ["tail"]
args: ["-f", "/dev/null"]
securityContext:
privileged: true
但我想使用单个 POD 连接和管理多节点集群(集群中的任何其他节点)。
【问题讨论】:
-
请提供有关您当前设置的更多信息 - 您正在使用哪个 Kubernetes 版本,您使用哪种解决方案来设置集群(kubeadm 或某些云提供商解决方案等)。 “管理多节点集群”是什么意思——你想与 Kubernetes API 通信吗?
-
@MikolajS。我正在使用 3 节点集群。我正在将 microk8s 用于 kubernetes 集群。管理多节点集群意味着,我需要从 POD 连接所有 3 个节点并运行命令。
-
感谢您提供的所有信息。请提供您使用的 Kubernetes 版本的信息。 “我需要从 POD 连接所有 3 个节点并运行命令”是什么意思 - 你能澄清一下吗?您想连接到 Kubernetes API 并从 pod 运行
kubectl命令,或者只是从单个 pod 到所有节点的 SSH? -
我使用的是microk8s版本v1.19.15-34+c064bb32deff78。 “我需要从 POD 连接所有 3 个节点并运行命令”意味着我需要连接任何节点并在主机中运行升级安全补丁、修改主机文件、安装软件包等命令。
-
感谢您提供有关版本的信息。目前还不清楚你想要实现什么 - 让我解释一下我现在是如何理解的 - 你想使用
kubectl exec命令连接到 pod shell 并从 pod 连接到节点 shell - 例如使用 @ 987654324@ 命令?您在问题标题中提到的 nsenter 实用程序有什么意义?
标签: docker ubuntu kubernetes nsenter