我想在独占节点中运行两个pod。例如,我有4个节点(node-1,node-2,node-3,node-4)和2个pod(pod-1,pod-2)。我只希望在每个节点中运行一个pod,并且每个pod在两个节点中运行,例如node-1和node-2中的pod-1,node-3和node-4中的pod-2。有没有办法配置这种方式?
答案 0 :(得分:8)
您可以通过创建无法在同一台计算机上安排的容器定义来强制排他性。最简单的方法是为每个pod分配相同的主机端口。为两个pod定义设置相同的主机端口后,如果创建两个复制控制器,每个复制控制器有两个副本,则调度程序将运行分布在4台计算机上的2个pod的2个副本。
答案 1 :(得分:2)
我真正想要做的是通过node selection可以解决问题。
答案 2 :(得分:2)
将DaemonSet与Node Affinity或什至Anti-Affinity一起使用。
答案 3 :(得分:1)
您也可以使用无头服务 - 它不会保证排他性,但算法会在安排时更喜欢它。