Docker Swarm 建立服務算法
環境:docker
一、管理節點:建立測試服務服務器
docker service create --replicas 1 --name hello busybox ping www.baidu.com
# 建立服務命令 docker service create # 開啓的副本數量 --replicas 1 # 服務名稱 --name hello # 使用的image鏡像 busybox # 容器內啓動的指令 ping www.baidu.com
注:busybox啓動失敗後manager嘗試重啓容器,可是busybox容器內沒有持續運行的任務,manager會將它關閉,因此沒有啓動成功。向容器添加ping www.baidu.com持續動做避免容器關閉。ide
# 查看服務器動信息
docker service ls
ID NAME MODE REPLICAS IMAGE t1vtb3ryobaa hello replicated 1/1 busybox:latest 注: MODE 調度模式 replicated:會根據默認的節點去調度算法。 glob:保證每一個節點都有容器任務。 REPLICAS 副本數:成功副本數/分配副本數 IMAGE:鏡像
二、管理節點:擴展副本數測試
docker service scale hello=3
# 縮容擴容服務 docker service scale # 服務名=副本數 hello=3
# 查看運行容器服務分別平均分配給工做節點內。 docker service ps -f "desired-state=running" hello
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS b834diy4blto hello.1 busybox:latest management Running Running 2 hours ago wbtbkwvjdn87 hello.2 busybox:latest slave01 Running Running 26 seconds ago 7xl54770xl8w hello.3 busybox:latest slave02 Running Running 26 seconds ago