Kubernetes GenAI 简介 LIVE! | 2025 年 6 月 4 日

2025-06-10

Kubernetes 简介

GenAI LIVE! | 2025年6月4日

说实话,Kubernetes 凉爽的酷!为了向你介绍它的酷炫之处,我开设了这个系列。与Docker 系列类似,我们将首先回答“为什么”,然后了解 Kubernetes(也称为 K8s)是什么,并探索它的一些架构。

如果您不熟悉容器化的概念,您可能需要先阅读这篇文章。

让我们开始吧!

为什么选择 Kubernetes?

要回答“为什么” K8s 存在,您必须了解一些有关容器部署如何工作的知识。

最简单的理解方式是,想象一下你的容器运行在“某个地方”的计算机上。这个“地方”通常被称为“云”,而像 AWS、Azure 和 Google Cloud 这样的服务只是让你可以访问这些计算机。这些计算机最好被认为是我们自己的远程托管机器,我们可以在上面安装 Docker 并运行容器。就这么简单。

现在这种方式存在一些问题:

  1. 您运行的容器可能会关闭并需要更换。

  2. 如果流量较大,您可能需要启动更多容器。

  3. 您可能还希望确保只有一个容器不承担繁重的工作,并且负载在所有正在运行的实例之间平均分配。

K8s 的目标就是解决所有这些问题。了解AWS ECS等服务的人可能会说,它们也扮演着类似的角色,所以为什么还要用 K8s 呢?

是的,你说得对,这些服务确实可以解决这个问题,但这也意味着你必须学习特定的服务,如果将来想换成其他服务,就必须学习新的服务。那么,为什么不熟悉一种无论你选择哪个提供商都能正常工作的标准化方法呢?

这就是为什么人们更喜欢 K8s 而不是这些服务。

您还需要使用 Kubernetes 进行一些特定于提供商的设置,但这比不使用 K8s 时所需的设置要少得多。

Kubernetes 是什么?

K8s官方网站Kubernetes的描述是:

Kubernetes,也称为 K8s,是一个用于自动部署、扩展和管理容器化应用程序的开源系统。

在我们讨论了“为什么”选择 K8s 之后,这个解释应该很有道理了。要点是,它可以帮助我们部署容器、根据接收的流量进行扩展以及全面管理容器化应用程序,从而简化我们的生活。

Kubernetes核心架构

很多人在刚开始使用 Kubernetes 时,都会对其架构感到不知所措或困惑。我会尽量简化这个问题。我建议您在阅读本文后再查看官方文档,因为在这里,我的目标是简化内容,以便您能够理解整体情况,而不是纠结于技术细节。

无标题文档 (1)

我们将从右到左分析该图表。

豆荚

图中最右边的单元是 Pod。它基本上可以说是 K8s 世界中最小的单元。K8s 并不直接运行容器,而是使用这些“Pod”来包装一个或多个容器。Pod 中的容器共享相同的资源。Pod 由 K8s 创建和管理。

简而言之:只需将 Pod 想象为我们容器的包装器。

工作节点

正如我们在“为什么”部分所讨论的,K8s 集群只是一个计算机网络。术语“节点”可以理解为该网络中的单台计算机。节点有两种类型:工作节点 (Worker) 和主节点 (Master)。

工作节点托管着运行容器的 Pod,正如我们上面提到的那样。同一个工作节点上可以存在多个运行不同容器的 Pod。这并不奇怪,因为正如我之前所说,一个节点只是互联网上某个地方的一台计算机(由云服务提供商提供),具有一定数量的 CPU 和内存,因此我们当然可以在其上运行完全不同的容器和任务。

除了 Pod 之外,工作节点中还有三个重要的东西:

  1. Docker:这是毫无疑问的,因为我们需要 Docker 来运行应用程序容器。

  2. kubelet:这个可以简单理解为负责Master和Worker Node之间通信的应用程序。

  3. kube-proxy:通过理解其功能可以简化这一点,即处理整个 K8s 集群内部或外部的 pod 和网络会话之间的网络通信。

简而言之:只需将工作节点想象成一台具有所需工具和吊舱的计算机。

主节点

最后要讨论的是主节点。主节点承载着“控制平面”,可以理解为 K8s 集群的大脑。控制平面基本上确保 K8s 集群按照我们配置的方式运行。

主节点上运行的一些重要的事情是:

  1. API Server:它是主节点上运行的最重要的服务,相当于kubelet我们上面提到的 API Server,负责与工作节点进行通信。

  2. 调度程序:它负责监视我们的 pod 并选择应该在其上创建新 pod 的工作节点。

为什么我们需要新的 Pod?
万一 Pod 状态不佳、宕机或者因为扩容。

因此,调度程序负责告诉 API 服务器“什么”来告诉工作节点。

您还可以在官方文档中查看其他一些内容。但就目前而言,这些就足够了。

简而言之:主节点是我们 K8s 集群的大脑。

结论

我们对 Kubernetes 世界的介绍到此结束。本文是我计划在未来几周撰写的第二个系列文章的一部分。我最近完成了“揭秘 Docker”系列文章,其中讨论了 Docker 的基础知识。虽然阅读上一个系列文章并非必需,但强烈建议您通读一遍。

谢谢阅读!:)

如果你有任何反馈,或者只是想聊聊,欢迎随时在Twitter上联系我。我非常乐意收到你的来信!:D

鏂囩珷鏉ユ簮锛�https://dev.to/rinkiyakedad/introduction-to-kubernetes-55o7
PREV
Terraform GenAI LIVE 简介!| 2025 年 6 月 4 日
NEXT
值得花 5 分钟