Pods介绍
什么是 Pod? Pod 是 Kubernetes 中最小、最基本的可部署对象。 Pod 代表集群中正在运行的进程的单个实例。 Pod 包含一个或多个容器,例如 Docker 容器,具有共享存储和网络资源,以及如何运行容器的规范。 Pod 可以被认为是一个锅,所有的食物(任务)都被煮熟了😂。 Pod 用于运行集群应用程序的单个功能,但建议不要直接创建单个 Pod。通常会创建一组相同的 Pod,称
什么是 Pod?
Pod 是 Kubernetes 中最小、最基本的可部署对象。 Pod 代表集群中正在运行的进程的单个实例。
Pod 包含一个或多个容器,例如 Docker 容器,具有共享存储和网络资源,以及如何运行容器的规范。
Pod 可以被认为是一个锅,所有的食物(任务)都被煮熟了😂。
Pod 用于运行集群应用程序的单个功能,但建议不要直接创建单个 Pod。通常会创建一组相同的 Pod,称为 replicas,并由控制器管理器管理。控制器管理器管理其分配的 pod 的生命周期以执行水平扩展。
Pod 一旦创建就一直存在于节点中,直到任务完成,如果 Pod 失败,它会被自动删除。
Pod 生命周期
Pod 的生命周期很短,一旦删除就无法恢复。 Pod 只能由用户或控制器终止。
可以使用查看集群中现有的 Pod
kubectl get pod
可以在STATUS
列下查看 Pod 的状态,一般显示如下结果。
-
待处理: 当一个 pod 已创建但它的容器正在加载时。
-
Running: 表示pod的容器已经创建,其中一个容器处于运行状态。
-
**成功:**当 Pod 中的所有容器都已成功终止时。
-
Failed: 当一个容器在失败中终止并且所有其他容器已经在 Pod 中终止。
-
Unknown: Pod 状态未知时。
了解有关 Pod 运行的完整信息
kubectl get pod [Pod_Name] -oyaml.
存储与网络
-
存储
每个应用程序都需要一些数据来执行任务,但从一开始就不是这样。在早期,容器是为无状态应用程序设计的,即不需要数据,但现在我们使用有状态应用程序来存储数据库。
但是怎么做? Pod 是短暂且无状态的。然后引入了 volumes 的概念,它与存储 Pod 生命周期之外的数据的容器相关联。此数据是持久的,并用于在 pod 死亡时创建的其他 pod。
-
联网
每个 Pod 都有一个唯一的 IP 地址,并且所有其他 Pod 和 K8s 集群都知道。在 Pod 内部,与该 Pod 关联的容器使用localhost
进行通信。
网络分为 3 种类型:
-
Pod 网络
-
服务网络
-
入口网络
参考这个
恭喜!! 🎉 现在您了解了 Kubernetes 架构并准备学习新主题。
快乐学习🕺
🤝让我们一起交流学习:
推特
更多推荐
所有评论(0)