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

資訊專欄INFORMATION COLUMN

docker網絡學習-weave

Wuv1Up / 1740人閱讀

摘要:查看一下當前容器的網絡配置有兩個網絡接口和,其中連接的是默認網絡,即與時一對。網絡詳細講解可看鏈接網絡包含兩個虛擬交換機和,和將二者連接在一起。和分工不同,負責將容器接入網絡,負責在主機間隧道中并收發數據。

主要參考每天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 busybox
weave網絡連通性

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實現跨主機互聯

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

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

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

    hiyayiji 評論0 收藏0
  • Kubernetes CNI網絡最強對比:Flannel、Calico、Canal和Weave

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

    scq000 評論0 收藏0
  • Kubernetes CNI網絡最強對比:Flannel、Calico、Canal和Weave

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

    Noodles 評論0 收藏0

發表評論

0條評論

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