Я создал кластер в GCP Kubernetics Engine и показал его через балансировщик нагрузки, как указано в документации.
Использовал следующий код:
kubectl expose deployment deployment-name --type=LoadBalancer --port 80 --target-port 8080
Это сработало и предоставиломне с внешним IP.Мой кластер расположен в азиатско-южном регионе и поместил его в 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 *