国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

docker 1.12 的服務自動發現

ygyooo / 2349人閱讀

摘要:介紹的集群的自動發現有兩種方式與本文使用的是的方式準備安裝以上版本初始化集群創建一個名為的網絡開放端口初始化集群部份可看我之前的博客使用搭建多主機集群創建網絡查看當前的網絡也是一個網絡可以跨主機通信本教程會創建一個新的創建網絡

介紹

docker 1.12 的swarm 集群的自動發現有兩種方式, virtual IP address (VIP) 與 DNS round-robin, 本文使用的是VIP的方式

準備

安裝docker 1.12 以上版本

初始化swarm集群

創建一個名為docker-net 的overlay網絡

開放7946 TCP/UDP , 4789 UDP 端口

初始化swarm集群部份可看我之前的博客使用docker 1.12 搭建多主機docker swarm集群

創建overlay網絡

查看當前的網絡

[root@swarm-manager ~]# docker network ls 
NETWORK ID          NAME                DRIVER              SCOPE
376f5b337bfc        bridge              bridge              local                                    
166bd71f7d0e        host                host                local               
9gr6bfff1rv9        ingress             overlay             swarm               

ingress 也是一個overlay網絡, 可以跨主機通信, 本教程會創建一個新的

創建網絡

docker network create 
  --driver overlay 
  --opt encrypted  ## 是否使用加密
  my-network

查看

[root@swarm-manager ~]# docker network ls 
NETWORK ID          NAME                DRIVER              SCOPE
376f5b337bfc        bridge              bridge              local                                    
166bd71f7d0e        host                host                local               
9gr6bfff1rv9        ingress             overlay             swarm       
aoqs3p835s5g        docker-net          overlay             swarm        
在swarm上用overlay 網絡創建一個服務
docker service create 
  --replicas 3 
  --name my-web  # 服務名為my-web 
  --network docker-net 
  daocloud.io/nginx:alpine # 使用國內的鏡像, alpine版的體積很小,下載會快點

查看服務

# 本次只起了一個manager節點, 所以容器都跑在這臺機器上了
[root@swarm-manager ~]# docker service ps my-web
ID                         NAME          IMAGE                     NODE           DESIRED STATE  CURRENT STATE            ERROR
bavjn0xhxi35nx6n9kn33yfga  my-web.1      daocloud.io/nginx:alpine  swarm-manager  Running        Running 31 minutes ago   
cibuo8zqp78z1xb8cu3v4pkmj  my-web.2      daocloud.io/nginx:alpine  swarm-manager  Running        Running 31 minutes ago   
0pkg1eoa0onku71cbp1hqtcv5  my-web.3      daocloud.io/nginx:alpine  swarm-manager  Running        Running 31 minutes ago   

在一個網絡上有哪些容器可以在network inspect的Containers節點看到

[root@swarm-manager ~]# docker network inspect docker-net
[
    {
        "Name": "docker-net",
        "Id": "aoqs3p835s5glx69hi46ou2dw",
        ....
        "Containers": {
            "1c87aae81449b448983924017fc4037b7b1e9e1eaa03bc55745b0167ab4e495b": {
                "Name": "my-web.1.bavjn0xhxi35nx6n9kn33yfga",
                "EndpointID": "2ab6c7e698ce69ec318a211dd0386533de1a0d8f2070bd4ee6cdc43cb94dcd0a",
                "MacAddress": "02:42:0a:00:09:03",
                "IPv4Address": "10.0.9.3/24",
                "IPv6Address": ""
            },
            .....
        },
        .....
    }
]

查看服務使用的vip

[root@swarm-manager ~]#  docker service inspect --format="{{.Endpoint.VirtualIPs}}"   my-web
[{aoqs3p835s5glx69hi46ou2dw 10.0.9.2/24}]
演示使用服務名訪問nginx

先創建一個同樣使用docker-net的overlay網絡 的服務

docker service create 
  --name my-busybox 
  --network docker-net 
  busybox 
  sleep 3000

等待服務啟動后, 用docker exec 連接進busybox的容器里

[root@swarm-manager ~]# docker service ps my-busybox
ID                         NAME              IMAGE    NODE           DESIRED STATE  CURRENT STATE                ERROR
7ftv4wj1g3vu8g7mfghx8du65  my-busybox.1      busybox  swarm-manager  Running        Running about a minute ago   
[root@swarm-manager ~]# docker exec -ti my-busybox.1.7ftv4wj1g3vu8g7mfghx8du65 sh

在busybox容器. 向DNS查詢nginx服務的vip

[root@swarm-manager ~]# docker exec -ti my-busybox.1.7ftv4wj1g3vu8g7mfghx8du65 sh 
/ # nslookup my-web
Server:    127.0.0.11
Address 1: 127.0.0.11

Name:      my-web
Address 1: 10.0.9.2 10.0.9.2 # 和在外面看到的一樣

在busybox容器. 向DNS查詢nginx服務所有容器的ip地址

/ # nslookup tasks.my-web
Server:    127.0.0.11
Address 1: 127.0.0.11

Name:      tasks.my-web
Address 1: 10.0.9.5 my-web.3.0pkg1eoa0onku71cbp1hqtcv5.docker-net
Address 2: 10.0.9.4 my-web.2.cibuo8zqp78z1xb8cu3v4pkmj.docker-net
Address 3: 10.0.9.3 my-web.1.bavjn0xhxi35nx6n9kn33yfga.docker-net

在busybox容器, 通過服務名訪問nginx

/ # wget -O- my-web
Connecting to my-web (10.0.9.2:80)



Welcome to nginx!



Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

.....
結語

通過實驗可以看出, 在swarm集群中使用overlay網絡時, 不同服務之間可以使用服務名(docker service name)互相訪問

我的博客: docker 1.12 的服務自動發現

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26704.html

相關文章

  • 基于 Docker 1.12 Swarm 集群管理開發實踐

    摘要:由于沒有了中心化的負載均衡器,集群不會因某臺機器異常而導致整個服務對外不可用,很好的避免了單點問題,同時也帶了可擴展性。 Mesos/Marathon 折騰久了,我們一直希望有機會深入到 Swarm 內部一探究竟。 另外, Mesos 這一套東西雖然是久經企業級考驗的, 但是安裝、部署和使用相對復雜,上手有門檻。同時,在今年的 DockerCon 上,內置了Swarm 功能的 Dock...

    My_Oh_My 評論0 收藏0
  • Docker 1.12哪些特性使它更像 kubernetes?

    摘要:本文涵蓋了中的六大新特性內置命令服務發現自愈功能安全負載均衡滾動升級,相關的使用文檔和視頻鏈接也都包含在里面。同時,內部負載均衡要求一個可用的容器。現在開箱即用的負載均衡,上公開暴露的端口在所有節點都是可以訪問的。 Docker 1.12版本最近剛剛發布,這篇文章對它的新特性進行了概述和對比描述。本文涵蓋了 Docker 1.12 中的六大新特性:內置 swarm命令、服務發現、自愈功...

    chaos_G 評論0 收藏0
  • 數人云CTO解讀Docker 1.12和金融業容器化

    摘要:月日數人云在上海舉辦金融沙龍,邀請上交所和近二十家來自銀行保險證券的技術專家一同探討容器技術在金融業中的最佳實踐。數人云肖德時在會上將傳統金融行業通過容器可以解決的四大問題做了逐一解讀。如何動態的分配,就是剛才上交所介紹的一些治理的方法。 7月29日數人云在上海舉辦金融沙龍,邀請上交所和近二十家來自銀行、保險、證券的IT技術專家一同探討容器技術在金融業中的最佳實踐。數人云CTO肖德時在...

    Gemini 評論0 收藏0
  • Docker 1.12實踐:Docker Service、Stack與分布式應用捆綁包

    摘要:與分布式應用捆綁包分布式應用捆綁包,或者簡稱,是一種多服務可分發鏡像格式。而當中新推出的分布式應用捆綁包,或者簡稱,則屬于一種新的概念,其專門面向多套容器的遷移需求。利用創建一個分布式應用捆綁包添加了一條新的命令。 在本文中數人云將帶大家了解如何利用Docker Compose創建一套分布式應用捆綁包,并將其作為Docker Stack在Docker Swarm Mode中進行部署。 ...

    TigerChain 評論0 收藏0
  • 代碼級干貨 | 進階Docker 1.12,全新分布式應用捆綁包

    摘要:利用分布式應用捆綁包簡稱部署服務相較于利用大量參數創建網絡及服務,這里我們選擇使用一個文件。 在Docker 1.12版本中,全新的Swarm捆綁包相較于原有編排及調度機制做出了巨大改進。它不再需要運行一組獨立的Swarm容器,這部分容器已經被直接捆綁在Docker Engine當中,故障轉移策略更為可靠,服務發現機制實現內置,新的網絡功能極為順暢……看起來很棒是不是? 數人云這...

    2i18ns 評論0 收藏0

發表評論

0條評論

ygyooo

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<