【问题标题】:Migrating an external Kubernetes service from load balancer to ingress controller将外部 Kubernetes 服务从负载均衡器迁移到入口控制器
【发布时间】:2021-01-11 09:55:18
【问题描述】:

所以目前我在名为“开发”的命名空间中有 2 个服务需要处理外部流量,目前使用类型:LoadBalancer,并拥有自己的外部 IP 和 DNS 记录。

我想开始使用部署在单独命名空间(称为“ingress-controller”)中的入口控制器 (nginx),但我对最终状态的外观有一些疑问

所以如果我理解正确的话,我必须先在“development”命名空间中创建一个入口,然后在“ingress-controller”命名空间中创建入口部署和一个外部类型:LoadBalancer 服务,并为入口控制器的服务的外部 IP。然后我需要将“开发”命名空间中原来的 2 个服务更改为 ClusterIP,因为 Ingress 规则,它现在将获得流量。

主机名如何运作?假设我的第一个服务的 DNS 记录为“foo.com”,第二个服务名为“bar.com”,我可以设置入口规则以将请求路由到 2 个不同的域吗?

【问题讨论】:

    标签: kubernetes kubernetes-ingress nginx-ingress


    【解决方案1】:

    现在您已经创建了入口规则,剩下的就是将“foo.com”和“bar.com”的 DNS 记录设置为入口控制器服务的外部 ip。

    【讨论】:

      【解决方案2】:

      你已经很擅长 ingress 了。现在你必须使用external-dns

      这将为您创建您将在入口中指定的 DNS。例如。

      - host: foo.com
        http:
          paths:
            - path: /*
              backend:
                serviceName: <your service name>
                servicePort: 80
      

      【讨论】:

      • 所以这意味着 external-dns 基本上会为 foo.com 创建一个条目来映射到入口控制器服务的 IP 对吧?
      • @Jatinshravan:是的。我在 dns 和服务之间使用负载均衡器
      猜你喜欢
      • 2021-05-12
      • 2018-12-28
      • 2016-06-23
      • 2019-06-28
      • 2020-07-29
      • 2016-05-12
      • 2020-06-02
      • 2016-12-30
      • 2020-01-30
      相关资源
      最近更新 更多