目标
- 了解 Kubernetes 集群是什么。
- 了解 Minikube 是什么。
- 在您的计算机上启动 Kubernetes 集群。
Kubernetes 集群
Kubernetes 协调高度可用的计算机集群,这些计算机连接在一起作为单个单元工作。Kubernetes 中的抽象使您可以将容器化应用程序部署到集群,而无需将它们专门绑定到单个机器。为了利用这种新的部署模式,应用程序需要以一种将它们与单个主机分离的方式进行打包:它们需要容器化。容器化应用程序比过去部署模型更加灵活和可用,在过去部署模型中,应用程序作为深度集成到主机中的包直接安装到特定机器上。Kubernetes 以更有效的方式自动执行应用程序容器在集群中的分布和调度。Kubernetes 是一个开源平台,并且已投入生产。
Kubernetes 集群包含两种类型的资源
- 控制平面协调集群
- 节点是运行应用程序的工人
总结
- Kubernetes 集群
- Minikube
Kubernetes 是一个生产级的开源平台,它协调应用程序容器在计算机集群内部和跨集群的放置(调度)和执行。
集群图
控制平面负责管理集群。控制平面协调集群中的所有活动,例如调度应用程序、维护应用程序的预期状态、扩展应用程序以及推出新的更新。
节点是充当 Kubernetes 集群中工人机器的 VM 或物理计算机。每个节点都有一个 Kubelet,它是用于管理节点和与 Kubernetes 控制平面通信的代理。节点还应该具有用于处理容器操作的工具,例如 containerd 或 CRI-O。处理生产流量的 Kubernetes 集群应该至少有三个节点,因为如果一个节点宕机,一个 etcd 成员和一个控制平面实例都会丢失,并且冗余性会受到损害。您可以通过添加更多控制平面节点来降低这种风险。
控制平面管理集群以及用于托管正在运行的应用程序的节点。
当您在 Kubernetes 上部署应用程序时,您告诉控制平面启动应用程序容器。控制平面将容器调度到集群的节点上。节点级组件(例如 kubelet)使用 Kubernetes API 与控制平面通信,控制平面公开该 API。最终用户也可以直接使用 Kubernetes API 与集群交互。
Kubernetes 集群可以部署在物理机或虚拟机上。要开始使用 Kubernetes 开发,您可以使用 Minikube。Minikube 是一个轻量级的 Kubernetes 实现,它在您的本地机器上创建一个 VM,并部署一个仅包含一个节点的简单集群。Minikube 可用于 Linux、macOS 和 Windows 系统。Minikube CLI 提供用于处理您的集群的基本引导操作,包括启动、停止、状态和删除。
现在您已经了解了 Kubernetes 是什么,请访问 Hello Minikube,在您的计算机上试用一下。