Docker Swarm如何实现负载均衡?

前端之家收集整理的这篇文章主要介绍了Docker Swarm如何实现负载均衡?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个由10个Swarm节点组成的集群,通过docker swarm join命令启动

如果我想将docker实例扩展为15

docker service create --replicas 15 

docker swarm如何知道启动容器的位置?

它是循环还是考虑到计算资源(使用了多少cpu / mem)?

最佳答案
当您在Swarm模式下创建服务或扩展服务时,Elected Leader上的调度程序(其中一个管理器)将选择一个节点来运行该服务.目前领导者有3种策略可供使用.

>传播
> binpack
>随机

spread和binpack策略根据节点的可用cpu,RAM以及它拥有的容器数来计算排名.随机策略不使用计算.它随机选择一个节点,主要用于调试.

在传播策略下,Swarm优化容器数量最少的节点. binpack策略使Swarm针对最多打包的节点进行优化.

Swarm默认使用spread.
请记住,您也可以在特定节点上约束容器.

在docker版本1.12.1(最新版本到发布日期)中设置策略是不可能的

猜你在找的Docker相关文章