Я распаковал график и посмотрел на его значение по умолчанию values.yml
. Похоже, что IBM / HCL не следует шаблону Helm, который позволяет настраивать https практически на любых графиках с использованием ingress.tls
.
Единственно возможный способ - вручную изменить наши входные ресурсы, например:
kubectl edit ing cnx-ingress-orient-me
- Заменить
*
на поддомен (например, ing
): - host: ing.k8s.internal
- Добавить секцию
tls
в spec
:
tls:
- hosts:
- ing.k8s.internal
Сохраните изменения и убедитесь, что ваш вход доступен с использованием https, например, с компом
curl "https://ing.k8s.internal/social/views/login.html" --head
должен вернуть HTTP/2 200
Мы необходимо повторить это для всех развернутых входных ресурсов. Когда все функции развернуты, существует 4:
$ kging | grep -v NAME | awk '{print $1}'
cnx-ingress-appreg
cnx-ingress-orient-me
cnx-ingress-sanity
external-service
Автоматизация
Также возможно автоматизировать эти изменения, экспортируя вход в файл:
kubectl get ing cnx-ingress-orient-me -o yaml > /tmp/ing.yml
Нет, мы можем искать / заменять, используя sed
# Replaces the general HTTP listen hostname
sed -i "s/host: '\*\./ing./g" /tmp/ing.yml
# Adds tls-tree with corresponding indention
sed "s/\(\s*\)\(rules:\)/tls:\n\1- hosts:\n\1\1- ing.k8s.internal\n\1\2/g" /tmp/ing.yml
Чтобы применить наши изменения:
kubectl replace -f /tmp/ing.yml