成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

docker網(wǎng)絡(luò)學(xué)習(xí)-weave

Wuv1Up / 1748人閱讀

摘要:查看一下當(dāng)前容器的網(wǎng)絡(luò)配置有兩個網(wǎng)絡(luò)接口和,其中連接的是默認(rèn)網(wǎng)絡(luò),即與時一對。網(wǎng)絡(luò)詳細(xì)講解可看鏈接網(wǎng)絡(luò)包含兩個虛擬交換機和,和將二者連接在一起。和分工不同,負(fù)責(zé)將容器接入網(wǎng)絡(luò),負(fù)責(zé)在主機間隧道中并收發(fā)數(shù)據(jù)。

主要參考每天5分鐘玩轉(zhuǎn)docker容器技術(shù)博客。
記錄下自己的實驗過程。
如果想學(xué)習(xí),請直接參考該博客http://www.cnblogs.com/CloudMan6/
概述

Weave創(chuàng)建的虛擬網(wǎng)絡(luò)將部署在多個主機上的容器連接起來。

對容器而言,weave就像一個巨大的以太網(wǎng)交換機,所有容器都被接入這個交換機,容器可以直接通信,無需nat和端口映射。

weave的dns模塊使容器可以通過hostname訪問

weave不依賴分布是數(shù)據(jù)庫交換網(wǎng)絡(luò)信息,每個主機上只需運行weave組件就能建立起跨主機的容器網(wǎng)絡(luò)。

搭建實驗環(huán)境 安裝部署weave

在實驗機器上執(zhí)行如下命令

curl -L git.io/weave -o /usr/local/bin/weave
chmod a+x /usr/local/bin/weave
在host1中啟動weave

host1中執(zhí)行weave launch,啟動weave相關(guān)服務(wù)。

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會創(chuàng)建一個新的docker網(wǎng)絡(luò)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

該網(wǎng)絡(luò)的詳情

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

首先執(zhí)行 eval $(weave env) 很重要,其作用是將后續(xù)的 docker 命令發(fā)給 weave proxy 處理。如果要恢復(fù)之前的環(huán)境,可執(zhí)行 eval $(weave env --restore)。

查看一下當(dāng)前容器bbox1的網(wǎng)絡(luò)配置

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有兩個網(wǎng)絡(luò)接口eth0和ethwe,其中eth0連接的是默認(rèn)bridge網(wǎng)絡(luò),即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

網(wǎng)絡(luò)詳細(xì)講解可看鏈接

weave 網(wǎng)絡(luò)包含兩個虛擬交換機:Linux bridge weave 和 Open vSwitch datapath,veth pair vethwe-bridge 和 vethwe-datapath 將二者連接在一起。weave 和 datapath 分工不同,weave 負(fù)責(zé)將容器接入 weave 網(wǎng)絡(luò),datapath 負(fù)責(zé)在主機間 VxLAN 隧道中并收發(fā)數(shù)據(jù)。

跨主機容器連接

在host2上執(zhí)行如下命令:

weave launch host1_ip

*必須指定host1的ip,這樣host1和host2才能加入到同一個weave網(wǎng)絡(luò)

root@host2:~# eval $(weave env)
root@host2:~# docker run --name bbox3 -itd busybox
weave網(wǎng)絡(luò)連通性

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

鏈接

如果要實現(xiàn)網(wǎng)絡(luò)隔離,可以通過環(huán)境變量 WEAVE_CIDR 為容器分配不同 subnet 的 IP

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/27300.html

相關(guān)文章

  • Docker容器利用weave實現(xiàn)跨主機互聯(lián)

    摘要:找到規(guī)則的編號將它刪除打開本地和對的端口會自動進行檢測,把它關(guān)掉啟動啟動并連接主機,注意主機不要去連接主機等待下載剩下的支持容器啟動容器,使用網(wǎng)橋給容器分配溝通地址容器測試容器跨主機通信成功 Docker容器利用weave實現(xiàn)跨主機互聯(lián) 環(huán)境:showImg(https://segmentfault.com/img/bV7WcZ?w=429&h=179); 實現(xiàn)目的:實現(xiàn)主機A中容器1...

    yimo 評論0 收藏0
  • Docker容器管理

    摘要:容器管理網(wǎng)絡(luò)連接單機網(wǎng)絡(luò)配置虛擬網(wǎng)橋的特點可以設(shè)置地址相當(dāng)于擁有一個隱藏的虛擬網(wǎng)卡的地址自動劃分分配地址分配地址子網(wǎng)掩碼每一個主機都對應(yīng)一個容器網(wǎng)卡自定義地址自定義虛擬網(wǎng)橋添加虛擬網(wǎng)橋更改守護進程的啟動配置容器互聯(lián)默認(rèn)允許所有容器間互聯(lián) Docker容器管理 Docker網(wǎng)絡(luò)連接 單機Docker網(wǎng)絡(luò)配置 linux虛擬網(wǎng)橋的特點: 可以設(shè)置IP地址 相當(dāng)于擁有一個隱藏的虛擬網(wǎng)卡...

    hiyayiji 評論0 收藏0
  • Kubernetes CNI網(wǎng)絡(luò)最強對比:Flannel、Calico、Canal和Weave

    摘要:第層網(wǎng)絡(luò)的一個值得注意的示例是以太網(wǎng),其中表示為子層。與其他方案相比,相對容易安裝和配置。與不同,不使用網(wǎng)絡(luò)。網(wǎng)絡(luò)策略是其最受追捧的功能之一。 本文將在介紹技術(shù)原理和相應(yīng)術(shù)語的基礎(chǔ)上,再集中探索與詳細(xì)對比目前最流行的CNI插件:Flannel、Calico、Weave和Canal,對比介紹它們的原理、使用方法、適用場景和優(yōu)缺點等。 showImg(https://segmentfaul...

    scq000 評論0 收藏0
  • Kubernetes CNI網(wǎng)絡(luò)最強對比:Flannel、Calico、Canal和Weave

    摘要:第層網(wǎng)絡(luò)的一個值得注意的示例是以太網(wǎng),其中表示為子層。與其他方案相比,相對容易安裝和配置。與不同,不使用網(wǎng)絡(luò)。網(wǎng)絡(luò)策略是其最受追捧的功能之一。 本文將在介紹技術(shù)原理和相應(yīng)術(shù)語的基礎(chǔ)上,再集中探索與詳細(xì)對比目前最流行的CNI插件:Flannel、Calico、Weave和Canal,對比介紹它們的原理、使用方法、適用場景和優(yōu)缺點等。 showImg(https://segmentfaul...

    Noodles 評論0 收藏0

發(fā)表評論

0條評論

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