本發(fā)明涉及云計(jì)算技術(shù),尤指一種用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法和裝置。
背景技術(shù):
隨著以虛擬化技術(shù)為基礎(chǔ)的云計(jì)算的廣泛應(yīng)用,提高了服務(wù)器cpu和網(wǎng)絡(luò)資源的利用率,如何提高用戶對(duì)于虛擬化系統(tǒng)的易用性以及系統(tǒng)的穩(wěn)定性是虛擬化系統(tǒng)設(shè)計(jì)過程中重要的考慮因素。
目前虛擬化系統(tǒng)中虛擬機(jī)連接網(wǎng)絡(luò)的方式多是連接至虛擬交換機(jī)上的網(wǎng)絡(luò),然后通過物理網(wǎng)卡連接外部網(wǎng)絡(luò)。這就需要用虛擬網(wǎng)絡(luò)設(shè)備如tap、macvtap來實(shí)現(xiàn),通過所述虛擬網(wǎng)絡(luò)設(shè)備,程序可以方便地模擬網(wǎng)絡(luò)行為。
如果用戶直接使用macvtap網(wǎng)絡(luò),用戶需要?jiǎng)?chuàng)建macvtap網(wǎng)絡(luò)并對(duì)macvtap網(wǎng)絡(luò)添加網(wǎng)卡或者網(wǎng)卡接口,然后在添加虛擬機(jī)網(wǎng)卡時(shí),選擇網(wǎng)卡類型為macvtap網(wǎng)絡(luò),再加上功能實(shí)現(xiàn)時(shí)會(huì)考慮使用macvtap的虛擬局域網(wǎng)(virtuallocalareanetwork,vlan)屬性,對(duì)于這樣的實(shí)現(xiàn),首先是用戶很難理解所使用的功能,且操作流程與正常的虛擬機(jī)連接網(wǎng)絡(luò)的方式不同,需要用戶花費(fèi)時(shí)間學(xué)習(xí),對(duì)于設(shè)計(jì)者而言需要重新設(shè)計(jì)模型,開發(fā)周期長、設(shè)計(jì)麻煩,容易造成功能的不穩(wěn)定。
可見,現(xiàn)有使用macvtap網(wǎng)絡(luò)技術(shù)方案中,存在用戶使用時(shí)操作復(fù)雜以及系統(tǒng)穩(wěn)定性差的問題。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了一種用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法和裝置,通過將macvtap網(wǎng)絡(luò)的實(shí)現(xiàn)抽象成交換機(jī),不僅可以使得用戶更加簡單方便的操作,還可以提高系統(tǒng)的穩(wěn)定性。
為了達(dá)到本發(fā)明目的,一方面,本發(fā)明實(shí)施例提供了一種用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法,包括:
在虛擬化系統(tǒng)中基于macvtap技術(shù)創(chuàng)建虛擬交換機(jī),所述虛擬交換機(jī)連接物理網(wǎng)卡,作為虛擬交換機(jī)的上行鏈路;
在所創(chuàng)建的虛擬交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上。
本發(fā)明實(shí)施例通過在虛擬化系統(tǒng)中基于macvtap技術(shù)創(chuàng)建虛擬交換機(jī),不僅可以使得用戶更加簡單方便的操作,還可以提高系統(tǒng)的穩(wěn)定性。
進(jìn)一步地,所述所創(chuàng)建的網(wǎng)絡(luò)具有vlan屬性。
進(jìn)一步地,在虛擬機(jī)使用創(chuàng)建的網(wǎng)絡(luò)時(shí),按照vlan屬性,對(duì)虛擬機(jī)配置進(jìn)行相應(yīng)設(shè)置。
進(jìn)一步地,所述物理網(wǎng)卡包括網(wǎng)卡接口,所述網(wǎng)卡接口是基于物理網(wǎng)卡創(chuàng)建的帶有vlan的子網(wǎng)卡。
進(jìn)一步地,所述虛擬交換機(jī)為icnfast虛擬交換機(jī)。
進(jìn)一步地,在創(chuàng)建icnfast虛擬交換機(jī)之后,還包括刪除icnfast虛擬交換機(jī)的操作;
在icnfast虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)之后,還包括刪除網(wǎng)絡(luò)的操作。
進(jìn)一步地,該方法還包括:在虛擬交換機(jī)上的網(wǎng)絡(luò)上沒有連接虛擬機(jī)時(shí),執(zhí)行刪除網(wǎng)絡(luò)的操作;
在虛擬交換機(jī)上沒有連接的虛擬機(jī)時(shí),執(zhí)行刪除icnfast虛擬交換機(jī)的操作,刪除icnfast虛擬交換機(jī)之后,對(duì)所使用的物理網(wǎng)卡進(jìn)行釋放。
進(jìn)一步地,在創(chuàng)建icnfast虛擬交換機(jī)之后,還包括:將所述icnfast虛擬交換機(jī)以及上行鏈路配置保存至上層數(shù)據(jù)庫中。
進(jìn)一步地,如果計(jì)算節(jié)點(diǎn)上沒有可用的物理網(wǎng)卡,不能創(chuàng)建交換機(jī),且每一計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的上行鏈路上只允許添加一塊物理網(wǎng)卡。
另一方面,本發(fā)明實(shí)施例還提供了一種用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的裝置,和括:
創(chuàng)建虛擬交換機(jī)模塊,用于在虛擬化系統(tǒng)中基于macvtap技術(shù)創(chuàng)建虛擬交換機(jī),所述虛擬交換機(jī)連接物理網(wǎng)卡,作為虛擬交換機(jī)的上行鏈路;
創(chuàng)建網(wǎng)絡(luò)模塊,用于在所創(chuàng)建的虛擬交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
附圖說明
附圖用來提供對(duì)本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本申請(qǐng)的實(shí)施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對(duì)本發(fā)明技術(shù)方案的限制。
圖1為本發(fā)明用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法優(yōu)選實(shí)施例的流程圖;
圖2為本發(fā)明用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的裝置優(yōu)選實(shí)施例的結(jié)構(gòu)圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明。需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
如圖1所示,是本發(fā)明用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法優(yōu)選實(shí)施例的流程圖,本發(fā)明實(shí)施例包括以下步驟:
步驟100:在虛擬化系統(tǒng)中基于macvtap技術(shù)創(chuàng)建虛擬交換機(jī),所述虛擬交換機(jī)連接物理網(wǎng)卡,作為虛擬交換機(jī)的上行鏈路;
步驟101:在所創(chuàng)建的虛擬交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上。
具體地,為了解決macvtap網(wǎng)絡(luò)使用時(shí)不方便以及提升功能穩(wěn)定性的問題,本發(fā)明實(shí)施例提出了一種基于macvtap技術(shù)的虛擬化系統(tǒng)中用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法。通過將macvtap網(wǎng)絡(luò)抽象為交換機(jī)來進(jìn)行實(shí)現(xiàn),并在所抽象的交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上,這樣有效提高了功能的易用性以及穩(wěn)定性。
進(jìn)一步地,所述所創(chuàng)建的網(wǎng)絡(luò)具有vlan屬性。
具體地,所創(chuàng)建的網(wǎng)絡(luò)支持虛擬局域網(wǎng)(virtuallocalareanetwork,vlan)屬性。虛擬局域網(wǎng)vlan是一組邏輯上的設(shè)備和用戶。
支持的vlan屬性包括1-4094以及all,all指允許通過所有vlan。
進(jìn)一步地,在虛擬機(jī)使用創(chuàng)建的網(wǎng)絡(luò)時(shí),按照vlan屬性,對(duì)虛擬機(jī)配置進(jìn)行相應(yīng)設(shè)置。
具體按照虛擬機(jī)使用vlan為1-4094范圍內(nèi)的數(shù)值的網(wǎng)絡(luò)還是虛擬機(jī)使用vlan為all的網(wǎng)絡(luò)的不同情況,分別在虛擬機(jī)配置文件中,對(duì)虛擬機(jī)配置進(jìn)行相應(yīng)設(shè)置。
進(jìn)一步地,所述物理網(wǎng)卡包括網(wǎng)卡接口,所述網(wǎng)卡接口是基于物理網(wǎng)卡創(chuàng)建的帶有vlan的子網(wǎng)卡。
進(jìn)一步地,所述虛擬交換機(jī)為icnfast虛擬交換機(jī)。icnfast虛擬交換機(jī)為信息中心網(wǎng)絡(luò)(informationcenternetwork,icn)快速虛擬交換機(jī)。以此區(qū)別系統(tǒng)中現(xiàn)有的其他虛擬交換機(jī)。本發(fā)明實(shí)施例中的icnfast虛擬交換機(jī),由macvtap網(wǎng)絡(luò)抽象而成的交換機(jī),并在此交換機(jī)上可以創(chuàng)建網(wǎng)絡(luò),虛擬交換機(jī)可以連接物理網(wǎng)卡或者網(wǎng)卡接口,作為交換機(jī)的上行鏈路。
進(jìn)一步地,在創(chuàng)建icnfast虛擬交換機(jī)之后,還包括刪除icnfast虛擬交換機(jī)的操作;
在icnfast虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)之后,還包括刪除網(wǎng)絡(luò)的操作。
進(jìn)一步地,在虛擬交換機(jī)上的網(wǎng)絡(luò)上沒有連接虛擬機(jī)時(shí),執(zhí)行刪除網(wǎng)絡(luò)的操作;
在虛擬交換機(jī)上沒有連接的虛擬機(jī)時(shí),執(zhí)行刪除icnfast虛擬交換機(jī)的操作,刪除icnfast虛擬交換機(jī)之后,對(duì)所使用的物理網(wǎng)卡進(jìn)行釋放。
進(jìn)一步地,在創(chuàng)建icnfast虛擬交換機(jī)之后,還包括:將所述icnfast虛擬交換機(jī)以及上行鏈路配置保存至上層數(shù)據(jù)庫中。
進(jìn)一步地,如果計(jì)算節(jié)點(diǎn)上沒有可用的物理網(wǎng)卡,將不能創(chuàng)建交換機(jī),且每一計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的上行鏈路上只允許添加一塊物理網(wǎng)卡。
下面將本發(fā)明實(shí)施例中所采用的技術(shù)方案的原理做進(jìn)一步的詳細(xì)闡述。
本發(fā)明采用現(xiàn)有虛擬化系統(tǒng)中穩(wěn)定的虛擬交換機(jī)架構(gòu),用戶使用macvtap網(wǎng)絡(luò)連接虛擬機(jī)時(shí),首先需要抽象成一個(gè)虛擬交換機(jī),為了區(qū)別系統(tǒng)中現(xiàn)有的其他虛擬交換機(jī),稱之為icnfast虛擬交換機(jī),這里支持的操作包括創(chuàng)建icnfast虛擬交換機(jī)、刪除icnfast虛擬交換機(jī)、對(duì)icnfast虛擬交換機(jī)配置上行鏈路、在icnfast虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)、刪除網(wǎng)絡(luò)、編輯網(wǎng)絡(luò)以及虛擬機(jī)使用icnfast虛擬交換機(jī)上的網(wǎng)絡(luò),以上所有的操作都在管理節(jié)點(diǎn)上進(jìn)行,虛擬機(jī)運(yùn)行的主機(jī)稱為計(jì)算節(jié)點(diǎn)。
創(chuàng)建icnfast虛擬交換機(jī)的過程中需要配置上行鏈路,在上行鏈路中添加一塊物理網(wǎng)卡,創(chuàng)建icnfast虛擬交換機(jī)之后,在數(shù)據(jù)庫中對(duì)此虛擬交換機(jī)以及上行鏈路配置進(jìn)行持久化操作,保存至上層數(shù)據(jù)庫中,上行鏈路中的物理網(wǎng)卡,用于連接虛擬機(jī)與外部網(wǎng)絡(luò),如果計(jì)算節(jié)點(diǎn)上沒有可用的物理網(wǎng)卡,將不能創(chuàng)建交換機(jī),且每一計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的上行鏈路上只允許添加一塊物理網(wǎng)卡。
在icnfast虛擬交換機(jī)上創(chuàng)建網(wǎng)絡(luò),用于連接虛擬機(jī),創(chuàng)建的網(wǎng)絡(luò)時(shí)需要指定網(wǎng)絡(luò)的vlan屬性,支持的vlan屬性包括1-4094以及all,all指允許通過所有vlan。
在創(chuàng)建網(wǎng)絡(luò)的過程中,如果vlan在1-4094范圍內(nèi),比如需要?jiǎng)?chuàng)建一個(gè)vlan為10的網(wǎng)絡(luò),那么需要在虛擬交換機(jī)關(guān)聯(lián)的計(jì)算節(jié)點(diǎn)上執(zhí)行iplinksetlinkethinameicnfastvlan10typevlanid10,上述命令中ethi為虛擬交換機(jī)上行鏈路中物理網(wǎng)卡名稱,vlan10為前臺(tái)數(shù)據(jù)庫中存取的網(wǎng)絡(luò)名稱,icnfastvlan10為后臺(tái)對(duì)應(yīng)的網(wǎng)絡(luò)名稱,這里為了不跟主機(jī)上的其他網(wǎng)絡(luò)元素重名沖突,下發(fā)命令至后臺(tái)時(shí)需要在前臺(tái)數(shù)據(jù)庫中存取的網(wǎng)絡(luò)名稱前默認(rèn)加上icnfast前綴,id后面跟的數(shù)字為vlan值;由于主機(jī)重啟之后,創(chuàng)建的網(wǎng)卡接口會(huì)消失,因此后臺(tái)需要在sqlite3數(shù)據(jù)庫中進(jìn)行存儲(chǔ),具體存儲(chǔ)的內(nèi)容包括物理網(wǎng)卡名稱、后臺(tái)對(duì)應(yīng)的網(wǎng)絡(luò)名稱以及vlanid,在主機(jī)重啟之后,重新執(zhí)行上述命令恢復(fù)網(wǎng)卡接口。
虛擬機(jī)使用vlan為1-4094范圍內(nèi)的數(shù)值的網(wǎng)絡(luò)時(shí),需要在虛擬機(jī)配置文件中進(jìn)行如下操作:
<interfacetype=’direct’>
<macaddress=’00∶16:3e:7e:71∶15’>
<sourcedev=’icnfastvlan10’mode=’bridge’/>
<modeltype=’e1000’>
</interface>
其中,icnfastvlan10為后臺(tái)對(duì)應(yīng)的網(wǎng)絡(luò)名稱,bridge為macvtap網(wǎng)絡(luò)所支持的模式,e1000代表虛擬網(wǎng)卡類型,其他支持的類型包括rtl8139和virtio。
虛擬機(jī)使用vlan為all的網(wǎng)絡(luò)時(shí),需要在虛擬機(jī)配置文件中進(jìn)行如下操作:
<interfacetype=’direct’>
<macaddress=’00∶16:3e:7e:71∶16’>
<sourcedev=’ethi’mode=’bridge’/>
<modeltype=’e1000’>
</interface>
其中,ethi為交換機(jī)連接的物理網(wǎng)卡。
用戶在對(duì)網(wǎng)絡(luò)進(jìn)行vlan編輯的時(shí)候,交換機(jī)上不能連接有開機(jī)狀態(tài)的虛擬機(jī),即如果編輯虛擬交換機(jī)上的網(wǎng)絡(luò),需要關(guān)閉所有的虛擬機(jī);如果虛擬交換機(jī)上的網(wǎng)絡(luò)上沒有連接虛擬機(jī),那么可以進(jìn)行刪除網(wǎng)絡(luò)的操作,刪除網(wǎng)絡(luò)時(shí),如果網(wǎng)絡(luò)vlan為1-4094范圍中的數(shù)值,那么需要執(zhí)行iplinkdeletedevicnfastvlan10,其中,icnfastvlan10為后臺(tái)對(duì)應(yīng)的網(wǎng)絡(luò)名稱。
如果交換機(jī)上沒有連接的虛擬機(jī),用戶可以執(zhí)行刪除交換機(jī)的操作,刪除交換機(jī)之后釋放所使用的物理網(wǎng)卡。
用戶還可以在連接交換機(jī)上的所有虛擬機(jī)關(guān)機(jī)時(shí),對(duì)交換機(jī)上行鏈路進(jìn)行配置,用戶可以刪除原有使用的物理網(wǎng)卡,添加新的物理網(wǎng)卡至上行鏈路中,此時(shí)如果上行鏈路配置修改后,如果有帶有vlan的網(wǎng)絡(luò)時(shí),需要?jiǎng)h除原有網(wǎng)絡(luò)接口以及數(shù)據(jù)庫中的配置信息,并且基于當(dāng)前上行鏈路的網(wǎng)卡創(chuàng)建新的網(wǎng)絡(luò)接口并保存數(shù)據(jù)庫。
通過對(duì)macvtap網(wǎng)絡(luò)的抽象,說明了創(chuàng)建icnfast虛擬交換機(jī)以及虛擬機(jī)連接交換機(jī)的實(shí)現(xiàn)方式,以此提升系統(tǒng)的易用性以及穩(wěn)定性。
本發(fā)明實(shí)施例通過將macvtap網(wǎng)絡(luò)抽象為交換機(jī)來進(jìn)行實(shí)現(xiàn),并在所抽象的交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上,網(wǎng)絡(luò)支持vlan屬性,有效提高功能的易用性以及穩(wěn)定性。
另一方面,本發(fā)明實(shí)施例還提供了一種用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的裝置,圖2為本發(fā)明用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的裝置優(yōu)選實(shí)施例的結(jié)構(gòu)圖,如圖2所示,本發(fā)明實(shí)施例的裝置,包括:
創(chuàng)建虛擬交換機(jī)模塊201,用于在虛擬化系統(tǒng)中基于macvtap技術(shù)創(chuàng)建虛擬交換機(jī),所述虛擬交換機(jī)連接物理網(wǎng)卡,作為虛擬交換機(jī)的上行鏈路;
創(chuàng)建網(wǎng)絡(luò)模塊202,用于在所創(chuàng)建的虛擬交換機(jī)上創(chuàng)建網(wǎng)絡(luò),虛擬機(jī)連接在所創(chuàng)建的網(wǎng)絡(luò)上。
本發(fā)明實(shí)施例例如應(yīng)用于虛擬化產(chǎn)品incloudsphere企業(yè)版5.0,可以提升產(chǎn)品的易用性和穩(wěn)定性。
本發(fā)明實(shí)施例通過基于macvtap技術(shù)的虛擬化系統(tǒng)中用虛擬交換機(jī)創(chuàng)建網(wǎng)絡(luò)的方法,提升了macvtap網(wǎng)絡(luò)使用時(shí)的易用性以及穩(wěn)定性。
所述的虛擬化系統(tǒng)在于負(fù)責(zé)完成底層物理資源的虛擬融合、按需分配與高效管理,可以顯著提高資源交付的敏捷性和靈活性,提升資源的使用效率,為上層業(yè)務(wù)提供不間斷地資源保障與可伸縮的資源供給。
本發(fā)明實(shí)施例將macvtap網(wǎng)絡(luò)抽象為交換機(jī),由于交換機(jī)對(duì)用戶而言是常見的網(wǎng)絡(luò)元素,所以可以讓用戶更加容易的理解功能,使用上也會(huì)更加方便簡單,提高功能的易用性,另外采用系統(tǒng)中原有的穩(wěn)定的交換機(jī)架構(gòu),可以提升macvtap網(wǎng)絡(luò)這一新功能實(shí)現(xiàn)時(shí)的穩(wěn)定性。
雖然本發(fā)明所揭露的實(shí)施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實(shí)施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。