azure-aks - 如何修复 nginx 入口的“无法确保负载均衡器”错误
问题描述
在 Azure 上使用 helm 和静态 ip 设置新的 nginx-ingress 时,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>
,一切都正确列出了与<pending>
控制器一样的外部IP。
然后我做了一个kubectl describe -n <my-namespace> service/<my-name>-nginx-ingress-controller
,这个错误列在事件下 -
警告 CreatingLoadBalancerFailed 11s (x4 over 47s) service-controller 创建负载均衡器时出错(将重试):无法确保服务 my-namespace/my-name-nginx-ingress-controller 的负载均衡器:等待条件超时。
非常感谢你
解决方案
对于您的问题,可能的原因是您的公共 IP 与 AKS 群集不在同一个资源组和区域中。请参阅在 Azure Kubernetes 服务 (AKS) 中使用静态公共 IP 地址创建入口控制器中的步骤。
您可以通过 CLI 命令获取 AKS 组,如下所示:
az aks show --resource-group myResourceGroup --name myAKSCluster --query nodeResourceGroup -o tsv
当您的公共 IP 在不同的组和区域中时,它会像您一样给出超时错误。
推荐阅读
- reference - Sublimetext 查找用法、参考资料
- html - 对容器内其他项目的不透明度控制
- javascript - 渲染方法应该是 props 和 state 的纯函数
- css - CSS:mix-blend-mode = color-dodge 在 Chrome 中不起作用,但在 Firefox 中可以
- java - 如何制作一种计算方法,该方法从 4 种以上的方法中获取变量来进行计算?
- python - 为什么我得到正确的回文输出但没有输出常规数字?
- rest - 如何设置全局soap ui基本身份验证和Accept as application/json
- ipython - 为什么在 ipython 上的 if 块之后续行会立即中断?
- windows - 打包为 UWP 应用时,带有两个字母名称 ('bg') 的文件夹内的图像消失
- ember.js - ember 引擎 routes.js 中的嵌套路由?