docker swarm中服務的概念是:乙個服務包含swarm集群中多個節點,每個節點都可以部署服務,每個服務也包含多個相關的容器。
docker service --help
commands:
create create a new service
inspect display detailed information on one or more services
ls list services
ps list the tasks of a service
rm remove one or more services
scale scale one or multiple replicated services
update update a service
在主節點上建立乙個服務,副本數是2個,防止服務在執行結束後退出,增加命令 ping "www.baidu.com"
dnmw2wdgs4xbj6bw3ma4d5jam檢視節點的所有服務,
[root@worker3 ~]# docker service ls
id name mode replicas image
3z658klw8dbd my-web replicated 2/2 nginx:latest
dnmw2wdgs4xb busy-box replicated 2/2 busybox:latest
[root@worker3 ~]# docker service create --replicas 3 --name redis --update-delay 10s redis:3.0.6
383zekusyout2r639vmfx3ejy
[root@worker3 ~]# docker service ps redis
id name image node desired state current state error ports
kta1fy9wcdzf redis.1 redis:3.0.6 master running preparing 8 seconds ago
bu3xvvq6jghu redis.2 redis:3.0.6 master running preparing 8 seconds ago
j7b7c0d86ey0 redis.3 redis:3.0.6 worker3 running running 8 seconds ago
檢視服務的具體的資訊
[root@worker3 ~]# docker service ps busy-box
id name image node desired state current state error ports
mrv2xv10g1t5 busy-box.1 busybox:latest worker3 running running 3 minutes ago
v26re4k304c2 busy-box.2 busybox:latest master running running 3 minutes ago
docker swarm 刪除乙個服務
[root@worker3 ~]# docker service rm my-web
my-web
docker swarm 服務更新,以乙個常見的映象更新為例子
[root@worker3 ~]# docker service create --replicas 3 --name redis --update-delay 10s redis:3.0.6
383zekusyout2r639vmfx3ejy
[root@worker3 ~]# docker service ps redis
id name image node desired state current state error ports
kta1fy9wcdzf redis.1 redis:3.0.6 master running preparing 8 seconds ago
bu3xvvq6jghu redis.2 redis:3.0.6 master running preparing 8 seconds ago
j7b7c0d86ey0 redis.3 redis:3.0.6 worker3 running running 8 seconds ago
docker swarm update 更新服務的映象
[root@worker3 ~]# docker service update --image redis:latest redis
[root@worker3 ~]# docker service ps --filter "desired-state =running" redis
id name image node desired state current state error ports
nk7tktytm7kk redis.1 redis:latest master running running 4 minutes ago
uobcdvbzq4kk redis.2 redis:latest worker3 running running 4 minutes ago
cdozh8bw6m8p redis.3 redis:latest worker3 running running 4 minutes ago
Docker Swarm (配置管理Config)
docker 17.06 引入了 swarm 服務配置,它允許你在服務的映象或者執行的容器外部儲存非敏感資訊,比如配置檔案。這樣保證了映象的通用性,而無需將配置檔案繫結到容器或使用環境變數來配置。1 建立配置用法 docker config create 引數 config file 引數 簡寫引數...
Docker Swarm (服務構建,水平擴充套件)
使用服務仍能夠配置大多數熟悉的容器屬性,比如容器名 埠對映 接入網路和映象。此外還增加了額外的特性,比如可以宣告應用服務的期望狀態,將其告知 docker 後,docker 會負責進行服務的部署和管理。舉例說明,假如某應用有乙個 web 前端服務,該服務有相應的映象。測試表明對於正常的流量來說 5 ...
Docker Swarm服務發現和負載均衡原理
docker swarm服務發現和負載均衡原理 docker使用的是linux核心iptables和ipvs的功能來實現服務發現和負載均衡。iptables是linux核心中可用的包過濾技術,可根據資料報的內容進行分類 修改和 決策。ipvs是linux核心中可用的傳輸級負載均衡。本地建立乙個集群環...