docker swarm 管理服務

2021-08-31 04:01:27 字數 3303 閱讀 4114

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核心中可用的傳輸級負載均衡。本地建立乙個集群環...