中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

2019-02-26    來源:多智時(shí)代

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬Linux鏡像隨意使用

目前docker主要應(yīng)用于單機(jī)環(huán)境,使用網(wǎng)橋模式,但如果想把多臺(tái)主機(jī)網(wǎng)絡(luò)互相,讓多臺(tái)主機(jī)內(nèi)部的container互相通信,就得使用其他的軟件來幫忙,可以使用Weave、Kubernetes、Flannel、SocketPlane或者openvswitch等,我這里就使用openvswitch來介紹docker多臺(tái)主機(jī)網(wǎng)絡(luò)互通。

先看一個(gè)使用openvswitch連接的架構(gòu)圖,連接的方式是vxlan

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

說明:

這里有2臺(tái)主機(jī),分別是NODEA與NODEB,系統(tǒng)是centos7,內(nèi)核是3.18(默認(rèn)centos7內(nèi)核是3.10,但想使用vxlan,所以得升級(jí),參考http://dl528888.blog.51cto.com/2382721/1609850)

docker是1.3.2版本,存儲(chǔ)引擎是devicemapper。

每臺(tái)主機(jī)里都有2個(gè)網(wǎng)橋ovs1與ovs2,ovs1是管理網(wǎng)絡(luò),連接內(nèi)網(wǎng)網(wǎng)卡em1,ovs2是數(shù)據(jù)網(wǎng)絡(luò),docker測(cè)試機(jī)都連接這個(gè)ovs2,并且container創(chuàng)建的時(shí)候網(wǎng)絡(luò)都是none,使用pipework指定固定ip。

然后2臺(tái)主機(jī)使用vxlan連接網(wǎng)絡(luò)。

重要:

我個(gè)人認(rèn)為使用這個(gè)模式并且指定固定ip,適用于的環(huán)境主要是給研發(fā)或者個(gè)人的測(cè)試模式,如果是集群環(huán)境,沒必要指定固定ip(我這里的集群就沒有使用固定ip,使用動(dòng)態(tài)ip,效果很好,后續(xù)給大家介紹集群)。

下面是部署方法

環(huán)境

一、安裝openvswitch

我的版本是最新的2.3.1

1、安裝基礎(chǔ)環(huán)境

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

2、下載最新的包

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

3、解壓與打包

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

之后會(huì)在~/rpmbuild/RPMS/x86_64/里有2個(gè)文件

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

安裝第一個(gè)就行

4、安裝

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

5、啟動(dòng)

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

6、查看狀態(tài)

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到是正常運(yùn)行狀態(tài)

具體的安裝詳細(xì)步驟可以參考

https://github.com/openvswitch/ovs/blob/master/INSTALL.RHEL.md與http://www.linuxidc.com/Linux/2014-12/110272.htm

二、部署單機(jī)環(huán)境的docker

1、下載pipework

使用這個(gè)軟件進(jìn)行固定ip設(shè)置

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

2、在NODEA(ip是10.10.17.3)里運(yùn)行下面命令

可以把下面內(nèi)容復(fù)制到腳本里運(yùn)行

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

根據(jù)自己的環(huán)境修改上面內(nèi)容

運(yùn)行腳本

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到已經(jīng)啟動(dòng)了2個(gè)容器,分別是test1與test2

下面從本地登陸指定的ip試試

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

登陸后可以看到容器內(nèi)的ip是指定的,并且能ping另外同一個(gè)網(wǎng)段的172.16.0.6,外網(wǎng)也能ping通。

下面進(jìn)行vxlan測(cè)試,需要現(xiàn)在另外一個(gè)物理宿主機(jī)進(jìn)行上面的腳本安裝,然后在進(jìn)行vxlan配置

3、在NODEB(ip是10.10.17.4)里運(yùn)行

腳本內(nèi)容是

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

運(yùn)行這個(gè)腳本

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

登陸分別的固定ip試試

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到結(jié)果跟NODEA(10.10.17.3)里運(yùn)行的一樣,登陸后可以看到容器內(nèi)的ip是指定的,并且能ping另外同一個(gè)網(wǎng)段的172.16.0.9,外網(wǎng)也能ping通

然后在試試能否ping通對(duì)方的em1網(wǎng)卡與對(duì)方ovs2的ip

4、在NODEA里測(cè)試

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

  能ping通自己的em1與10.10.17.4的em1網(wǎng)卡,并且對(duì)方的ovs2的ip也能ping通,但ovs2里的主機(jī)無法ping通

5、在NODEB里測(cè)試

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

結(jié)果也是一樣,能ping通自己的em1與NODEA(10.10.17.3)的em1網(wǎng)卡,并且對(duì)方的ovs2的ip也能ping通,但ovs2里的主機(jī)無法ping通

6、vxlan設(shè)置

在NODEA里運(yùn)行

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

在NODEB里運(yùn)行

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

現(xiàn)在NODEA與NODEB這2臺(tái)物理機(jī)的網(wǎng)絡(luò)都是互通的,容器的網(wǎng)絡(luò)也是互通。

然后在NODEA(10.10.17.3)里ping NODEB(10.10.17.4)的ovs2 ip與容器的ip

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到可以在NODEA(10.10.17.3)里ping通NODEB(10.10.17.4)的ovs2 ip與交換機(jī)下面的容器ip

如果各自設(shè)置vxlan,還是無法連接請(qǐng)看看iptables里是否給ovs1進(jìn)行了input放行

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

在NODEB里測(cè)試

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

  結(jié)果也是一樣,設(shè)置了vxlan就可以2個(gè)宿主機(jī)的所有服務(wù)器進(jìn)行通信。

目前是2個(gè)節(jié)點(diǎn)的vxlan,如果是3個(gè)節(jié)點(diǎn)呢

7、vxlan多節(jié)點(diǎn)應(yīng)用(超過2個(gè)節(jié)點(diǎn))

架構(gòu)圖為

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

新節(jié)點(diǎn)是NODEC(ip是10.10.21.199)

環(huán)境為

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

部署單機(jī)環(huán)境,腳本內(nèi)容是

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

運(yùn)行腳本

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到可以ping通本地的ovs2 的ip與交換機(jī)下面是ip

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

  可以看到能ping通NODEA(10.10.17.3)與NODEB(10.10.17.4)(em1網(wǎng)卡都是走物理交換機(jī)),但他們2個(gè)的ovs2都無法ping通

下面是在NODEC(10.10.21.199)里與10.10.17.3做一個(gè)vxlan

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

然后還需要在NODEA(10.10.17.3)里配置

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

之前在NODEA(10.10.17.3)里與NODE(10.10.17.4)做的vxlan使用vx1,這里NODEA(10.10.17.3)與NODEC(10.10.21.199)就使用vx2端口

然后在NODEA(10.10.17.3)里ping NODEC(10.10.21.199)的ovs2 ip與交換機(jī)下面的ip

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到是通的

在NODEC(10.10.21.199)里ping NODEA(10.10.17.3)的ovs2的ip與交換機(jī)下面的ip

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

也是通的,然后從NODEC(10.10.21.199) ping NODEB(10.10.17.4)的ovs2的ip與其交換機(jī)的ip

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

可以看到是通的,平均延遲0.608,并且可以發(fā)現(xiàn)使用了vxlan,3個(gè)節(jié)點(diǎn),如果想全部互通,只需要2個(gè)線連接就行。

如果使用gre模式,3個(gè)節(jié)點(diǎn)就需要3個(gè)線了,架構(gòu)圖為

Docker高級(jí)應(yīng)用之多臺(tái)主機(jī)網(wǎng)絡(luò)互聯(lián)

目前使用docker結(jié)合openvswitch的vxlan模式就把多臺(tái)主機(jī)的docker連接起來,這樣很多測(cè)試就方便很多,但還是建議把這樣的方式作為測(cè)試環(huán)境。

本文來源:吟—技術(shù)交流 的博客 原文鏈接:http://dl528888.blog.51cto.com/2382721/1611491

在不久的將來,云計(jì)算一定會(huì)徹底走入我們的生活,有興趣入行未來前沿產(chǎn)業(yè)的朋友,可以收藏云計(jì)算,及時(shí)獲取人工智能、大數(shù)據(jù)、云計(jì)算和物聯(lián)網(wǎng)的前沿資訊和基礎(chǔ)知識(shí),讓我們一起攜手,引領(lǐng)人工智能的未來!

標(biāo)簽: CentOS idc linux 大數(shù)據(jù) 服務(wù)器 腳本 通信 網(wǎng)絡(luò) 云計(jì)算

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:中俄牽頭推網(wǎng)絡(luò)信息安全準(zhǔn)則抗衡美國(guó)

下一篇:意大利著名修道院的“云備份”實(shí)踐