【實戰】docker網絡之pipework

jopen 9年前發布 | 25K 次閱讀 Docker

pipework是一個能夠幫助我們在復雜的系統中,建立容器間的網絡互聯的工具。本帖采用一個實例說明如何使用pipenetwork將不同host上的兩個容器互聯起來。

環境

[root@kuber-minion ~]# uname -a
Linux kuber-minion 3.10.0-123.13.2.el7.x86_64 #1 SMP Thu Dec 18 14:09:13 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[root@kuber-minion ~]# docker -v
Docker version 1.3.2, build 39fa2fa/1.3.2

安裝pipework

[root@kuber-minion ~]# git clone https://github.com/jpetazzo/pipework   
[root@kuber-minion ~]# cd pipework/
[root@kuber-minion pipework]# ls
LICENSE  pipework  README.md
[root@kuber-minion pipework]# cp pipework  /usr/bin

測試步驟

host1

docker push centos  
docker run -i -t --net=none --name centos centos:7 /bin/bash
pipework br0  centos 172.28.1.2/24@172.28.1.1 
brctl  addif br0  eth0
ip addr add 172.28.1.1/24 dev br0

host2

docker push centos  
docker run -i -t --net=none --name centos centos:7 /bin/bash
pipework br0  centos 172.28.1.4/24@172.28.1.3
brctl  addif br0  eth0
ip addr add 172.28.1.3/24 dev br0

網絡示意圖

【實戰】docker網絡之pipework

圖中vthA和vethB是一對”peer” interface均由pipework創建,添加到br0也有pipework完成。本帖只是給出基于bridge的一個實例,后續會繼續分析pipework的原理及其支持的ovs和host網絡模式。

原文鏈接: http://openstack.wiaapp.com/?p=1154

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!