在Azure上使用头盔和静态IP设置新的nginx入口时,nginx控制器永远不会获得分配的静态IP。它总是说<pending>
。
我按如下所示安装头盔图表-
helm install stable/nginx-ingress --name <my-name> --namespace <my-namespace> --set controller.replicaCount=2 --set controller.service.loadBalancerIP="<static-ip-address>"
它说它安装正确,但是列出了一个错误
E0411 06:44:17.063913 13264 portforward.go:303]复制错误 远程流到本地连接:从tcp4读取 127.0.0.1:57881->127.0.0.1:57886:写入tcp4 127.0.0.1:57881->127.0.0.1:57886:wsasend:已建立的连接已被主机中的软件中止。
然后我做一个kubectl get all -n <my-namespace>
,正确列出所有内容,只是控制器的外部IP为<pending>
。
然后我执行kubectl describe -n <my-namespace> service/<my-name>-nginx-ingress-controller
,此错误列在“事件-”下
警告CreationLoadBalancerFailed 11s(x4超过47s) 服务控制器创建负载均衡器时出错(将重试):失败 确保负载均衡器正常工作 my-namespace / my-name-nginx-ingress-controller:超时等待 条件。
谢谢你
答案 0 :(得分:0)
对于您的问题,可能的原因是您的公共IP与AKS群集不在同一资源组和区域中。请参阅Create an ingress controller with a static public IP address in Azure Kubernetes Service (AKS)中的步骤。
您可以通过如下CLI命令获得AKS组:
az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
当您的公共IP位于不同的组和地区时,它将像您一样给出超时错误。
答案 1 :(得分:0)
确保您的入口在节点资源组中,并且入口的 sku 是 Basic 而不是 Standard