我们公司的AWS上有一个由kops管理的kubernetes集群。当我们向集群添加越来越多的工作程序节点时,出现了一个问题,是我们应该使用更大的工作程序节点(并减少其数量)还是继续添加更多相同大小的工作程序节点。
我想到的论点是:
- 工作程序节点太少,使得处理工作程序节点的中断变得困难。例如。只有两个几乎满载的工作程序节点,您无法处理一个工作程序节点的中断。大约有20个工作节点,这应该是可能的。
- 对群集进行滚动更新需要花费更多的工作节点并花费更长的时间。
- 每个工作节点都有一点点开销,这些开销是由操作系统和诸如docker和kubelet之类的进程引起的。使用较大的工作程序节点可使此开销按百分比减少。
- 拥有小型工作节点和大型应用程序会导致“每个节点一个应用程序”,这在资源利用率方面可能是低效的。
还有更多要考虑的论点吗?
有收支平衡点或经验法则吗?