Служба портов узла Kubernetes

#kubernetes

#kubernetes

Вопрос:

У меня есть кластер kubernetes на голом металле с сервисом NodePort, и 2 HAProxies балансируют трафик на эти узлы. когда я отправляю запрос на один из этих узлов, он балансирует трафик на другие узлы в кластере. возможно ли изменить это поведение? Я не хочу перераспределять трафик.

Обновление: мы можем использовать externalTrafficPolicy: Local

 spec:
  selector:
    app: nginx
  type: NodePort
  externalTrafficPolicy: Local
  

Ответ №1:

Трафик порта узла будет перехвачен kube-proxy, а затем случайным образом перенаправит трафик на узел, содержащий модуль. Рекомендуется использовать службу балансировки нагрузки вместо NodePort. Это применимо, если вы используете режимы пользовательского пространства и iptables

Вы можете использовать IPVS для изменения поведения

Комментарии:

1. Вы действительно можете использовать службы балансировки нагрузки на кластерах с голым металлом? У меня сложилось впечатление, что это было в основном только для общедоступного облака.

2. @switchboard.op : Да, мы можем. Для производственной настройки можно использовать BIG-IP . Кроме того, мы можем использовать MetalLB , который будет работать внутри кластера k8s.