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

相關文章
相關標籤/搜索