【问题标题】:How to manage the nginx-ingress after installation?安装后如何管理 nginx-ingress?
【发布时间】:2020-02-27 22:58:56
【问题描述】:

我使用这篇文章作为参考,将我的 ingress 安装在 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,我必须使用提供的公共 IP(azure 提供)手动更新我的 FQDN!例如: az network public-ip update --ids $PUBLICIPID --dns-name $DNSNAME

是否存在此控制器被破坏并且我丢失公共 IP 然后必须再次手动创建所有内容的风险? 如果答案是YES,怎么办?在 azure 上创建新作业以自动更新?有谁知道那个样本?

【问题讨论】:

  • 问题真的没有意义。如果您故意删除 nginx ingress helm release - 是的,您的公共 IP 将会消失。防止这种情况的一种方法 - 不删除 nginx 入口版本或单个“资源”(kubernetes 服务)。
  • 好吧,唯一失败的方法是我故意删除我的 nginx ingress helm release?这是我的问题,还有其他需要注意的情况吗?换句话说,我已经说过了,这个控制器有被破坏的风险吗?
  • 无论如何,谢谢@4c74356b41
  • 不,没有风险

标签: azure kubernetes kubernetes-ingress nginx-ingress


【解决方案1】:

按照以下步骤进行

  1. 使用 azure CLI 创建要用作 LoadBalancer IP 地址的公共 IP。选择它作为静态ip
  2. 使用 helm template 命令创建 nginx YAML 模板(将 install 替换为命令中的模板)
  3. 将 nginx 服务类型更新为 LoadBalancer,并在上面第 2 步生成的模板中更新第 1 步的 LoadBalancer ip
  4. 部署 helm 模板 YAML

【讨论】:

    【解决方案2】:

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

    service.loadBalancerIP = YOUR_AZURE_STATIC_IP
    

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

    【讨论】:

    • 不,但我现在就做,先使用静态IP!感谢您提供有关通量的提示,我将看看那个 Jhon。您知道在 Azure 云上使用静态公共 IP 还是使用动态公共 IP 的利弊?
    猜你喜欢
    • 2023-01-13
    • 2022-08-18
    • 2019-11-05
    • 2019-11-16
    • 1970-01-01
    • 2020-10-17
    • 2019-10-04
    • 2019-07-20
    • 2020-01-08
    相关资源
    最近更新 更多