当前位置:  开发笔记 > 运维 > 正文

如何在docker swarm上配置自动扩展?

如何解决《如何在dockerswarm上配置自动扩展?》经验,为你挑选了1个好方法。

我想知道如何配置此工具以从最少数量的节点开始,并在需要时增长到最大节点数.

我应该使用其他工具还是docker swarm解决这个问题?



1> abronan..:

简短的回答:目前使用Docker Swarm没有简单的方法.

Docker Swarm(或Swarm模式)不支持开箱即用的自动缩放机器.您需要使用另一种解决方案,比如docker-machine在基础架构上创建计算机(使用docker)并将这些计算机链接到现有的Swarm集群(带docker swarm join).

这将涉及大量脚本,但想法是监视集群的CPU /内存/网络使用情况(使用topmonit),一旦超出阈值(比如总集群资源的70%),就会触发调用docker-machine扩展的脚本群集.使用相同的想法,您也可以通过在低于下限阈值时从现有群集群中排空移除节点(最好是Agent节点)来缩小.

如果要使用此条件,则需要确保监视持续的资源使用情况,否则您将使基础结构产生并破坏节点中资源使用的频繁和突然变化.

您可以为集群中的计算机定义下限和上限,以控制事物.

请注意,Swarm需要至少3个Manager节点(建议5)才能维持Distributed Consensus算法的仲裁.因此,建议的最小下限是5个节点(Agent随着资源逐渐被服务使用,您可以使用节点进行扩展).

在某种程度上,您还可以查看Docker InfraKit或Terraform进行基础架构自动化和运行状况监控.

更新:现在有一个很有前途的跨平台自动缩放器,支持Swarm模式任务自动缩放:Orbiter.虽然服务/机器自动缩放仍然没有任何开箱即用的功能.


我们需要根据存储在prometheus中的指标进行自动缩放.我们构建了一个服务,它使用docker API根据来自prometheus的指标进行扩展https://github.com/sahajsoft/docker-swarm-service-autoscaler
推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有