繁体   English   中英

Docker Swarm和Kubernetes如何验证其管理选择?

[英]How Docker Swarm and Kubernetes validate their management choices?

Docker Swarm和Kubernetes是用于管理多个节点上的应用程序的两个系统。 如果节点正在排水或其负载非常高,则它们将启动一些过程以维持需求中所述的所需状态。

当然,当他们通过基础架构管理应用程序时,他们必须做出一些选择才能修改状态。 为了确保决策不会损害系统,如何做出决策?

我的意思是,不是在触发操作时(系统分析),而是如何证明所做出的决定是解决问题的最佳决定? 有一些文档吗? 我没有找到任何有关此主题的信息。

例如:我有一个几乎所有资源都可用的节点。 然后,在某个时刻,他们的资源变得不足,仅一秒钟就保持不足,然后释放。 如果管理器由于资源不足的那一秒触发了迁移功能而将应用程序从该节点迁移到另一个节点,则可能会比已解决的问题产生更多的问题,因为已经解决了资源不足的问题,并且确实不需要迁移。

Kubernetes不会验证其管理选择,它只是在您拥有资源的任何节点上的Pod上生成。 但是,如果您要管理资源的使用方式,则可以使用资源限制。

另外,如果您在某些迁移期间您的应用程序在短时间内使用大量资源并且您不希望Kubernetes将此Pod移到可以开始使用Pod软关联的任何位置时出现这种行为,则您的应用程序将尝试仅在点头上生成您想要的,并且只有当它没有资源或可能性时,它才会在另一个节点中生成Pod。

Swarm不会移动容器,因为资源会实时更改。 您可以通过资源预留和限制来控制其初始调度方式,但是如果其他因素吞噬了节点资源,它将无法运行正常的应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM