Получилась такая архитектура:
[Service]
/ | \
[Pod1][Pod2][Pod3]
Мы утверждаем следующие IP-адреса Pod:
- Под 1: 192.168.0.1
- Под 2: 192.168.0.2
- Под 3: 192.168.0.3
Я выполняю такой цикл:
for ((i=0;i<10000;i++)); do curl http://someUrlWhichRespondsWithPodIP >> curl.txt; done;
Это записывает IP-адрес подов 10000 раз. Я ожидал, что это будет круговая схема, но это не так. Файл выглядит примерно так:
192.168.0.1
192.168.0.1
192.168.0.3
192.168.0.2
192.168.0.3
192.168.0.1
Конфигурация сервиса выглядит так:
kind: Service
metadata:
name: service
spec:
type: NodePort
selector:
app: service
ports:
- name: web
protocol: TCP
port: 31001
nodePort: 31001
targetPort: 8080
Кто-нибудь знает, какую внутреннюю балансировку нагрузки использует Kubernetes?