中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker之Weave怎么實現跨主機容器互聯

發布時間:2022-05-20 15:30:20 來源:億速云 閱讀:242 作者:iii 欄目:大數據

這篇文章主要介紹“Docker之Weave怎么實現跨主機容器互聯”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Docker之Weave怎么實現跨主機容器互聯”文章能幫助大家解決問題。

簡介

weave是由zett.io公司開發的,它能夠創建一個虛擬網絡,用于連接部署在多臺主機上的docker容器,這樣容器就像被接入了同一個網絡交換機,那些使用網絡的應用程序不必去配置端口映射和鏈接等信息。外部設備能夠訪問weave網絡上的應用程序容器所提供的服務,同時已有的內部系統也能夠暴露到應用程序容器上。weave能夠穿透防火墻并運行在部分連接的網絡上,另外,weave的通信支持加密,所以用戶可以從一個不受信任的網絡連接到主機。

weave其他特性

  1. 應用隔離:不同子網容器之間默認隔離的,即便它們位于同一臺物理機上也相互不通;不同物理機之間的容器默認也是隔離的

  2. 物理機之間容器互通:weave connect $other_host

  3. 動態添加網絡:對于不是通過weave啟動的容器,可以通過weave attach 10.0.1.1/24 $id來添加網絡(detach刪除網絡)

  4. 安全性:可以通過weave launch -password weave設置一個密碼用于weave peers之間加密通信

  5. 與宿主機網絡通信:weave expose 10.0.1.102/24,這個ip會配在weave網橋上

  6. 查看weave路由狀態:weave ps

  7. 通過nat實現外網訪問docker容器

Docker之Weave怎么實現跨主機容器互聯

Docker之Weave怎么實現跨主機容器互聯

安裝與啟動

直接從github下載二進制文件安裝。

# sudo wget -o /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave
# sudo chmod a+x /usr/local/bin/weave

啟動weave路由器,這個路由器其實也是以容器的形式運行的。

# weave launch
unable to find image 'zettio/weave' locally
......

此時會發現有兩個網橋,一個是docker默認生成的,另一個是weave生成的。

Docker之Weave怎么實現跨主機容器互聯

Docker之Weave怎么實現跨主機容器互聯 

接下來就可以運行應用容器,使用weave提供的網絡功能了。

簡單使用

準備

1. host1: 10.0.2.6
2. host2: 10.0.2.8
3. host1上的應用容器1: 192.168.0.2/24 host1上的應用容器2: 192.168.1.2/24
4. host2上的應用容器1: 192.168.0.3/24
兩臺機上均安裝docker及weave,并均啟動好weave路由容器。

在兩臺機上均啟動一個應用容器。可以直接使用weave run命令,也可以先使用docker run啟動好容器,然后使用weave attach命令給容器綁定ip地址。

# weave run 192.168.0.2/24 -itd ubuntu bash

或者

# docker run -itd ubuntu bash
# weave attach 192.168.0.2/24 $id

此時發現兩個容器之間是不通的,需要使用weave connect命令在兩臺weave的路由器之間建立連接。

# weave connect 10.0.2.8

會發現,此時位于兩臺不同主機上的容器之間可以相互ping通了。但是處于不同子網的兩個容器是不能互聯的,這樣我們就可以使用不同子網進行容器間的網絡隔離了。

我們會發現,如果不使用docker的原生網絡,在容器內部是不能訪問宿主機以及外部網絡的。此時我們可以使用weave expose 192.168.0.1/24來給weave網橋添加ip,以實現容器與宿主機網絡連通。但是,此時在容器內部依然不能訪問外部網絡。

我們可以同時使用docker的原生網絡和weave網絡來實現容器互聯及容器訪問外網和端口映射。使用外部網絡及端口映射的時候就使用docker0網橋,需要容器互聯的時候就使用weave網橋。每個容器分配兩個網卡。

其他特性應用隔離:不同子網容器之間默認隔離的,即便它們位于同一臺物理機上也相互不通(使用-icc=false關閉容器互通);不同物理機之間的容器默認也是隔離的安全性:可以通過weave launch -password weave設置一個密碼用于weave peers之間加密通信查看weave路由狀態:weave ps問題容器重啟問題

如果使用weave,則就不能再使用docker自帶的auto-restart feature(如docker run –restart=always redis),因為weave是在docker之外為容器配置的網絡,容器重啟的時候docker本身不會做這些事情。因而,還需額外的工具來管理容器的狀態(比如systemd, upstart等),這些工具要調用weave命令(weave run/start/attach)來啟動容器。

關于“Docker之Weave怎么實現跨主機容器互聯”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彩票| 扎兰屯市| 云霄县| 松原市| 阿拉善盟| 东乡| 普宁市| 淮南市| 轮台县| 辰溪县| 繁峙县| 沁源县| 漳平市| 汽车| 汕尾市| 福建省| 和硕县| 繁峙县| 陈巴尔虎旗| 昌乐县| 保定市| 牙克石市| 芜湖市| 开化县| 阜南县| 安乡县| 临朐县| 儋州市| 诸城市| 交城县| 繁峙县| 大渡口区| 孝感市| 富裕县| 富宁县| 湘阴县| 观塘区| 集贤县| 林州市| 西藏| 大关县|