如果容器已经存在,则需要 pods

Need of pods if container was already there

我知道 pod 相对于容器的优势是什么,它在 Kubernetes 文档中有说明,但仍然无法理解容器也可以执行相同的任务和操作,那么为什么我们需要在 Kubernetes 中 pods ?

K8s 文档描述 containers and pods 非常好。但本质上:

K8s 上下文中的 pod

  • 一组容器
  • 容器共享网络。比如同一个IP地址
  • 通常在需要 sidecar 容器时使用多容器 pods。例如:
    • 主容器的代理进程。
    • 带有实用程序的调试容器。
    • 始终需要 运行 与您的应用程序一起使用的进程。
    • 一个容器,可以执行您的应用所需的某种网络更改。
  • 允许您为容器中的所有 pods 设置一个 securityContext。
  • 例如,允许您设置中断预算策略以防止停机。
  • 允许您使用更高级别的 Kubernetes 抽象,例如 Deployments、StatefulSets 和 Jobs。
  • 允许您设置 Pod 预设,以便重复使用模式。

K8s 上下文中的容器

  • pod 的较低级别抽象
  • 允许您指定图片
  • 允许您指定资源(mem/cpu)
  • 允许您设置 Liveness、Startup 和 Readiness Probes。
  • 允许您单独为容器设置 securityContext