安装后如何管理nginx-ingress?

How to manage the nginx-ingress after installation?

我使用这篇文章作为参考在 azure 的云上安装我的入口。 https://docs.microsoft.com/pt-br/azure/aks/ingress-tls

但现在我对此有一些疑问,如何管理它,例如: 在这一步我安装了我的 nginx-ingress:

helm install stable/nginx-ingress \ --namespace ingress-basic \ --set controller.replicaCount=2 \ --set controller.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set defaultBackend.nodeSelector."beta\.kubernetes\.io/os"=linux \ --set name=MY_RELEASE_NAME 之后,我创建了一个 LoadBalancer 和一个 ClusterIP,我必须使用提供的 Public IP(azure 提供)手动更新我的 FQDN!例如: az network public-ip update --ids $PUBLICIPID --dns-name $DNSNAME

这个控制器是否有被破坏的风险,我失去了我的 public IP,然后必须再次手动创建所有内容? 如果答案是YES,怎么办?在 azure 上创建一个新作业以自动更新它?有人知道其中的样本吗?

按照以下步骤操作

  1. 使用 azure CLI 创建一个 public ip 用作 LoadBalancer IP 地址。选择它作为静态 ip
  2. 使用 helm 模板命令创建 nginx YAML 模板(在您的命令中将安装替换为模板)
  3. 将nginx服务类型更新为LoadBalancer,并在上面step2生成的模板中更新step1中的LoadBalancer ip
  4. 部署 helm 模板 YAML

您是否尝试过先配置静态 IP?然后,使用官方的helm chart,可以像下面这样使用。

service.loadBalancerIP = YOUR_AZURE_STATIC_IP

此外,您可能对 https://github.com/weaveworks/flux 感兴趣。这是一个以 GitOps 方式管理 helm 版本的好工具。