阮承妹
摘要:采用vSphere私有云建設(shè)OpenStack實驗平臺的方案中存在虛擬機嵌套問題,針對該問題,本文提出了一種OpenStack各節(jié)點組網(wǎng)方式,在不開啟虛擬交換機的混雜模式下,實現(xiàn)虛擬機實例與外部網(wǎng)絡(luò)的通信。該組網(wǎng)方式,既實現(xiàn)虛擬機實例與OpenStack各節(jié)點的網(wǎng)絡(luò)隔離,又無需混雜模式下額外的開銷。
關(guān)鍵詞:vSphere;OpenStack;嵌套虛擬機;混雜模式;組網(wǎng)
1、背景
高校智慧校園建設(shè)中,逐步拋棄傳統(tǒng)的服務(wù)器管理模式和以PC為主的實驗室建設(shè)方式,采用私有云構(gòu)建服務(wù)器資源池以及云系統(tǒng)的解決方案成為主流。
計世資訊調(diào)查報告顯示,在服務(wù)器虛擬化方面,VMware在中國的市場份額從2016年在2018年仍然達到40%[1]。在私有云方面,VMware占有率并不高,主要原因是用戶管理需求復(fù)雜,不易于管理。市場需要更為開放更具兼容性的產(chǎn)品,如基于KVM的OpenStack云平臺。2020年賽迪發(fā)布研究報告顯示,基于開源OpenStack平臺的企業(yè)仍占鰲頭[2]。OpenStack的運維人員成為緊急需求。各院校逐漸開展云計算平臺的相關(guān)教學(xué),而首先要解決的是云計算實驗室的建設(shè)問題。
基于私有云來構(gòu)建云計算實驗平臺成為優(yōu)先考慮的解決方案。本文以本校為例,原有大數(shù)據(jù)實驗平臺是采用VMware vSphere 6.5來構(gòu)建私有云實驗平臺。在大數(shù)據(jù)實驗課程中,服務(wù)器資源利用率大約為30%,假期時段利用率甚至更低,故考慮到成本資源利用率,在此私有云平臺上構(gòu)建OpenStack實驗平臺。
2、OpenStack節(jié)點在vSphere中的規(guī)劃設(shè)計
vSphere管理平臺包括ESXi 和vCenter 兩個主要組件。其中ESXi提供虛擬化服務(wù),虛擬機和虛擬設(shè)備都運行在ESXi上,vCenter提供管理服務(wù)。
用ESXi創(chuàng)建的虛擬機來構(gòu)建OpenStack實驗平臺,OpenStack各節(jié)點之間的網(wǎng)絡(luò)連接如果采用OpenStack官網(wǎng)推薦的拓撲進行組網(wǎng),存在以下問題:
當OpenStack compute節(jié)點上創(chuàng)建的虛擬機VM實例與外部網(wǎng)絡(luò)無法互通。原因在于ESXi創(chuàng)建的虛擬交換機與物理交換機的區(qū)別在于不學(xué)習來自外部網(wǎng)絡(luò)的過境交通的MAC地址。虛擬交換機無法學(xué)習VM實例的MAC地址(不是由ESXi創(chuàng)建的,因此被認為是外部非法的),因此虛擬交換機丟棄VM實例幀。
[3]文作者提出了通過開啟虛擬交換機混雜模式的方法來解決該問題。VMware對混雜模式的定義是混雜模式下的交換機會對所有流量進行泛洪,因此VM實例能夠發(fā)送和接收到數(shù)據(jù)包。但混雜模式是不安全的運行模式,它意味著處于混雜模式中的所有網(wǎng)絡(luò)適配器均能接收數(shù)據(jù)包。此外泛洪,需要額外的開銷。
本文設(shè)計了圖3-1所示的組網(wǎng)方式,在不開啟虛擬交換機混雜模式的狀態(tài)下,能夠?qū)崿F(xiàn)VM與外部網(wǎng)絡(luò)的互通。
端口組0-2分別實現(xiàn)OpenStack內(nèi)部組件通信、租戶網(wǎng)絡(luò)隧道、建立provider網(wǎng)絡(luò),因此都是內(nèi)部網(wǎng)絡(luò),通過新建的vswitch1來實現(xiàn)網(wǎng)絡(luò)連接。vswith1無需與ESXi物理網(wǎng)卡相連,保證內(nèi)部通信的數(shù)據(jù)僅在ESXi主機內(nèi)部間傳輸,實現(xiàn)內(nèi)外隔離。
傳統(tǒng)的組網(wǎng)方式是eth2直連外部網(wǎng)絡(luò),那么eth1網(wǎng)絡(luò)與eth2網(wǎng)絡(luò)通信所創(chuàng)建的qrouter的mac地址不能夠被虛擬交換機學(xué)習,因此幀被丟棄。本文在controller節(jié)點上開啟路由轉(zhuǎn)發(fā)功能,并在eth3上啟用SNAT,所有通過eth3路由的VM幀被修改成eth3的MAC地址,因此能夠?qū)崿F(xiàn)和外部網(wǎng)絡(luò)進行通信。VM和外部網(wǎng)絡(luò)通信數(shù)據(jù)流由3-1中虛線所示。
3、測試
在vswitch不開啟混雜模式下,采用本文所提出的組網(wǎng)方式構(gòu)建OpenStack實驗平臺,完成Linux Bridge + Vxlan實驗,部署centos7實例。在controller節(jié)點上通過ssh訪問該VM實例進行測試:
圖3-1表明,該組網(wǎng)方式能實現(xiàn)VM實例與外部網(wǎng)絡(luò)的通信。同時測試VM實例與OpenStack各節(jié)點之間的網(wǎng)絡(luò)情況,VM實例與compute不通,實現(xiàn)了VM實例與OpenStack節(jié)點(除了網(wǎng)絡(luò)節(jié)點)的隔離,提高了安全性。VM實例與網(wǎng)絡(luò)節(jié)點(網(wǎng)絡(luò)服務(wù)部署在controller上)是互通的,因為VM實例與外部網(wǎng)絡(luò)的通信需要網(wǎng)絡(luò)節(jié)點實現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā)。
4、結(jié)論
在vSphere私有云平臺上,采用本文提出的節(jié)點組網(wǎng)方式構(gòu)建了OpenStack實驗平臺,在不開啟混雜模式條件下,能夠?qū)崿F(xiàn)VM實例與外部網(wǎng)絡(luò)的通信,從而確保OpenStack實驗順利進行。該實驗平臺的構(gòu)建,既能滿足大數(shù)據(jù)實驗平臺的需求,也滿足了更為復(fù)雜的OpenStack實驗平臺需求,同時基于私有云的實驗平臺建設(shè),滿足智慧校園建設(shè)要求,實現(xiàn)資源共享,提高基礎(chǔ)設(shè)施利用率,降低運維成本。
參考文獻
[1]計世資訊.2018-2019年中國服務(wù)器虛擬化市場及技術(shù)發(fā)展趨勢研究報告.計世資訊,2019.6.
[2]賽迪研究院.《2020中國私有云系統(tǒng)平臺市場研究》.賽迪研究院,2020.8.20
[3]佚名.vCenter中嵌套OpenStack VM不能ping通外部網(wǎng)絡(luò)問題解決的方法,https://www.cnblogs.com/claireyuancy/p/7083361.html,2017.6.27.
(三明學(xué)院信息工程學(xué)院?福建?三明?365004)