HostPort (узлы, на которых запущен модуль): Аналогично докеру, это откроет порт на узле, на котором запущен модуль (это позволяет открыть порт 80 на хосте).Однако настроить запуск довольно просто:
Не указывайте hostPort для Pod, если только это не является абсолютно необходимым.Когда вы связываете Pod с hostPort, он ограничивает количество мест, которые Pod может быть запланирован, потому что каждая комбинация должна быть уникальной.Если вы не укажете hostIP и протокол явно, Kubernetes будет использовать 0.0.0.0 в качестве hostIP по умолчанию и TCP в качестве протокола по умолчанию. kubernetes.io
NodePort (на каждом узле): Ограничен портами между портами от 30 000 до ~ 33 000.Обычно это имеет смысл только в сочетании с внешним балансировщиком нагрузки (в случае, если вы хотите опубликовать веб-приложение на порту 80)
Если вам явно необходимо предоставить порт Pod на узле, рассмотрите возможность использованияСлужба NodePort перед использованием hostPort. kubernetes.io
IP-адрес кластера (только для внутреннего использования): Как указано в описании, откроется порт, доступный только для внутренних приложений, работающих в том же кластер .Служба, использующая эту опцию, является accessbile через внутренний кластер-IP.