亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

詳解使用docker 1.12 搭建多主機docker swarm集群

2024-09-01 13:52:26
字體:
來源:轉載
供稿:網友

?swarm是docker公司自己的容器集群管理工具,本文介紹了使用docker 1.12 搭建多主機docker swarm集群,分享給大家

準備

  1. 準備至少兩臺的centos 7 主機(全新最小安裝, 可以使用虛擬機安裝)
  2. 開放端口2377 tcp端口, 7946 4789 tcp udp 端口
  3. 本文使用192.168.99.101(hostname:centos-node4) 作為swarm manager
  4. 192.168.99.102(hostname:centos-node5) 作為swarm agent1

安裝docker engine 1.12
在每臺機器上執行以下命令

# sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'[dockerrepo]name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/7/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF# sudo yum install docker-engine# sudo systemctl enable docker# sudo systemctl start docker

安裝完后查看Docker 版本

[root@centos-node4 ~]# docker version Client:  Version:   1.12.0 API version: 1.24 Go version:  go1.6.3 Git commit:  8eab29e Built:     OS/Arch:   linux/amd64Server:  Version:   1.12.0 API version: 1.24 Go version:  go1.6.3 Git commit:  8eab29e Built:     OS/Arch:   linux/amd64

開放端口相關命令

firewall-cmd --zone=public --add-port=2377/tcp --permanent firewall-cmd --zone=public --add-port=7946/tcp --permanent firewall-cmd --zone=public --add-port=7946/udp --permanent firewall-cmd --zone=public --add-port=4789/tcp --permanent firewall-cmd --zone=public --add-port=4789/udp --permanent firewall-cmd --reload 

新版docker swarm 命令詳情

有關集群的docker命令如下:

  1. docker swarm:集群管理,子命令有init, join,join-token, leave, update
  2. docker node:節點管理,子命令有demote, inspect,ls, promote, rm, ps, update
  3. docker service:服務管理,子命令有create, inspect, ps, ls ,rm , scale, update
  4. docker stack/deploy:試驗特性,用于多應用部署

創建swarm 集群

查看docker swarm 命令說明

[root@centos-node4 ~]# docker swarm -hFlag shorthand -h has been deprecated, please use --helpUsage:  docker swarm COMMANDManage Docker SwarmOptions:    --help  Print usageCommands:  init    Initialize a swarm join    Join a swarm as a node and/or manager join-token Manage join tokens update   Update the swarm leave    Leave a swarmRun 'docker swarm COMMAND --help' for more information on a command. 

在swarm manager(centos-node4:192.168.99.101)初始化swarm集群

--listen-addr指定監聽的ip與端口

#命令格式: docker swarm init --listen-addr <MANAGER-IP>:<PORT>[root@centos-node4 ~]# docker swarm init --listen-addr 192.168.99.101:2377Swarm initialized: current node (a60d5c3ttymvtozr46uvk17q4) is now a manager. 

查看結果

[root@centos-node4 ~]# docker node lsID              HOSTNAME   MEMBERSHIP STATUS AVAILABILITY MANAGER STATUS a60d5c3ttymvtozr46uvk17q4 * centos-node4 Accepted  Ready  Active    Leader 

把swarm-agent1(centos-node5: 192.168.99.102)添加到swarm集群

在swarm-agent1上執行:

#命令格式: docker swarm join <MANAGER-IP>:<PORT>[root@centos-node5 ~]# docker swarm join 192.168.99.101:2377This node joined a Swarm as a worker. 

在swarm manager查看結果

[root@centos-node4 ~]# docker node lsID              HOSTNAME   MEMBERSHIP STATUS AVAILABILITY MANAGER STATUS 0ypcw58hjlcvr0xqbtizmau62  centos-node5 Accepted  Ready  Active a60d5c3ttymvtozr46uvk17q4 * centos-node4 Accepted  Ready  Active    Leader 

創建一個overlay 跨主機網絡

查看原有網絡

[root@centos-node4 ~]# docker network lsNETWORK ID     NAME        DRIVER       SCOPE abec77415f48    bridge       bridge       local e2fff9d572a6    docker_gwbridge   bridge       local 166bd71f7d0e    host        host        local 9gr6bfff1rv9    ingress       overlay       swarm 1d2bfc590294    none        null        local 

可以看到在swarm上默認已有一個名為ingress的overlay 網絡,默認在swarm里使用,本文會創建一個新的

創建一個新的overlay網絡

 [root@centos-node4 ~]# docker network create --driver overlay docker-netaoqs3p835s5glx69hi46ou2dw  [root@centos-node4 ~]# docker network lsNETWORK ID     NAME        DRIVER       SCOPE abec77415f48    bridge       bridge       local aoqs3p835s5g    docker-net     overlay       swarm e2fff9d572a6    docker_gwbridge   bridge       local 166bd71f7d0e    host        host        local 9gr6bfff1rv9    ingress       overlay       swarm 1d2bfc590294    none        null        local 

新的網絡(docker-net)已創建

在新的跨主機overlay 網絡(docker-net)上創建應用

部署

用alpine鏡像在docker-net網絡上啟動兩個實例, 并編排為一組服務

[root@centos-node4 ~]# docker service create --replicas 2 --name helloworld --network=docker-net alpine ping docker.com5lgdq3ihiez0o7h2uegu4fgd3 

查看部署結果

[root@centos-node4 ~]# docker service lsID      NAME    REPLICAS IMAGE  COMMAND 5lgdq3ihiez0 helloworld 0/2    alpine ping docker.com [root@centos-node4 ~]# docker service tasks helloworldID             NAME     SERVICE   IMAGE  LAST STATE     DESIRED STATE NODE eul3bus45qz3b555wekotdmo5 helloworld.1 helloworld alpine Running 14 seconds Running    centos-node5 55uhq6xxcv53xlkqv2f0be9b9 helloworld.2 helloworld alpine Running 14 seconds Running    centos-node4 

可以看到兩個實例分別運行在兩個節點上

測試兩個主機的網絡是否能互通

分別查看兩個實例的名稱

# 在swarm-manager 上執行[root@centos-node4 ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND         CREATED       STATUS          PORTS        NAMES f4a197abdb0b    alpine:latest    "ping docker.com"    42 minutes ago   Up 42 minutes                 helloworld.2.55uhq6xxcv53xlkqv2f0be9b9# 在swarm-agnet1 上執行[root@centos-node5 ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS       PORTS        NAMES 39cc35cd54b5    alpine:latest    "ping docker.com"  50 seconds ago   Up 49 seconds              helloworld.1.eul3bus45qz3b555wekotdmo5 

在swarm-manager 上測試

[root@centos-node4 ~]# docker exec -ti helloworld.2.55uhq6xxcv53xlkqv2f0be9b9 sh/ # ping helloworld.1.eul3bus45qz3b555wekotdmo5PING helloworld.1.eul3bus45qz3b555wekotdmo5 (10.0.9.3): 56 data bytes 64 bytes from 10.0.9.3: seq=0 ttl=64 time=0.514 ms 64 bytes from 10.0.9.3: seq=1 ttl=64 time=0.508 ms 64 bytes from 10.0.9.3: seq=2 ttl=64 time=0.381 ms 64 bytes from 10.0.9.3: seq=3 ttl=64 time=0.408 ms ^C--- helloworld.1.eul3bus45qz3b555wekotdmo5 ping statistics ---4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max = 0.381/0.452/0.514 ms

在swarm-agent1 上測試

[root@centos-node5 ~]# docker ps -aCONTAINER ID    IMAGE        COMMAND       CREATED       STATUS       PORTS        NAMES 39cc35cd54b5    alpine:latest    "ping docker.com"  50 seconds ago   Up 49 seconds              helloworld.1.eul3bus45qz3b555wekotdmo5 [root@centos-node5 ~]# docker exec -ti helloworld.1.eul3bus45qz3b555wekotdmo5 sh/ # ping helloworld.2.55uhq6xxcv53xlkqv2f0be9b9PING helloworld.2.55uhq6xxcv53xlkqv2f0be9b9 (10.0.9.4): 56 data bytes 64 bytes from 10.0.9.4: seq=0 ttl=64 time=0.892 ms 64 bytes from 10.0.9.4: seq=1 ttl=64 time=0.463 ms 64 bytes from 10.0.9.4: seq=2 ttl=64 time=0.462 ms 64 bytes from 10.0.9.4: seq=3 ttl=64 time=0.478 ms 64 bytes from 10.0.9.4: seq=4 ttl=64 time=0.468 ms 64 bytes from 10.0.9.4: seq=5 ttl=64 time=0.459 ms ^C--- helloworld.2.55uhq6xxcv53xlkqv2f0be9b9 ping statistics ---6 packets transmitted, 6 packets received, 0% packet loss round-trip min/avg/max = 0.459/0.537/0.892 ms 

現在新版的docker swarm 管理非常簡單, 可以快速的搭建起一個跨主機的集群并部署應用

dokcer swarm自帶的負載均衡

創建一組服務

 

復制代碼 代碼如下:
docker service create --replicas 2 --name whoami -p 8080:80 daocloud.io/nginx:alpine 

 

訪問服務(可以多執行幾次)

# 訪問地址格式: swarm-manager.ip + (-p映射的端口)curl -v 192.168.99.101:8080 

然后用docker logs 查看容器中nginx的訪問日志, 可以現兩個容器都有訪問記錄

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
2019中文字幕在线免费观看| 成人网页在线免费观看| 亚洲毛片在线观看| 91精品久久久久久久久中文字幕| 欧美限制级电影在线观看| 黑人巨大精品欧美一区二区一视频| 欧美理论电影网| 亚洲国产私拍精品国模在线观看| 日韩成人在线观看| 欧美成人久久久| 午夜精品一区二区三区在线播放| 国模精品一区二区三区色天香| 1769国产精品| 91沈先生在线观看| 国产精品久久久久久久久| 亚洲va国产va天堂va久久| 日韩美女视频免费看| 精品国产老师黑色丝袜高跟鞋| 51精品在线观看| 精品偷拍各种wc美女嘘嘘| 97视频在线看| 亚洲天堂第一页| 欧美成人精品一区二区| 亚洲区在线播放| 欧美猛交ⅹxxx乱大交视频| 不卡av日日日| 热99精品只有里视频精品| 97视频在线观看视频免费视频| 在线视频欧美日韩精品| 欧美成人黑人xx视频免费观看| 美女福利精品视频| 欧美日韩国产中文精品字幕自在自线| 日韩av电影手机在线观看| 亚洲第一区在线观看| 欧美乱大交做爰xxxⅹ性3| 国产一区二区三区高清在线观看| 久久久之久亚州精品露出| 97久久精品在线| www.久久撸.com| 亚洲黄色有码视频| 日韩成人网免费视频| 欧美一级黑人aaaaaaa做受| 中文字幕精品—区二区| 日韩有码在线播放| 国产日韩精品电影| 国产精品九九九| 91精品视频免费看| 色久欧美在线视频观看| 日本精品久久电影| 日本成熟性欧美| 91精品国产99久久久久久| 国产精品热视频| 国产精品免费视频xxxx| 性色av一区二区三区免费| 日韩精品在线观看一区| 久久人人爽人人爽爽久久| www高清在线视频日韩欧美| 国产精品久久av| 91国内揄拍国内精品对白| 国产精品视频地址| 亚洲电影免费观看高清完整版在线观看| 亚洲黄色av网站| 亚洲欧美日韩高清| 欧美激情a∨在线视频播放| 国产一区欧美二区三区| 欧美视频第一页| www日韩欧美| 中文字幕日本精品| 日韩在线高清视频| 91精品久久久久久久久久久久久久| 在线观看日韩www视频免费| 日韩av手机在线看| 久久综合网hezyo| 国产精品亚洲片夜色在线| 亚洲国产精品va在线| 亚洲美女在线视频| 精品高清一区二区三区| 黄色一区二区在线观看| 国产精品免费一区二区三区都可以| 国产免费一区视频观看免费| 久久久久久亚洲| 欧美精品久久久久久久免费观看| 欧美区在线播放| 国产精品视频网址| 九九视频直播综合网| 欧美最顶级的aⅴ艳星| 1769国内精品视频在线播放| 亚洲www视频| 午夜精品福利电影| 91国产美女在线观看| 成人精品一区二区三区| 国产精品视频精品视频| 久久6精品影院| 日韩亚洲欧美中文在线| 亚洲三级黄色在线观看| 欧美电影免费观看网站| 色狠狠av一区二区三区香蕉蜜桃| 国产精品久久国产精品99gif| 92看片淫黄大片看国产片| 91成人精品网站| 91精品久久久久久久久| 日本伊人精品一区二区三区介绍| 亚洲色图激情小说| 亚洲人成网站在线播| 久久99久久99精品中文字幕| 日产精品久久久一区二区福利| 一本一本久久a久久精品牛牛影视| 亚洲人成电影网| 久久久久久久一区二区三区| 国产精品精品视频一区二区三区| 亚洲系列中文字幕| 91爱爱小视频k| 精品视频一区在线视频| 北条麻妃99精品青青久久| 成人国产精品久久久久久亚洲| 日本aⅴ大伊香蕉精品视频| 美日韩精品免费观看视频| 欧美精品亚州精品| 日韩精品一二三四区| 91精品国产九九九久久久亚洲| 亚洲国产精品va在线看黑人动漫| 亚洲日本欧美日韩高观看| 国语自产精品视频在线看| 国产国语videosex另类| 日韩av免费网站| 欧美精品在线播放| 亚洲欧美国产va在线影院| 久久精品久久久久久国产 免费| 国产精品成人观看视频国产奇米| 精品国产区一区二区三区在线观看| 亚洲欧美综合另类中字| 青青草原一区二区| 日韩美女视频在线观看| 久久亚洲成人精品| 亚洲伊人成综合成人网| 北条麻妃一区二区三区中文字幕| 亚洲一区二区免费在线| 欧美一级淫片videoshd| 国产精品女主播视频| 久久久久久高潮国产精品视| 日韩在线视频观看| 深夜福利91大全| 日韩成人激情视频| 日本高清不卡的在线| 精品久久久视频| 91福利视频网| 亚洲国产精品一区二区三区| 亚洲人成在线观| 欧美精品九九久久| 中文字幕精品一区二区精品| 欧美午夜影院在线视频| 国产精品久久久久久久久免费| 国产精品一区二区三区成人| 欧美高清在线播放| 欧美性猛交xxxx乱大交极品| 97免费中文视频在线观看| 2019最新中文字幕| 久久视频在线播放| www.欧美三级电影.com| 亚洲精品98久久久久久中文字幕| 久久精品99无色码中文字幕| 性欧美长视频免费观看不卡| 国产亚洲精品美女久久久久| 欧美性猛交xxxx乱大交|