Kubernetes 教程

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/kubernetes-node.html

Kubernetes 节点(node)详解


节点(node)是 Kubernetes 集群中的工作机器,也称为 minion。它们是工作单元,可以是物理、VM 或云实例。

每个节点都具有在其上运行 pod 所需的所有配置,例如代理服务和 kubelet 服务以及 Docker,用于在节点上创建的 pod 上运行 Docker 容器。

它们不是由 Kubernetes 创建的,而是由云服务提供商或物理或 VM 机器上的 Kubernetes 集群管理器在外部创建的。

Kubernetes 处理多个节点的关键组件是控制器管理器,它运行多种控制器来管理节点。为了管理节点,Kubernetes 创建了一个对象类型节点,它将验证创建的对象是一个有效节点。

带有 Selector 的服务

apiVersion: v1
kind: node
metadata:
  name: <ip address of the node>
labels:
  name: <lable name>

以 JSON 格式创建实际对象,如下所示:

{
  "kind": "node",
  "apiVersion": "v1",
  "metadata": {
    "name": "10.01.1.10",
    "labels": {
      "name": "cluster 1 node"
    }
  }
}

节点控制器

它们是在 Kubernetes master 中运行的服务的集合,并基于 metadata.name 持续监控集群中的节点。如果所有必需的服务都在运行,那么该节点将被验证并且控制器将分配一个新创建的 Pod 给该节点。如果它是无效的,那么 master 不会分配任何 pod 给它,并且会一直等到它变得有效。

如果 --register-node 标志为真,Kubernetes master 会自动注册节点。

–register-node = true

但是,如果集群管理员想要手动管理它,那么可以通过如下设置:

–register-node = false