我想知道是否可以通过某种自动化方式运行新的docker容器,以便只要旧容器达到特定内存/ CPU使用限制,旧容器就不会被杀死新的一个平衡了负载。
答案 0 :(得分:1)
你的意思是一种自动缩放,目前我还没有准备好使用的内置解决方案,但我可以与你分享我的想法:
您可以将收集器用于cAdvisor https://github.com/google/cadvisor之类的指标,您可以获取有关容器的信息(您也可以使用docker stats来执行此操作)
您可以将此数据存储在时间序列数据库中,例如InfluxDB或prometheus。
创建连续查询以在某些指标超出限制时触发“创建新容器”事件。
我知道您正在寻找准备好的东西,但目前我没有看到任何可以解决此问题的工具。
答案 1 :(得分:0)
听起来你需要一个容器协调器来处理其他用例。您可以通过几乎任何一个指标来推动规模选择。 Mesos,Kubernetes或Swarm。随着Docker投入巨大,Swarm正在发展很多。 Swarm模式是1.12中的一个新功能,它将把很多这个编排放在核心产品中,并且可能会给你一个很好的用例。