<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] > [教程](https://www.cnblogs.com/stulzq/p/9064828.html)> ## 概述 1. 首先創建 swarm-manager 與 swarm-work* 2. 把所有的work 節點加入到 manager 3. 接下來所有的操作(擴容,升級等)都只需要在 manager 完成 ### 需要先安裝 docker-machine 1. 下載 docker-machine`https://github.com/docker/machine/releases/` 1. 下載boot2docker.iso# 從這個地址下載: `https://github.com/boot2docker/boot2docker/releases` 放到`C:\Users\<用戶名>\.docker\machine\cache\` 2. 下載 VMware Workstation 驅動 下載 `https://github.com/pecigonzalo/docker-machine-vmwareworkstation/releases/`復制到`C:\Program Files\Docker\Docker\resources\bin` ## 創建集群 ``` // 創建主節點 docker-machine create -d=vmwareworkstation swarm-manager // 連接 docker-machine ssh swarm-manager docker swarm init --advertise-addr 192.168.99.107 #這里的 IP 為創建機器時分配的 ip。 //創建后復制里面的 docker swarm join --token SWMTKN-1-6bw1nt... // 如 docker swarm join --token SWMTKN-1-6bw1nt1vdbwbvbej68ugbj0cmimv9ewnxhh59hfe250ga3y4cw-// 04iabu1strejy904reishm67m 92.168.113.129:2377 // 創建 work1節點 docker-machine create -d=vmwareworkstation swarm-work1 docker-machine ssh swarm-work1 // 執行 join docker swarm join --token SWMTKN-1-6bw1nt1vdbwbvbej68ugbj0cmimv9ewnxhh59hfe250ga3y4cw-// 04iabu1strejy904reishm67m 92.168.113.129:2377 // 創建 work2 節點 docker-machine create -d=vmwareworkstation swarm-work2 docker-machine ssh swarm-work1 // 執行 join docker swarm join --token SWMTKN-1-6bw1nt1vdbwbvbej68ugbj0cmimv9ewnxhh59hfe250ga3y4cw-// 04iabu1strejy904reishm67m 92.168.113.129:2377 // 驗證節點是否添加成功,并且node 數量是否是3 docker-machine ssh swarm-manager docker info ... Swarm: active NodeID: vxis2ju3g1zdw3jadj3zo5ogn Is Manager: true ClusterID: thks6vzuhj0dc42pfebf17tai Managers: 1 Nodes: 3 ... ``` ## 部署服務到集群中 ``` docker-machine ssh swarm-manager docker service create --replicas 1 --name helloworld alpine ping docker.com // 查看部署信息 docker service inspect --pretty helloworld ID: hls28u2zjeytx2wed8thvi2g6 Name: helloworld Service Mode: Replicated Replicas: 1 ... // 擴展集群服務.容器數量可大于節點數量,會在一個節點中創多個相同的容器 docker service scale helloworld=2 // 查看可以看到兩個服務在運行 docker service ps helloworld ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS lyd8e0fdxexy helloworld.1 alpine:latest swarm-manager Running Running 5 minutes ago gm8s96xi1k11 helloworld.2 alpine:latest swarm-work1 Running Running about a minute ago // 刪除集群 docker service rm helloworld ``` ## 滾動升級服務 模擬 redis 的服務升級 ``` docker-machine ssh swarm-manager docker service create --replicas 1 --name redis --update-delay 10s redis:3.0.6 //查看 docker service ps redis ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS g77wc7mvg1mt redis.1 redis:3.0.6 swarm-work1 Running Running 4 minutes ago /滾動升級redis docker service update --image redis:3.0.7 redis ``` ## 停止某個節點接收新的任務 主要用來排除把 master 節點運行業務容器 ``` > docker node ls ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION vxis2ju3g1zdw3jadj3zo5ogn * swarm-manager Ready Active Leader 19.03.12 soifxxowwqscqzpktdi7o5yz7 swarm-work1 Ready Active Reachable 19.03.12 kmab2t8a3rzuclj2r9v8hydy1 swarm-work2 Ready Active 19.03.12 // 可以看到當前節點都是 Active 狀態 // 排除管理節點 > docker node update --availability drain swarm-manager ``` ### NFS 共享數據卷 ``` yum -y install nfs-utils rpcbind // 啟動服務 sudo service rpcbind start sudo service nfs start // 共享目錄設置權限: > vi /etc/exports /data/k8s *(rw,sync,no_root_squash) //共享目錄設置權限: chmod 755 /data/k8s/ // 重新加載NFS配置 sudo exportfs -rav //查看共享的目錄 sudo exportfs -rav 查看共享目錄列表 showmount -e 192.168.52.141 // 測試掛載目錄 sudo mkdir /mynfs sudo mount -t nfs 192.168.52.141:/nfs /mynfs // 在/mynfs目錄中創建文件,然后在NFS服務端的共享目錄中查看文件是否存在,存在則代表共享成功。 umount /mynfs ``` 創建數據卷 ``` volumes: my-vol: driver_opts: type: "nfs" o: "addr=192.168.52.141,rw" device: ":/volume1/swarm" ``` 創建服務 ``` docker service create \ --mount type=volume,source=<Volume-Name>,destination=<Container-Path> \ --replicas 2 \ <Image> // 如 docker service create --name nfs-service \ --mount 'type=volume,source=nfsvolume,target=/usr/share/nginx/html,volume-driver=local,volume-opt=type=nfs,volume-opt=device=:/web,"volume-opt=o=addr=192.168.2.58,rw,nfsvers=4,async"' \ -d p 8010:80 --replicas 3 nginx:latest ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看