Gke - kubernetes / 如何确保给定节点上的部署隔离

Gke - kubernetes / how to ensure deployment isolation on a given node

节点选择器、亲和/反亲和之间有点迷失;污点

我感兴趣的是确保单个 pod/deployement 将 运行 在给定节点上,而不是在其他任何地方。并且该节点不会接收指定的 pod 之外的任何其他 pod

鉴于上述选项(如果还有其他选项),最简洁的方法是什么?

仅在一个节点上添加一些标签。
或者
你可以用一个节点创建一个新的node-pool。(我更喜欢这个,因为这可以很好地与自动缩放一起工作,将最小,最大节点设置为1)

创建一个部署,其中一个副本和亲缘关系等于此节点。

限制 运行 节点上只有这个 pod:
1) 您可以添加等于节点资源值的资源限制,这样就不会在该节点上安排其他pods。
或者
2) 对所有其他 pods
使用一些默认亲和力 或者
3)使用node-isolation-restriction来限制哪些pods可以被调度到这个节点上。我自己还没试过