【问题标题】:How to create region specific load balancer in GCP for kubernetics?如何在 GCP 中为 kubernetes 创建区域特定的负载均衡器?
【发布时间】:2018-06-10 10:30:34
【问题描述】:

我在 GCP Kubernetes Engine 中创建了一个集群,并通过文档中指定的负载均衡器公开了它。

使用以下代码:

kubectl expose deployment deployment-name --type=LoadBalancer --port 80 --target-port 8080

这很好,并为我提供了一个外部 IP。我的集群位于 asia-south1 区域,并将其放置在同一区域内的 VPC(和子网)中。

问题是当我使用traceroute <load balancer ip> 检查我的数据包跃点时,我发现我的数据包正在到达加利福尼亚。看到我通过IP检查了我的负载均衡器的位置,我发现我的负载均衡器IP也在加利福尼亚。为什么会在这里发生?我希望我的负载均衡器位于 asia-south1 中,而我的数据包仅在该区域中传输?我的配置有什么问题吗?

我的实际问题是延迟。我的服务器代码(Nodejs)在约 70 毫秒内完成执行,但要向我(坐在亚洲)提供响应,需要约 650 毫秒(对于约 100 个并发用户)。这是无法接受的。

在此处添加 traceroute 日志:

 1  xiaoqiang (192.168.31.1)  1.689 ms  1.208 ms  1.324 ms
 2  10.143.0.1 (10.143.0.1)  2.873 ms  8.561 ms  6.314 ms
 3  10.229.0.13 (10.229.0.13)  6.356 ms  3.581 ms  3.517 ms
 4  broadband.actcorp.in (183.82.14.221)  2.793 ms  5.884 ms  26.071 ms
 5  14.141.24.249.static-hyderabad.tcl.net.in (14.141.24.249)  6.486 ms
    14.141.24.161.static-hyderabad.tcl.net.in (14.141.24.161)  2.450 ms
    14.141.24.145.static-hyderabad.tcl.net.in (14.141.24.145)  2.870 ms
 6  * * *
 7  * * *
 8  115.113.165.98.static-mumbai.vsnl.net.in (115.113.165.98)  35.840 ms  39.332 ms  35.704 ms
 9  * * 108.170.248.161 (108.170.248.161)  39.351 ms
10  209.85.253.246 (209.85.253.246)  48.228 ms *
    209.85.251.18 (209.85.251.18)  76.367 ms
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * <MY LOAD BALANCER IP>  32.129 ms *

【问题讨论】:

  • 你能从亚洲的机器发出请求吗?
  • 我在本地机器上运行 traceroute 并且在亚洲
  • 我与谷歌进行了架构审查,从那里我得知谷歌拥有全球 IP,因此它可能会在美国显示,但实际上可能不是美国 IP

标签: google-cloud-platform google-kubernetes-engine


【解决方案1】:

IP 地理信息在内部维护,方法是使用各种信号将 IP 块映射到 X% 精度内的物理位置。此过程不能保证有效,并且在没有任何信号的情况下,默认情况下会回退到位于加利福尼亚州山景城的 Google 总部,无论该地址所连接的服务器的物理位置如何。更多详情请见following link

如果您仍然遇到延迟问题,请使用Private Issue Tracker 向我们的支持团队提供所有相关详细信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-06
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    • 2022-08-10
    相关资源
    最近更新 更多