4.5 Node节点
Node节点也被称为Worker、Node和Minion,是主要负责部署容器(工作负载)的单机(或虚拟机),集群中的每个节点都必须具备容器的Runtime(运行时),比如Docker或其他遵循CRI标准的Runtime等。
Kubelet作为守护进程运行在Node节点上,负责监听该节点上所有的Pod,同时负责上报该节点上所有Pod的运行状态,确保节点上的所有容器都能正常运行。当Node节点宕机或故障(NotReady状态)时,该节点上运行的Pod会被自动转移到其他节点上。
Node节点包括:
-
Kubelet:负责与Master通信协作,管理该节点上的Pod,对容器进行健康检查及监控,同时负责上报节点和节点上面Pod的状态。
-
Kube-Proxy:负责各Pod之间的通信和负载均衡,将指定的流量分发到后端正确的机器上。
-
Docker Engine:Docker引擎,负载对容器的管理。
其他组件及工具:
2uw6qeH5EdPNpCiMxglr2PZPpUDE2h3M8i2SQfZfB54REsS1DwqfDcZM/u39gwW5
-
CoreDNS:用于Kubernetes集群内部Service的解析,可以让Pod把Service名称解析成Service的IP,然后通过Service的IP地址连接到对应的应用上。
-
Calico:符合CNI标准的一个网络插件,它负责给每个Pod分配一个不会重复的IP,并且把每个节点当作一个“路由器”,这样一个节点的Pod就可以通过IP地址访问其他节点的Pod。