Ingress NGINX – это контроллер для управления входящим трафиком в Kubernetes. Он служит единой точкой доступа ко всем сервисам в кластере и позволяет настраивать маршрутизацию трафика по различным правилам.
Установка состоит из трёх этапов:
- Скачать Helm-чарт и конфигурационный файл.
- Заполнить конфигурационный файл.
- Установить чарт ingress-nginx с помощью Helm в Kubernetes-кластер.
Шаг 1: Скачать Helm-чарт и конфигурационный файл
Для установки через интернет получите конфигурационный файл values-ingress-nginx.yaml
, выполнив команду:
helm repo add elma365 https://charts.elma365.tech
helm repo update
helm show values elma365/ingress-nginx > values-ingress-nginx.yaml
Получение конфигурационного файла для установки в закрытом контуре без доступа в интернет
helm repo add elma365 https://charts.elma365.tech
tar -xf ingress-nginx-X.Y.Z.tgz |
Шаг 2: Заполнить конфигурационный файл
Заполните конфигурационный файл values-ingress-nginx.yaml
для установки Ingress NGINX:
## Настройки ingress-nginx
ingress-nginx:
controller:
# Разрешение на использование аннотаций *-snippet
allowSnippetAnnotations: true
## Используйте DaemonSet или Deployment
kind: Deployment
## Список IP-адресов узлов, по которым доступна служба внешнего контроллера.
service:
externalIPs:
- 192.168.1.50
## селекторы для запуска на определенных узлах
tolerations: []
affinity: {}
nodeSelector:
kubernetes.io/os: linux
## параметры подключения сбора метрик
metrics:
enabled: false
serviceMonitor:
enabled: false
scrapeInterval: 30
Для подключения к приватному registry:
## Дополнительные аннотации к веб-перехватчикам допуска. |
Шаг 3: Установить чарт ingress-nginx с помощью Helm в Kubernetes-кластер
Выполните установку чарта ingress-nginx в namespace ingress-nginx
.
Для установки через интернет выполните следующую команду:
helm upgrade --install ingress-nginx elma365/ingress-nginx -f values-ingress-nginx.yaml -n ingress-nginx --create-namespace
Для офлайн-установки без доступа в интернет перейдите в каталог с загруженным чартом и выполните команду:
helm upgrade --install ingress-nginx ./ingress-nginx -f values-ingress-nginx.yaml -n ingress-nginx --create-namespace