目录
什么是Kubernetes?
Kubernetes也被称为” k8s”。这个词来自希腊语, 意思是飞行员或舵手。Kubernetes是Google在2014年设计的可扩展、可移植的开源平台。它主要用于在节点集群中自动执行基于容器的应用程序的部署、扩展和操作。它还旨在使用不同的方法来管理容器化应用程序的服务, 这些方法可提供可伸缩性、可预测性和高可用性。
它实际上是” Borg”的增强版本, 用于管理长时间运行的流程和批处理作业。如今, 许多云服务都提供了基于Kubernetes的基础架构, 可以将其部署为平台提供的服务。此技术或概念可与许多容器工具(例如docker)一起使用, 并遵循客户端-服务器体系结构。
Kubernetes的主要对象
以下是Kubernetes中存在的关键对象:
- 下:它是Kubernetes应用程序中最小、 最简单的基本单元。该节点标识集群中正在运行的进程。
- 节点:节点不过是一个主机, 用于运行虚拟机或物理机。 Kubernetes集群中的一个节点也称为奴才。
- 服务:Kubernetes中的服务是Pod的逻辑集合, 可以协同工作。借助服务, 用户可以轻松管理负载平衡配置。
- 复制集:Kubernetes中的ReplicaSet用于标识在给定时间正在运行的Pod副本的特定数量。它取代了复制控制器, 因为它功能更强大, 并允许用户使用”基于集合”的标签选择器。
- 命名空间:Kubernetes支持各种虚拟集群, 称为名称空间。这是在两个或多个用户之间分配群集资源的一种方法。
Kubernetes的特征
以下是Kubernetes的基本功能:
- Pod:它是Kubernetes中的一个部署单元, 具有单个Internet协议地址。
- 水平缩放:这是Kubernetes中的重要功能。此功能使用HorizontalPodAutoscalar根据观察到的CPU利用率自动增加或减少部署, 复制控制器, 副本集或有状态集中的窗格数。
- 自动装箱:Kubernetes帮助用户声明其容器的计算机的最大和最小资源。
- 服务发现和负载平衡:Kubernetes为一组容器分配IP地址和DNS名称, 并在它们之间平衡负载。
- 自动部署和回滚:Kubernetes使用部署, 将更改和更新分发到应用程序或其配置。如果系统中发生任何问题, 则此技术会立即为你回滚这些更改。
- 持久存储:Kubernetes提供了一项称为“持久存储”的基本功能来存储数据, 在吊舱被终止或重新安排之后不会丢失。 Kubernetes支持各种存储系统来存储数据, 例如Google Compute Engine的永久磁盘(GCE PD)或Amazon Elastic Block Storage(EBS)。