【问题标题】:Kubernetes configuration to link containers用于链接容器的 Kubernetes 配置
【发布时间】:2015-01-22 02:26:39
【问题描述】:

我正在尝试查看是否有创建 Kubernetes POD 的示例 它启动了 2-3 个容器,这些容器相互链接但找不到。

有人尝试使用 Kubernetes 配置链接容器吗?

【问题讨论】:

标签: docker kubernetes


【解决方案1】:

同一个 pod 中的容器共享 localhost,所以不需要链接容器,使用 localhost:containerPort 即可。

【讨论】:

  • 这最好地回答了这个问题。您不需要像 joh.scheuer 建议的那样为共享同一个 pod 的容器提供服务。 (也许当时你是这样做的;9 个月过去了,Kubernetes 还在不断发展。)
  • 这回答了它,但更好的答案是 joh。应该是“链接” pod 而不是 kubernetes 中的容器。
【解决方案2】:

您必须使用 Kubernetes 服务(代理)https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/services.md#how-do-they-work

看看他们是如何一起工作的:https://github.com/GoogleCloudPlatform/kubernetes/tree/master/examples/guestbook

具体来说,没有类似于 Docker 的“链接”概念。每个服务端点都是一个完全限定的域名,您只需将它从一个容器调用到另一个容器,并且可以由服务端点拾取的容器上的每个标签都可以用于引导网络流量。因此,您不必执行 ENV["$FOO_BAR_BAZ"] 即可获得正确的 IP,只需直接调用它 (curl http://foo_bar_baz)。

【讨论】:

  • 正如@Tony Dun 的消息所暗示的,您可以通过简单地将容器包含在同一个 pod 中来将它们链接在一起。它们都将共享同一个网络堆栈。
【解决方案3】:

我认为您说的是单 pod 多容器配置。 在 kubernetes 中,小的单个单元是一个 pod。所以一个 pod 中的多个容器共享同一个 IPC,不同容器中的多个进程可以通过 localhost:process port 访问

【讨论】:

    【解决方案4】:

    Pod 是 Kubernetes 中的基本部署单元。 您可以在 pod 中运行一个或多个容器。他们将共享相同的网络,即 localhost。所以你不需要指定链接url只需指定localhost:containerPort

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-27
      • 2020-04-27
      • 2020-06-21
      • 1970-01-01
      • 2020-05-15
      • 2018-08-23
      • 1970-01-01
      • 2022-06-27
      相关资源
      最近更新 更多