什么是 kubernetes pod 的好用例?

What is a good use case for kubernetes pod?

玩了几个月docker landscape,我还是发现使用Kubernetes Pod确实是违反直觉的。我还没有遇到过 pod 比容器更适合的用例。当我被要求使用 Pod 时,我通常只使用单个容器 Pod。我正在尝试做一个演示来展示 pod 概念的优势,但我就是想不出一个重要的用例。

在我的演示中,我启动了一个服务器 pod,其中有两个侦听不同端口的服务容器,一个用于将字母转录为大写,一个用于将字母转录为小写。然后我有一个客户端 pod,其中有两个客户端容器与每个服务器容器通信......这个用例似乎真的是被迫的,我不明白为什么我需要使用 Pod 概念。

我已经阅读了很多教程和文档,但它们都只涉及什么是 pod,没有令人信服的用例说明为什么我们必须使用 pod...我是不是漏掉了什么?使用 Pod 概念的可靠用例是什么?谢谢。

编辑: 具体来说,假设有两个服务 A 和 B 需要共置和共享网络堆栈,这很适合 Pod 概念。与在同一个容器中使用服务 A 和 B 运行 相比,使用 Pod(具有两个并置容器 运行 服务 A 和服务 B)有什么优势可以保证并置和共享网络堆栈?粒度是否有经验法则?

我原来的问题是找出这样的服务A和服务B需要共址和共享网络堆栈。感谢 Jared 和 Robert 的指点,我将深入研究这些用例。

Jared 在他上面的评论中指出了一些很好的例子。正如 Brian Grant 在链接的 github 问题中提到的,推送日志数据和加载数据是 Google.

中最常见的用途

关于 Kubernetes 存储库中的具体示例,您可以查看 DNS cluster add-on. It uses a pod to co-locate a DNS server (skyDNS) 的定义,使用 etcd 的本地存储,以及将 Kubernetes API 对象拉下来的简单程序,转换它们,并将它们放入本地存储。此 pod 不是构建新的自定义 DNS 服务器,而是利用现有的 DNS 服务器并向其添加一些自定义以使其了解集群环境。由于所有容器都在一个 pod 中,它们可以依靠本地主机网络进行通信,不需要任何形式的复杂服务发现。