Kubernetes复制控制器扩展查询

时间:2018-05-17 16:24:19

标签: kubernetes azure-kubernetes

我想知道在扩展请求期间Replication Controller使用了什么终止策略。

例如:

  

初始副本= 2

     

创建了2个Pod {Pod-1,Pod-2}

     

向外扩展到5

     

将创建3个Pod {Pod-1,Pod-2,Pod-3,Pod-4,Pod-5}

     

再次缩小为2

     

3个Pod将被删除,我们只剩下2个Pod {Pod-x,Pod-y}

现在,Replication控制器是否会根据其年龄终止并删除pod?或者它取决于Pod内的容器是否繁忙?或者是随机顺序?

我测试了这个场景几次,发现Pod随机终止。任何人都可以确认一样吗?有没有办法控制终止序列?

提前致谢。

1 个答案:

答案 0 :(得分:1)

Kubernetes复制控制器可确保指定数量的pod"副本"在任何给定的时间运行。如果有太多,它会杀死一些。如果太少,它会开始更多。与用户直接创建pod的情况不同,ReplicationController维护的pod会在失败时被自动替换,被删除或被终止

在降尺度过程中选择要杀死的吊舱有一个逻辑。

开发人员描述了用于选择要杀死的吊舱的工资:

{{1}}

您可以设置配置选项以避免杀死特定的pod。如果你想详细了解它是如何工作的 - 请查看源代码,有一个很好的lecture