我希望在GKE中实现“ PodNodeSelector”。我想将工作节点划分为性能,阶段和生产命名空间。 我没有使用nodeselector(节点关联性)或污点/容差,因为我想为每个环境使用相同的部署模板文件。
worker1/2 -> Namespace perf
worker 3/4 -> Namespace stage
worker 5/6 -> Namespace prod
我可以使用“ PodNodeSelector”在普通的k8s集群中实现这一点,但是我无法在gke中弄清楚。
答案 0 :(得分:0)
GKE不包含此功能,因为它是Kubernetes的托管版本,并且未启用该功能的准入控制器。
您可以做的是create a Feature Request using issue tracker,并让产品团队知道您想使用该功能。
作为最可行的替代方法,您可以使用异味或亲和力(不需要)或在GCE中创建自己的集群。
答案 1 :(得分:0)
正如@Wojtek_B 在他的回答中已经提到的那样 - PodNodeSelector 在 GKE 上不可用。但是,我刚刚开源了一个 mutating webhook,它允许您通过在命名空间级别添加节点关联来实现相同的结果(它甚至更灵活一点,imo:)。它称为 namespace-node-affinity,可在 GitHub 上使用。
PS:PodNodeSelector 在 EKS 上也不可用,所以变异的 webhook 也是一个解决方案 :)