Я работаю в кластере Azure AKS, где fluxcd
работает правильно. Я пытаюсь настроить диаграмму nginx-ingress
через HelxRelease для CDR fluxcd. В частности, указать nginx -ingress использовать уже созданный IP-адрес stati c publi c, который находится в другой группе ресурсов в качестве группы ресурсов узла AKS.
У основного участника службы AKS есть роль сетевого участника в группе ресурсов, где находится ip.
При использовании следующего файла конфигурации HelmRelease свойство loadBalancerIP (как и любая аннотация) игнорируется, и создается новый общедоступный c IP в пределах azure. присваивается балансировщику нагрузки azure.
apiVersion: helm.fluxcd.io/v1
kind: HelmRelease
metadata:
name: helm-nginx-ingress
namespace: nginx-ingress
spec:
releaseName: nginx-ingress
targetNamespace: nginx-ingress
chart:
repository: https://kubernetes-charts.storage.googleapis.com/
name: nginx-ingress
version: 1.24.4
values:
controller.service:
loadBalancerIP: "12.234.162.41"
annotations:
service.beta.kubernetes.io/azure-load-balancer-resource-group: "name-of-resource-group"
Чтобы упростить процесс, я также попытался использовать ip, который непосредственно существует в том же ресурсе группировать как узлы AKS (безрезультатно). Кстати: нет ошибок, что так всегда. Он просто игнорирует свойство и создает новый ip.
Интересно, что выпуск одной и той же диаграммы с Хелмом 3 напрямую (без использования fluxcd) работал отлично, даже если особый случай, когда ip не находится в одном ресурсе group:
helm upgrade nginx-ingress --install --wait --namespace nginx-ingress \
--set controller.service.loadBalancerIP="12.234.162.41" \
--set controller.service.annotations."service\.beta\.kubernetes\.io/azure-load-balancer-resource-group"="name-of-resource-group" \
stable/nginx-ingress
Так что я думаю, что проблема лежит где-то с CDR HelmRelease и переводом значений spe c. Кто-нибудь испытывает подобные проблемы?
AKS Kubernetes Версия: v1.14.8
fluxcd / flux image tag: 1.17.0
Локальная версия Helm: v3.0.3