使用 Minikube 创建集群

了解 Kubernetes 集群是什么。了解 Minikube 是什么。启动 Kubernetes 集群。

目标

  • 了解 Kubernetes 集群是什么。
  • 了解 Minikube 是什么。
  • 在您的计算机上启动 Kubernetes 集群。

Kubernetes 集群

Kubernetes 协调高度可用的计算机集群,这些计算机连接在一起作为一个单元工作。 Kubernetes 中的抽象允许您将容器化应用程序部署到集群,而不会将它们专门绑定到单个机器。为了使用这种新的部署模型,应用程序需要以一种将它们与单个主机分离的方式进行打包:它们需要容器化。容器化应用程序比过去部署模型(应用程序作为与主机深度集成的软件包直接安装到特定机器上)更加灵活和可用。Kubernetes 以更有效的方式自动执行应用程序容器在集群中的分布和调度。 Kubernetes 是一个开源平台,并且已投入生产。

Kubernetes 集群包含两种类型的资源

  • 控制平面协调集群
  • 节点是运行应用程序的 worker

总结

  • Kubernetes 集群
  • Minikube

Kubernetes 是一个生产级的开源平台,它协调应用程序容器在计算机集群内和跨计算机集群的放置(调度)和执行。


集群图


控制平面负责管理集群。控制平面协调集群中的所有活动,例如调度应用程序、维护应用程序的预期状态、扩展应用程序以及推出新更新。

节点是作为 Kubernetes 集群中 worker 机器运行的 VM 或物理计算机。每个节点都有一个 Kubelet,它是一个用于管理节点并与 Kubernetes 控制平面通信的代理。节点还应具有用于处理容器操作的工具,例如 containerdCRI-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 在您的计算机上尝试一下。