每个人。
请教我为什么kubectl get nodes
命令在完全托管的 kubernetes 集群中不返回主节点信息。
我在 GKE 中有一个 kubernetes 集群。当我输入kubectl get nodes
命令时,我得到以下信息。
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
gke-istio-test-01-pool-01-030fc539-c6xd Ready <none> 3m13s v1.13.11-gke.14
gke-istio-test-01-pool-01-030fc539-d74k Ready <none> 3m18s v1.13.11-gke.14
gke-istio-test-01-pool-01-030fc539-j685 Ready <none> 3m18s v1.13.11-gke.14
$
Run Code Online (Sandbox Code Playgroud)
当然,我可以获得工作节点信息。此信息与 GKE Web 控制台相同。顺便说一句,我还有另一个 kubernetes 集群,它是由三个树莓派和 kubeadm 构建的。kubectl get nodes
当我向该集群键入命令时,我得到以下结果。
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
master Ready master 262d v1.14.1
node01 Ready <none> 140d v1.14.1
node02 Ready <none> 140d v1.14.1
$
Run Code Online (Sandbox Code Playgroud)
该结果包括主节点信息。
我很好奇为什么我无法获取完全托管的 kubernetes 集群中的主节点信息。据我了解,完全托管服务的优点是我们不必管理管理层。我想知道如何创建一个不显示主节点信息的kubernetes集群。我尝试用“困难的方式”创建一个集群,但找不到任何可以作为提示的信息。
至少,我现在只是在学英语。如果我错了,请纠正我。
这是个好问题!
\n\n关键是kubelet
Kubernetes 的组件。
\n托管 Kubernetes 版本在主节点上运行控制平面组件,但它们不运行kubelet
. 您可以在 DIY 集群上轻松实现相同的目标。
\n\n\nkubelet 是在每个节点上运行的主要 \xe2\x80\x9cnode 代理\xe2\x80\x9d。是可以注册的节点:主机名;覆盖主机名的标志;或云提供商的特定逻辑。
\n
https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/
\n\n\n\n\n当 kubelet 标志 --register-node 为 true(默认)时,kubelet 将尝试向 API 服务器注册自身。这是大多数发行版使用的首选模式。
\n
https://kubernetes.io/docs/concepts/architecture/nodes/#self-registration-of-nodes
\n 归档时间: |
|
查看次数: |
2474 次 |
最近记录: |