Предоставление флага входному контроллеру NGINX, который не запускается как развертывание.

В общем, на мой вопрос о настройке сертификата по умолчанию есть ответ здесь: Вход Kubernetes Как установить default-ssl-certificate?.

Чего я не понимаю, так это вот эту часть: я должен добавить флаг--default-ssl-certificate=kube-system/host-certкак аргумент Ингресса. И чтобы узнать настройки файла конфигурации YAML контроллера входа NGINX, я должен проверить его с помощью такой команды:kubectl describe deployment/nginx-ingress-controller --namespace. Но он не запускается как развертывание:

      $ kubectl get deployments --all-namespaces
NAMESPACE     NAME                         READY   UP-TO-DATE   AVAILABLE   AGE
kube-system   kubernetes-dashboard         1/1     1            1           3d
kube-system   kubernetes-metrics-scraper   1/1     1            1           3d

Он работает только как модуль:

      $ kubectl get pods --all-namespaces
NAMESPACE       NAME                                          READY   STATUS    RESTARTS       AGE
ingress-nginx   ingress-nginx-controller-8xcl9                1/1     Running   1 (2d ago)     3d
ingress-nginx   ingress-nginx-controller-hwhvk                1/1     Running   1 (2d ago)     3d
ingress-nginx   ingress-nginx-controller-xqdqx                1/1     Running   3 (2d ago)     3d
kube-system     kubernetes-dashboard-548847967d-66dwz         1/1     Running   2 (2d ago)     3d
kube-system     kubernetes-metrics-scraper-6d49f96c97-r6dz2   1/1     Running   1 (2d ago)     3d
[...]

Как мне тогда передать флаг контроллеру?

1 ответ

ingress-nginxможет быть установлен как развертывание или набор демонов. В вашем случае, если вы не видите развертывание, это набор демонов.

Вы можете найти его, запустив:

      kubectl get daemonset -A

И редактируем так же, как при развертывании:

      kubectl edit daemonset ingress-nginx-controller -n ingress-nginx

Здесь вы можете найти подробную информацию о ingress-nginx и daemonset.


Примечание! Изменение, которое вы собираетесь внести, не будет постоянным (до тех пор, пока не будет произведено обновление/повторное применение манифеста). В зависимости от того, как оно было изначально развернуто, есть два варианта:

  • из манифеста

    вам нужно будет добавить его в манифест, чтобы любые другие обновления/kubectl apply -f manifest.yamlбудет содержать эти флаги, и все продолжит работать

  • используя штурвал

    вам нужно будет добавить эту информацию вhelm_repo/templates/controller-daemonset.yaml:

            args:
      - /nginx-ingress-controller
      ...
      - --default-ssl-certificate=kube-system/host-cert
      ...
    
Другие вопросы по тегам