Есть ли способ, чтобы указать пользовательский NodePort порт в определении YAML kubernetes услуг? Мне нужно иметь возможность явно определить порт в моем файле конфигурации.
Пользовательский порт Kubernetes NodePort
Ответ 1
Вы можете установить тип NodePort в своем развертывании Service. Обратите внимание, что для вашего сервера API настроен Node Port Range с параметром --service-node-port-range (по умолчанию 30000-32767). Вы также можете указать порт в этом диапазоне, специально установив атрибут NodePort под объектом Port, или система выберет для вас порт в этом диапазоне.
Итак, пример Service с указанным NodePort будет выглядеть так:
apiVersion: v1
kind: Service
metadata:
name: nginx
labels:
name: nginx
spec:
type: NodePort
ports:
- port: 80
nodePort: 30080
name: http
- port: 443
nodePort: 30443
name: https
selector:
name: nginx
Для получения дополнительной информации о NodePort см. этот документ. Для настройки сервера API Node Диапазон портов см. this.
Ответ 2
Вы можете определить статический NodePort, используя nodeport в файле service.yaml
spec:
type: NodePort
ports:
- port: 3000
nodePort: 31001
name: http