logo

Урок 4 из 7

Установка Ingress-контроллера

Чтобы установить в кластер Ingress-контроллер, можно взять готовый манифест:

# Секция, описывающая параметры NGINX Ingress controller.
# https://deckhouse.ru/documentation/v1/modules/402-ingress-nginx/cr.html
apiVersion: deckhouse.io/v1
kind: IngressNginxController
metadata:
  name: nginx
spec:
  ingressClass: nginx
  # Способ поступления трафика из внешнего мира.
  inlet: HostPort
  hostPort:
    httpPort: 80
    httpsPort: 443
  # Описывает, на каких узлах будет находиться Ingress-контроллер.
  # Возможно, захотите изменить.
  nodeSelector:
    node-role.kubernetes.io/control-plane: ""
  tolerations:
  - operator: Exists

Однако в нашем случае и на master-, и на системной группе узлов есть taint’ы, поэтому мы изменим манифест в секциях nodeSelector и tolerations:

Сохраним манифест в файл ingres.yml и применим его:

Как видим, Ingress-контроллер создан. Kruise-controller-manager запускается при добавлении узла в кластер или при снятии taint’а, а controller-nginx — после применения манифеста ingress-nginx-controller.