docker swarm實踐

swarms

1. 使用 docker swarm init 初始化當前機器爲 swarm manager

2. 使用 docker swarm join 將當前機器加入到集羣clusters

3. 建立集羣后,在各個節點中啓動services即可

【docker swarm】

初始化swarm

docker swarm init

管理join tokens

docker swarm join-token manager  --得到加入併成爲manager的token,在下面用到

docker swarm join-token worker  --得到加入併成爲worker的token,在下面用到

加入swarm併成爲一個manager

docker swarm join --token SWMTKN-1-5123aqw2etnbo4oylzj6bqwtotrekjq61c4e1vume3bt4ss5-12wcsdft3m6p9qyf6b1z55dd 192.168.1.22:8080

加入swarm成爲一個節點

docker swarm join --token SWMTKN-1-5jqweun2etnbo4aksjdkfwtotrekjq61c4e1vume3bt4ss5-9123fqt4eqd8woyj8x2kdfrteei 192.168.1.22:8080

退出swarm

docker swarm leave  --退出後,在ls中依然顯示,類似於docker ps -a

解鎖swarm

docker swarm unlock  --後續輸入unlock-key設定的key值

管理unlock key

docker swarm unlock-key

升級swarm集羣的參數

docker swarm update --cert-expiry 720h

【docker node】

列出所有節點

docker node ls

刪除node

docker node rm swarm-node-02  --類似於docker rm containerId,必須leave後才能刪

docker node rm --force swarm-node-03

列出節點中的運行的內容,不指定節點名則表示當前節點

docker node ps swarm-node-02

顯示節點中詳細信息

docker node inspect swarm-node-02

節點降級(只能是針對manager)

docker node demote swarm-mangaer-01

節點升級爲manager

docker node promote swarm-node-02

【docker service】

創建service

docker service create --replicas=5 --name redis2 --secret secret.json --env MYVAR=foo redis:3.0.6

顯示服務詳細信息

docker service inspect redis2

顯示服務日誌

docker service logs -f --tail=100 redis2

列出服務

docker service ls --filter name=frontend

列出服務下的任務,只有manager節點機器可以執行

docker service ps redis2

刪除服務,只有manager節點機器可以執行

docker service rm redis2

設置服務的規模(集羣數),可以多個,mode=global時不能用

docker service scale svr-core=3 svr-admin=5

更新服務,必要時會重啓

docker service update --limit-cpu 2 redis

實例: docker service update configserver --force --image user/config-server:1.0.0

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