Pod 解析

Pod 是 Kubernetes 中可以创建的最小部署单元,也是 Kubernetes REST API 中的顶级资源类型。

在 Kuberentes V1 core API 版本中的 Pod 的数据结构如下图所示:

Pod 解析-LMLPHP

Pod Cheatsheet

什么是 Pod?

Pod 就像是豌豆荚一样,它由一个或者多个容器组成(例如 Docker 容器),它们共享容器存储、网络和容器运行配置项。Pod 中的容器总是被同时调度,有共同的运行环境。你可以把单个 Pod 想象成是运行独立应用的“逻辑主机”—— 其中运行着一个或者多个紧密耦合的应用容器 —— 在有容器之前,这些应用都是运行在几个相同的物理机或者虚拟机上。

尽管 kubernetes 支持多种容器运行时,但是 Docker 依然是最常用的运行时环境,我们可以使用 Docker 的术语和规则来定义 Pod。

Pod 中共享的环境包括 Linux 的 namespace、cgroup 和其他可能的隔绝环境,这一点跟 Docker 容器一致。在 Pod 的环境中,每个容器中可能还有更小的子隔离环境。

Pod 中的容器共享 IP 地址和端口号,它们之间可以通过 localhost 互相发现。它们之间可以通过进程间通信,例如 

11-09 12:50