Azure 两个入口控制器,第二个入口控制器的IP未显示

Azure 两个入口控制器,第二个入口控制器的IP未显示,azure,nginx,kubernetes,kubernetes-ingress,Azure,Nginx,Kubernetes,Kubernetes Ingress,我在Azure中有一个K8s群集,其中有两个入口控制器都是公共的: 控制器A配置为使用默认的nginx类重定向到服务A 并且控制器物联网配置为重定向到具有自定义类的服务B: ... args: - /nginx-ingress-controller - --publish-service=$(POD_NAMESPACE)/ingress-nginx-controller - --election-id=ingress

我在Azure中有一个K8s群集,其中有两个入口控制器都是公共的:
控制器A
配置为使用默认的
nginx类重定向到
服务A
并且
控制器物联网
配置为重定向到具有自定义类的
服务B

...
    args:
            - /nginx-ingress-controller
            - --publish-service=$(POD_NAMESPACE)/ingress-nginx-controller
            - --election-id=ingress-controller-leader
            - --ingress-class=iot-nginx
...
物联网入口:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
...
    kubernetes.io/ingress.class: "iot-nginx" 
    cert-manager.io/cluster-issuer: "prod_issuer"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
    nginx.ingress.kubernetes.io/default-backend: nginx-errors
    nginx.ingress.kubernetes.io/custom-http-errors: '403,404,503,400,500'
    ingress.kubernetes.io/rewrite-target: /
spec:
  tls:
  - hosts:
    - <service B url>
    secretName: letsencrypt-prod-cert-iot 
  rules:
  - host: <service B url>
    http:
      paths:
      - path: /iot
        backend:
          serviceName: iot
          servicePort: 80

如果第二个入口有问题,你需要检查它的服务。我检查了它没有问题,工作正常,我怀疑dns记录还没有更新,可能是什么原因导致了这一点。当你安装入口控制器时,服务被创建并分配了公共IP。因此,检查服务的类型和状态是否正确。类型和服务是否正确,我仍然不确定为什么它不显示第二个控制器的IP地址,因为在服务中,当我列出所有服务时,公共IP显示在那里。
@Azure:~/https$ kubectl get ingress
NAME                                           HOSTS                    ADDRESS          PORTS     AGE
letsencrypt-prod-cert                          <SericeA URL>            XX.XXX.XX.XX     80, 443   53d
letsencrypt-prod-cert-iot                      <SericeB URL>                             80, 443   63s
service-A-ingress                              <SericeA URL>            XX.XXX.XX.XX     80, 443   21d
Service-B-ingress-iot                          <SericeB URL>                             80        31m
I0416 08:08:59.531993       6 flags.go:208] "Watching for Ingress" class="nginx"
W0416 08:08:59.532037       6 flags.go:213] Ingresses with an empty class will also be processed by this Ingress controller
-------------------------------------------------------------------------------
NGINX Ingress controller
  Release:       v0.44.0
  Build:         f802554ccfadf828f7eb6d3f9a9333686706d613
  Repository:    https://github.com/kubernetes/ingress-nginx
  nginx version: nginx/1.19.6

-------------------------------------------------------------------------------

W0416 08:08:59.532349       6 client_config.go:614] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
I0416 08:08:59.533011       6 main.go:241] "Creating API client" host="https://10.0.0.1:443"
I0416 08:08:59.553015       6 main.go:285] "Running in Kubernetes cluster" major="1" minor="17" git="v1.17.11" state="clean" commit="3a3612132641768edd7f7e73d07772225817f630" platform="linux/amd64"
F0416 08:08:59.557528       6 main.go:93] No service with name ingress-nginx-1612789874-controller found in namespace default: services "ingress-nginx-1612789874-controller" not found
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0xc0000b0001, 0xc000026200, 0xb8, 0x1e2)
        k8s.io/klog/v2@v2.4.0/klog.go:1026 +0xb9
k8s.io/klog/v2.(*loggingT).output(0x26915e0, 0xc000000003, 0x0, 0x0, 0xc0003efb90, 0x25e6c33, 0x7, 0x5d, 0x40e200)
        k8s.io/klog/v2@v2.4.0/klog.go:975 +0x19b
k8s.io/klog/v2.(*loggingT).printDepth(0x26915e0, 0xc000000003, 0x0, 0x0, 0x0, 0x0, 0x1, 0xc00002e310, 0x1, 0x1)
        k8s.io/klog/v2@v2.4.0/klog.go:732 +0x16f
k8s.io/klog/v2.(*loggingT).print(...)
        k8s.io/klog/v2@v2.4.0/klog.go:714
k8s.io/klog/v2.Fatal(...)
        k8s.io/klog/v2@v2.4.0/klog.go:1482
main.main()
        k8s.io/ingress-nginx/cmd/nginx/main.go:93 +0x170f
...