📌  相关文章
📜  Google Cloud Platform – Kubernetes中的节点概念

📅  最后修改于: 2021-04-17 03:43:14             🧑  作者: Mango

在本文中,我们将弄清楚Kubernetes是如何在节点上实际运行容器的。让我们研究一下使Kubernetes可用,可扩展并且简直很棒的概念。节点是您在其上运行工作负载的虚拟机或物理机。在Kubernetes中,我们在群集上进行操作,群集是一个或多个工作程序节点的组。但是为了获得Kubernetes提供的自动化,节点不仅仅是任何旧的虚拟机或物理机。

每个节点实际上包含运行Pod所需的服务。容器运行时运行的容器,一个KUBE L为确保应该运行一切,和KUBE-代理处理网络。

这就是Kubernetes跟踪豆荚的方式。这也解释了Pod如何获得IP端点和其他必要功能以进行大规模运行,例如能够连接到正在运行的Pod进行调试。

现在,如果我们必须手动管理每个节点上的所有Pod,将无法处理。这就是Kubernetes存在的最重要原因之一。 Kubernetes实际管理这些Pod的方式是通过所谓的控制平面。控制平面负责通过公开API处理所有这些细节。 Kubernetes可以在这里定义,部署和管理我们的Pod的生命周期。控制平面上发生了很多事情。

让我们看一下组成控制平面的一些组件及其功能。首先,有API服务器本身,它处理所有API对象的数据验证和配置。接下来是etcd,这是一个键值存储,用于保存Kubernetes使用的所有重要数据。另外,还有调度程序。在这里,将确定Pod的确切运行位置。调度程序可以查看所有节点的可用资源,并确保将pod转到可以对其进行处理的节点。

核心Kubernetes逻辑所在的Controller Manager。生命周期管理是这里的主要职责之一,以确保所有各个部分都能正常工作。同样,有一个云控制器管理器,它使Kubernetes可以连接到云提供程序。因此,如果您正在运行Google Kubernetes Engine,则在需要某些东西(例如节点的新虚拟机)时,可以使用Cloud Controller Manager与Google Cloud对话。

节点上的kubelet正在监视节点本身正在发生的事情。因此,当控制平面需要在该节点上调度Pod时,控制平面和节点本身都具有足够的信息以确保其正常工作。另外,如果某个吊舱遇到问题,则控制面板将与该kubelet一起使用,以删除不健康的吊舱,并用新的吊舱替换它。