Docker-Swarm调度策略

原创 2016年06月01日 00:39:51

swarm在用命令swarm manager启动swarm manager时,可用--strategy指定调度策略。
swarm提供了三种调度策略计算节点的排名,在调度(例如选择哪一个节点运行容器时)时,取排名最前的节点。

这三种调度策略是:
- spread
- binpack
- random

random策略:随机选择节点。一般用于开发测试阶段。

spread策略:默认策略,swarm优先选择占用资源(如CPU、内存等)最少的节点,能保证集群中所有节点资源的均匀使用。
它的好处是,保证

binpack策略:与spread相反,它的目的是尽可能地填满一个节点,以保证更多空余的节点。

示例:

# 测试spread策略
# 背景:swarm集群中有两个相同资源(cpu、内存大小相同)的节点node1 node2
# 运行两个容器
docker tcp://<manager_ip:manager_port> run -d -P -m 1G --name db mysql
docker tcp://<manager_ip:manager_port> run -d -P -m 1G --name db mysql
# 查看容器所在节点
docker tcp://<manager_ip:manager_port> ps
# 结果分析:如果是spread策略,两个运行的容器一定在不同的节点串
#       如果是binpack策略,两个运行的容器一定在同一个节点中

参考:https://docs.docker.com/swarm/scheduler/strategy/

相关文章推荐

Docker-Swarm调度之Filters

Swarm的过滤条件用于在调度过程中选择满足指定条件的主机节点,常用于Docker创建镜像或运行容器。...

Docker-Swarm重调度策略

什么是重调度? 就是正在运行的节点(在启动时是经过swarm调度的)坏掉之后,指定由swarm再次调度,这就是重调度。在启动容器时指定重重调度策略。...

Docker Swarm集群实践——管理篇

前面我们已经部署好了一个Docker Swarm集群环境,接下来,我们就对Swarm集群的相关管理进行简单介绍。 集群调度策略 既然是集群,就是有一个调度策略,也就是该集群包含那么多子节点,我到底...

开始试用docker的swarm模式

开始试用docker的swarm模式docker 1.12以及之后的版本集成了swarmkit等编排服务,现在docker的版本为1.12-rc2版本。本文来尝试试用此种模式建立原生的docker集群...

Docker Swarm原理大解密

Docker Swarm原理大解密Docker Swarm是docker公司2014年出品的基于docker的集群管理调度工具,官方文档地址:https://docs.docker.com/swarm...
  • MrTitan
  • MrTitan
  • 2017年03月12日 20:26
  • 1312

docker 指定IP地址、与主机同网段IP

首先讲一下docker的网络模式: 我们使用docker run创建容器时,可以使用--net选项指定容器的网络模式,docker一共有4中网络模式: 1:bridge模式,--net=bridg...

Docker Swarm:经济高效的容器调度

本文探讨了几种容器调度策略,并以内存约束为例,讨论了如何利用Docker Swarm,通过资源约束实现容器的合理调度。其中,对容器资源的约束,包括硬约束和软约束,硬约束是指内存资源的实际限制条件,而软...

The DevOps 2.1 Toolkit: Docker Swarm

  • 2017年11月12日 07:04
  • 16.22MB
  • 下载

Docker Swarm

  • 2014年12月25日 11:27
  • 1.71MB
  • 下载

Docker Swarm搭建生产环境的集群

以AWS为例介绍Docker Swarm的搭建过程,并简单测试Swarm manager的高可靠性。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Docker-Swarm调度策略
举报原因:
原因补充:

(最多只允许输入30个字)