ad

《基于Kubernetes的容器云平台实战》_了解最新技术前沿_7.1 Kubernetes 架构及组件

admin 67 2023-10-25

【摘要】 本书摘自《基于Kubernetes的容器云平台实战》一书中第7章,第1节,由陆平、左奇、付光和张晗等编著。

7.1 Kubernetes 架构及组件

尽管Docker为容器管理提供了一个有用的抽象层和工具层,但Kubernetes不仅带来了 类似的协助,还可以进行大规模容器编排并管理完整的应用程序堆栈。

《基于Kubernetes的容器云平台实战》_了解最新技术前沿_7.1 Kubernetes 架构及组件

图7-1展示了Kubernetes的核心架构。 Kubernetes为我们提供了自动化和工具来确保 高可用性和服务可移植性。 Kubernetes还可以更好地控制资源使用情况,如整个基础架构中 的CPU、 内存和磁盘空间。 Kubernetes的大多数管理交互都是通过Kubectl脚本或 Restful 服务调用API 来完成的。

Kubernetes管理集群及其工作负载的关键是:对比期望状态和实际状态。所有 Kubernetes都在不断监测当前的实际状态,并通过API 服务器或 Kubectl脚本与管理员定义 的期望状态进行同步。有时候这些状态不匹配,但系统总是在努力调和这两个状态。

7.1.1 Master节点

客户端通过Kubectl命 令 行 工 具 或Kubectl Proxy来 访 问Kubernetes系统,在 Kubernetes集群内部的客户端可以直接使用Kubectl命令管理集群。 Kubectl Proxy是 API 服务器的一个反向代理,在Kubernetes集群外部的客户端可以通过 Kubectl Proxy来访问 API 服务器。

从本质上讲, Kubernetes 管理节点是Kubernetes 集群的大脑。

Kubernetes 管理节点包含API 服务器,它提供基于Restful 的 Web Service 接口以用于 查询或者定义我们所需要的各种集群和状态。需要注意的是,所有Kubernetes集群对象的 增、删、改、查操作只能通过访问Kubernetes管理集群的主管理节点来操作,不能直接访 问各 Node 节点。

API 服务器内部有一套完备的安全机制,包括认证、授权及准入控制等相关模块。 API 服务器在收到一个REST 请求后,会首先执行认证、授权和准入控制的相关逻辑,过滤非 法请求,然后将请求发送给API 服务器中的REST 服务模块以执行资源的具体操作逻辑。

此外, Kubernetes管理节点还包含调度程序,该程序与API 服务器协同工作,以 Node 节点上的实际Pod 为单位进行工作负载调度。默认情况下,基本 Kubernetes 调度程序将各 Pod分散到集群中,并使用不同的节点来匹配Pod 副本。 Kubernetes 还允许为每个容器指定 必要的资源,因此可以通过这些附加因素来改变调度策略。

复制控制器与API 服务器一起工作,以确保在任何给定时间正确运行Pod 副本数量。

如果我们的复制控制器定义了三个副本,并且我们的实际状态是两个Pod 副本,那么调度 程序将被调用以在群集中某处添加第三个Pod 副本。如果在任何给定时间发现集群中运行 的 Pod 副本数过多,则会销毁部分Pod 副本。通过这种方式, Kubernetes 总是保持用户预 先设定的集群状态。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 [email protected] 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《零基础Linux 从入门到精通》_从零开始_轻松掌握Linux操作系统_21.1 防火墙介绍
下一篇:《JAVA服务端研发知识图谱》_让你更懂Java后台研发_1.4 对象
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×