2012年,eBay的工程师谈到了eBay是如何运行50000台服务器的。他们还提到,eBay正在试验一种自我修复系统来管理50000台服务器。这在参与者中引起了相当大的轰动。在那些日子里,自我康复是一个相当新生的概念。但现在不是了。构建自愈系统不需要理解复杂的系统概念。你可以用Kubernetes代替。
什么是Kubernetes?
Kubernetes,也称为K8s,是一个开源系统,用于自动化容器化应用程序的部署、扩展和管理。它将构成应用程序的容器分组到逻辑单元中,以便于管理和发现。
Kubernetes这个名字源于希腊语,意思是舵手或飞行员。K8s作为一个缩写,是通过计算“K”和“s”之间的八个字母得出的。谷歌在2014年开放了Kubernetes项目。Kubernetes将谷歌15年来大规模运行生产工作负载的经验与社区的最佳想法和实践相结合
https://kubernetes.io/
最近,Kubernetes已经成为在公共、私有或混合云基础设施中部署容器化应用程序的事实标准。Kubernetes是一个开源容器编排平台。Kubernetes提供的一些重要功能包括——
- 自动展开和回滚
- 服务发现
- 自愈
- 水平缩放
让我们尝试了解Kubernetes体系结构及其主要组件。
Kubernetes架构
Kubernetes在一个称为Kubernetes集群的逻辑单元中对机器车队进行分组。Kubernetes集群由控制平面和一组称为节点的工作机器组成。可以在高可用性模式下运行许多控制平面组件。
控制平面
控制平面公开用于定义、部署和管理容器生命周期的API。控制平面由许多逻辑单元组成。控制平面组件负责管理Kubernetes基础设施。
工作节点
工作节点运行容器化应用程序。在Kubernetes中,应用程序工作负载称为POD。POD由工作节点承载。控制平面管理集群中的工作节点和POD。
控制平面组件
Kubernetes将机器机队组合在一个可以由API管理的逻辑单元中。控制平