基於swarm的docker機羣搭建

實驗環境

準備三臺虛擬機

172.25.11.12    rhel7.3   manager    vm2
172.25.11.13    rhel7.3   node       vm3
172.25.11.14    rhel7.3   node       vm4

三臺主機上:

yum install -y docker-engine-17.03.1.ce-1.el7.centos.x86_64.rpm docker-engine-selinux-17.03.1.ce-1.el7.centos.noarch.rpm
systemctl start docker
yum install -y bash-completion.noarch  # 若Tab鍵補不齊的話下載此軟件

vm2上:

[root@vm2 ~]# docker swarm init
Swarm initialized: current node (xdjl4l6y6lw3r9nww9zhijf7l) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-47uuc1popatt8a08ncyh3kermwul5fvf3quq84fhrii3nt7wtp-3w1ssi01g7modi6ls7dxhuj86 \
    172.25.11.12:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

node節點上都做:

[root@vm3 ~]# docker swarm join \
>     --token SWMTKN-1-47uuc1popatt8a08ncyh3kermwul5fvf3quq84fhrii3nt7wtp-3w1ssi01g7modi6ls7dxhuj86 \
>     172.25.11.12:2377
This node joined a swarm as a worker.

將主機證書複製到每個主機上,以便使用主機上的倉庫
倉庫搭建:容器倉庫搭建
容器倉庫搭建上傳拉取認證
在manager上:

docker node ls

這裏寫圖片描述

docker pull westos.org/nginx  # 拉取的前提主機倉庫中必須有
docker service create --name nginx --publish 80:80 --replicas 3 westos.org/nginx

這裏寫圖片描述

docker pull westos.org/visualizer
[root@vm2 ~]# docker service create \
> --name=viz \
> --publish=8080:8080/tcp \
> --constraint=node.role==manager \
> --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \
> westos.org/visualizer

這裏寫圖片描述
瀏覽器:
這裏寫圖片描述
每個主機都做

docker cp index.html nginx.3.0ht3bzq63yjckumz2tu85bfzj:/usr/share/nginx/html  # 設置首頁文件

驗證負載均衡:
這裏寫圖片描述

docker service update --image westos.org/game2048 --update-parallelism 10 --update-delay 10s nginx   # 大批量更新  10s一次,一次10個

瀏覽器查看:頁面變化
這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章