【问题标题】:Is there a limitation on 'concurrent tcp connections number' of google container engine's pod?谷歌容器引擎的 pod 的“并发 tcp 连接数”是否有限制?
【发布时间】:2016-05-18 08:06:17
【问题描述】:

我想在 google 容器引擎上与单个 pod 建立 100k tcp 连接。

下面是我的测试。

  1. 创建 2 个集群:cluster-1(在 asia-east1-c),cluster-2(在 us-central1-b)
  2. cluster-1 : service, rc 有副本 1,所以一个 pod 是 tcp server
  3. cluster-2 : 只是 rc 和副本 2,所以两个 pod 是 tcp 客户端
  4. kubectl exec -it 'cluster-1 pod' -- /bin/bash
    在那个吊舱内
    ifconfig => ip 地址:10.121.0.7
    ss -tanp => 远程对等点:10.121.0.1

上面的结果表示单个 pod 不能有超过 64K 的 tcp 连接,因为无论真实客户端的 ip 地址如何,远程对等 ip 地址都固定为 10.121.0.1。

有没有办法在谷歌容器引擎上获得 100k tcp 连接与单个 pod?

【问题讨论】:

  • 我找到了这篇文章。 stackoverflow.com/questions/36464890/…在那篇文章中,“我假设您通过将服务的类型设置为 LoadBalancer 来设置服务?不幸的是,由于客户端 IP 丢失,传入的网络负载平衡数据包现在通过 Kubernetes 路由的方式受到限制。 "这使得 tcp 连接数受到限制。为什么谷歌直到现在还没有解决这个大问题?
  • 另一篇文章link
  • 这个问题是否已修复或者到 2018 年这个问题仍然存在
  • 此问题是否已修复或仍然存在

标签: kubernetes google-kubernetes-engine


【解决方案1】:

正如 Alex 在 article 中提到的,

根据您的要求,我假设您通过将服务类型设置为 LoadBalancer 来设置服务?不幸的是,由于客户端 IP 丢失,传入的网络负载平衡数据包现在通过 Kubernetes 路由的方式受到限制。这使得 tcp 连接数受到限制。

不要将服务用作 LoadBalancer 类型,而是尝试设置 Ingress 以将您的服务与 Google Cloud LB 集成,这会将标头添加到传入请求中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-05
    • 2015-08-07
    • 2015-09-21
    • 2018-12-26
    • 2018-01-19
    • 2014-01-31
    • 2018-07-28
    • 2017-10-10
    相关资源
    最近更新 更多