Docker 1.12 之前的: swarm 搭建 docker 集群

什么是Swarm

Swarm是Docker公司在2014年12月初发布的一套较为简单的工具,用来管理Docker集群,它将一群Docker宿主机变成一个单一的,虚拟的主机。Swarm使用标准的Docker API接口做为其前端访问入口,换言之,各类形式的Docker Client(docker client in go, docker_py, docker等)都可以直接与Swarm通讯。Swarm几乎所有用Go语言来完成开发,上周五,4月17号,Swarm0.2发布,相比0.1版本,0.2版本增长了一个新的策略来调度集群中的容器,使得在可用的节点上传播它们,以及支持更多的Docker命令以及集群驱动。html

Swarm deamon只是一个调度器(Scheduler)加路由器(router),Swarm本身不运行容器,它只是接受docker客户端发送过来的请求,调度适合的节点来运行容器,这意味着,即便Swarm因为某些缘由挂掉了,集群中的节点也会照常运行,当Swarm从新恢复运行以后,它会收集重建集群信息。下面是Swarm的结构图: 前端

能干什么

  • 搭建一个dockers 集群

怎么玩

  1. 安装 env :A,B,C 三台机 ,A 将做管理机 ,centos 系统 ,root 用户 每一台机执行: sudo docker pull swarm
  2. 修改 docker 配置文件 sudo vi /etc/sysconfig/docker 在文件的最后面添加下面这句 DOCKER_OPTS="-H 0.0.0.0:2375 –H unix:///var/run/docker.sock"
  3. 重启dockers sudo service docker restart
  4. 使用令牌来发现
  • 使用DOCKHUB 来创建 任意一台,执行下面的命令 sudo docker run --rm swarm create 这里会产生一个令牌 ,假设为1111
  • swarm join命令,把机器加入集群。 A,B,C: sudo docker run -d swarm join –addr=A:2375 token://1111
  • swarm manager A: sudo docker run –d –p 2376:2375 swarm manage token://1111
    • 首先要以daemon的形式运行swarm;
    • 其次端口映射:2376能够更换成任何一个本机没有占用的端口,必定不能是2375,不然就会出问题
  • swarm list A,b,c:docker run --rm swarm list token://1111

引用:Docker 学习教程docker

相关文章
相关标签/搜索