Kubernetes 是一款开源软件,您可以利用它大规模地部署和管理容器化应用程序。其具体工作原理就是根据可用计算资源和每个容器的资源要求,管理计算实例集群,并调度要在集群上运行的容器。
一、什么是Kubernetes
Kubernetes 是一款开源软件,您可以利用它大规模地部署和管理容器化应用程序。Kubernetes 管理 Amazon Elastic Compute Cloud (EC2) 计算实例的集群,并在这些实例上运行容器和执行部署、维护和扩缩的进程。借助 Kubernetes,您可以在本地和云中使用相同的工具集运行任何类型的容器化应用程序。
二、Kubernetes 的工作原理
Kubernetes 的具体工作原理就是根据可用计算资源和每个容器的资源要求,管理计算实例集群,并调度要在集群上运行的容器。在逻辑分组中运行的容器被称为 Pod,您可以将一个或多个容器作为一个 Pod 进行运行和扩展。
Kubernetes 控制层面软件确定何时何地运行 Pod、管理流量路由选择,以及根据利用率或您定义的其他指标扩展 Pod。Kubernetes 可以根据资源需求自动在集群上启动 Pod,并在 Pod 或它们运行的实例出现故障时自动重启 Pod。每个 Pod 都会获得一个 IP 地址和一个 DNS 名称,Kubernetes 用它们来连接您的服务和外部流量。
三、 Kubernetes 的优点
由于 Kubernetes 是一个开源项目,您可以用它在任何地方运行您的容器化应用程序,而无需更换操作工具。Kubernetes 由志愿者组成的大型社区进行维护,并且在不断改进。此外,其他很多开源项目和供应商都在构建和维护与 Kubernetes 兼容的软件,您可以利用这些软件改进并扩展您的应用程序架构。
大规模运行应用程序
Kubernetes 允许您定义复杂的容器化应用程序,并能跨服务器集群大规模运行这些应用程序。
无缝迁移应用程序
借助 Kubernetes,可以使用相同的操作工具将容器化应用程序从本地开发机器无缝迁移到云中的生产部署。
随处运行
在 AWS 上运行高度可用且可扩展的 Kubernetes 集群,同时保持与本地运行的 Kubernetes 部署完全兼容。
添加新功能
Kubernetes 是一个开源项目,因此很容易为其添加新功能。由开发人员和企业组成的大型社区积极构建可以让 Kubernetes 实现更多功能的扩展、集成和插件。