Nginx Ingress Controller在Google Kubernetes Engine上找不到节点

我在GKE集群上安装了“ nginx入口控制器”。 我跟随this guide在GKE中安装了Nginx入口控制器。

在为服务和入口资源部署资源时,我意识到入口控制器位于0/1

Nginx Ingress Controller在Google Kubernetes Engine上找不到节点

事件告诉我:

0/1 nodes are available: 1 node(s) didn't match node selector.

现在,我检查了Yaml /描述:https://pastebin.com/QG3GKxh1 并发现:

nodeSelector:
    kubernetes.io/os: linux

我认为哪个看起来还不错。由于我只是使用指南中的命令来安装控制器,所以我不知道发生了什么问题。

解决方案:

提供的答案向我展示了方法。控制器正在寻找beta.kubernetes/io: linux时,我的节点被标记为kubernetes/io: linux。 重命名控制器中的nodeSelector正常。

qqliujiaolong 回答:Nginx Ingress Controller在Google Kubernetes Engine上找不到节点

nodeSelector用于约束可以在其上安排Pod的节点。

使用:

nodeSelector:
    kubernetes.io/os: linux

您说的是,必须将Pod分配给具有标签的节点 kubernetes.io/os: linux。如果您的节点都没有该标签,则Pod将永远不会被调度。

从nginx入口控制器中删除选择器或在任何节点上添加标签kubernetes.io/os: linux应该可以解决您的问题。

本文链接:https://www.f2er.com/3167724.html

大家都在问