摘要:查看一下當前容器的網絡配置有兩個網絡接口和,其中連接的是默認網絡,即與時一對。網絡詳細講解可看鏈接網絡包含兩個虛擬交換機和,和將二者連接在一起。和分工不同,負責將容器接入網絡,負責在主機間隧道中并收發數據。
主要參考每天5分鐘玩轉docker容器技術博客。 記錄下自己的實驗過程。 如果想學習,請直接參考該博客http://www.cnblogs.com/CloudMan6/概述
Weave創建的虛擬網絡將部署在多個主機上的容器連接起來。
對容器而言,weave就像一個巨大的以太網交換機,所有容器都被接入這個交換機,容器可以直接通信,無需nat和端口映射。
weave的dns模塊使容器可以通過hostname訪問
weave不依賴分布是數據庫交換網絡信息,每個主機上只需運行weave組件就能建立起跨主機的容器網絡。
搭建實驗環境 安裝部署weave在實驗機器上執行如下命令
curl -L git.io/weave -o /usr/local/bin/weave chmod a+x /usr/local/bin/weave在host1中啟動weave
host1中執行weave launch,啟動weave相關服務。
weave的所有組件以容器運行
root@host1:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e6c28480e461 weaveworks/weave:2.3.0 "/home/weave/weaver ?? 4 seconds ago Up 4 seconds weave
weave會創建一個新的docker網絡weave
root@host1:~# docker network ls NETWORK ID NAME DRIVER SCOPE 810c1c359ba2 bridge bridge local 1085e045479e host host local 8a7c9f8a4f9f none null local 5cdb070956f9 weave weavemesh local
該網絡的詳情
root@host1:~# docker network inspect 5cdb070956f9|more [ { "Name": "weave", "Id": "5cdb070956f9ce7ef2cdc29fc62cfe55c4128de3283b385de63074276956ff33", "Created": "2018-05-22T22:21:54.904364416+08:00", "Scope": "local", "Driver": "weavemesh", "EnableIPv6": false, "IPAM": { "Driver": "weavemesh", "Options": null, "Config": [ { "Subnet": "10.32.0.0/12" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": {}, "Options": { "works.weave.multicast": "true" }, "Labels": {} } ]
在host1中運行容器bbox1
root@host1:~# eval $(weave env) root@host1:~# docker run --name bbox1 -itd busybox
首先執行 eval $(weave env) 很重要,其作用是將后續的 docker 命令發給 weave proxy 處理。如果要恢復之前的環境,可執行 eval $(weave env --restore)。
查看一下當前容器bbox1的網絡配置
root@host1:~# docker exec -it bbox1 ip a 1: lo:mtu 65536 qdisc noqueue qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 12: eth0@if13: mtu 1500 qdisc noqueue link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft forever 14: ethwe@if15: mtu 1376 qdisc noqueue link/ether 16:8c:eb:85:98:2c brd ff:ff:ff:ff:ff:ff inet 10.32.0.1/12 brd 10.47.255.255 scope global ethwe valid_lft forever preferred_lft forever
bbox1有兩個網絡接口eth0和ethwe,其中eth0連接的是默認bridge網絡,即docker0.
vethwe與vethwepl2516時一對veth pair。
root@host1:~# brctl show bridge name bridge id STP enabled interfaces docker0 8000.0242d3efdb74 no veth7fb85fa weave 8000.cebc0b34efc6 no vethwe-bridge vethwepl2516
網絡詳細講解可看鏈接
weave 網絡包含兩個虛擬交換機:Linux bridge weave 和 Open vSwitch datapath,veth pair vethwe-bridge 和 vethwe-datapath 將二者連接在一起。weave 和 datapath 分工不同,weave 負責將容器接入 weave 網絡,datapath 負責在主機間 VxLAN 隧道中并收發數據。
跨主機容器連接在host2上執行如下命令:
weave launch host1_ip
*必須指定host1的ip,這樣host1和host2才能加入到同一個weave網絡
root@host2:~# eval $(weave env) root@host2:~# docker run --name bbox3 -itd busyboxweave網絡連通性
bbox3 可以ping通bbox1
root@host2:~# docker exec bbox3 ping bbox1 PING bbox1 (10.32.0.1): 56 data bytes 64 bytes from 10.32.0.1: seq=0 ttl=64 time=1.867 ms 64 bytes from 10.32.0.1: seq=1 ttl=64 time=1.345 ms
鏈接
如果要實現網絡隔離,可以通過環境變量 WEAVE_CIDR 為容器分配不同 subnet 的 IP
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27300.html
摘要:找到規則的編號將它刪除打開本地和對的端口會自動進行檢測,把它關掉啟動啟動并連接主機,注意主機不要去連接主機等待下載剩下的支持容器啟動容器,使用網橋給容器分配溝通地址容器測試容器跨主機通信成功 Docker容器利用weave實現跨主機互聯 環境:showImg(https://segmentfault.com/img/bV7WcZ?w=429&h=179); 實現目的:實現主機A中容器1...
摘要:容器管理網絡連接單機網絡配置虛擬網橋的特點可以設置地址相當于擁有一個隱藏的虛擬網卡的地址自動劃分分配地址分配地址子網掩碼每一個主機都對應一個容器網卡自定義地址自定義虛擬網橋添加虛擬網橋更改守護進程的啟動配置容器互聯默認允許所有容器間互聯 Docker容器管理 Docker網絡連接 單機Docker網絡配置 linux虛擬網橋的特點: 可以設置IP地址 相當于擁有一個隱藏的虛擬網卡...
摘要:第層網絡的一個值得注意的示例是以太網,其中表示為子層。與其他方案相比,相對容易安裝和配置。與不同,不使用網絡。網絡策略是其最受追捧的功能之一。 本文將在介紹技術原理和相應術語的基礎上,再集中探索與詳細對比目前最流行的CNI插件:Flannel、Calico、Weave和Canal,對比介紹它們的原理、使用方法、適用場景和優缺點等。 showImg(https://segmentfaul...
摘要:第層網絡的一個值得注意的示例是以太網,其中表示為子層。與其他方案相比,相對容易安裝和配置。與不同,不使用網絡。網絡策略是其最受追捧的功能之一。 本文將在介紹技術原理和相應術語的基礎上,再集中探索與詳細對比目前最流行的CNI插件:Flannel、Calico、Weave和Canal,對比介紹它們的原理、使用方法、適用場景和優缺點等。 showImg(https://segmentfaul...
閱讀 3024·2021-09-22 15:52
閱讀 2903·2019-08-30 15:55
閱讀 2700·2019-08-30 15:53
閱讀 2454·2019-08-30 13:21
閱讀 1621·2019-08-30 13:10
閱讀 2481·2019-08-26 12:09
閱讀 2564·2019-08-26 10:33
閱讀 1802·2019-08-23 18:06