本發(fā)明涉及網(wǎng)絡(luò)應(yīng)用技術(shù)領(lǐng)域,具體涉及一種云平臺下虛擬交換機QoS配置管理系統(tǒng)和云服務(wù)器。
背景技術(shù):
隨著虛擬化和云計算技術(shù)的不斷成熟,越來越多的云服務(wù)廠商開始提供公有云和私有云服務(wù),允許企業(yè)用戶創(chuàng)建自己的虛擬數(shù)據(jù)中心,幫助企業(yè)節(jié)省建設(shè)成本提高業(yè)務(wù)敏捷性。因此很多的企業(yè)開始將大部分IT應(yīng)用向云平臺遷移。當(dāng)用戶的數(shù)據(jù)中心越來越大時,會產(chǎn)生很大的流量,這時我們就有必要對虛擬交換機端口進行速率限制,以便可以實現(xiàn)對交換機下各虛擬機業(yè)務(wù)的質(zhì)量保證。由于對底層虛擬交換機的配置繁瑣而且復(fù)雜,當(dāng)值在虛擬交換機在對各個虛擬機進行業(yè)務(wù)配置時導(dǎo)致過程繁瑣,控制命令復(fù)雜。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明實施例提供一種云平臺下虛擬交換機QoS配置管理系統(tǒng)和云服務(wù)器,以簡化虛擬交換機在對各個虛擬機進行業(yè)務(wù)配置時的配置過程。
為實現(xiàn)上述目的,本發(fā)明實施例提供如下技術(shù)方案:
一種云平臺下虛擬交換機QoS配置管理系統(tǒng),其特征在于,包括:
虛擬交換機;
與所述虛擬交換機相連的多個虛擬機,所述虛擬機用于實現(xiàn)控制器的環(huán)境配置;
通過網(wǎng)絡(luò)與所述虛擬交換機相連的控制器;
所述虛擬交換機被配置為:當(dāng)檢測到所述虛擬機連接到所述虛擬交換機時,在所述虛擬交換機上生成一個與所述虛擬機對應(yīng)的通信端口,并通過所述虛擬交換機內(nèi)的qos配置所述通信端口;
所述控制器被配置為:通過網(wǎng)絡(luò)連接所述虛擬交換機的ovsdb數(shù)據(jù)庫,依據(jù)RFC標(biāo)準(zhǔn)文件定義所述ovsdb數(shù)據(jù)庫的操作格式,對ovsdb數(shù)據(jù)庫中的相關(guān)Qos表進行操作。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述控制器為支持ovsdb標(biāo)準(zhǔn)協(xié)議的onos控制器。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述交換機為開放式虛擬交換機。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述控制器與虛擬交換機之間使用tcp協(xié)議進行通信。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述控制器內(nèi)配置有軟件開發(fā)工具包。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述軟件開發(fā)工具包為JDK1.8工具包。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述控制器內(nèi)配置有源代碼配置文件,所述代碼配置文件用于修改所述控制器的源代碼,開發(fā)所述控制器的Qos功能。
優(yōu)選的,上述云平臺下虛擬交換機QoS配置管理系統(tǒng)中,所述控制器內(nèi)配置rfc文件,所述控制器通過所述rfc文件定義所述ovsdb數(shù)據(jù)庫的操作,實現(xiàn)對所述ovsdb數(shù)據(jù)庫中數(shù)據(jù)的讀、寫以及刪除操作。
一種云服務(wù)器,包括上述任意一項所述的云平臺下虛擬交換機Qos配置管理系統(tǒng)。
基于上述技術(shù)方案,本發(fā)明實施例提供的上述方案,通過采用控制器遠程連接虛擬交換機中的ovsdb數(shù)據(jù)庫,按照RFC標(biāo)準(zhǔn)文件定義的所述ovsdb數(shù)據(jù)的操作格式,對所述ovsdb數(shù)據(jù)庫中的相關(guān)QoS表進行相應(yīng)操作(例如,插入、讀取、更新、刪除等相關(guān)操作)。從而使得控制器很好的支持了ovsdb數(shù)據(jù)庫的標(biāo)準(zhǔn)協(xié)議,控制器對虛擬交換機的協(xié)議提供了良好支持,實現(xiàn)云平臺中使控制和轉(zhuǎn)發(fā)面脫離解耦,提高了云平臺對底層設(shè)備的管理,快速實現(xiàn)對底層虛擬交換機的快速配置和管理。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本申請實施例公開的云平臺下虛擬交換機QoS配置管理系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
針對于現(xiàn)有技術(shù)中,云平臺下底層虛擬交換機的配置繁瑣而且復(fù)雜,而導(dǎo)致虛擬交換機在對各個虛擬機進行業(yè)務(wù)配置時,需要的指令復(fù)雜而繁瑣的問題,本申請公開了一種云平臺下虛擬交換機QoS配置管理系統(tǒng)。參見圖1,該系統(tǒng)可以包括:
虛擬交換機100、控制器200以及多個虛擬機300;
其中,所述多個虛擬機300分別通過接口與所述虛擬交換機100相連,在本申請實施例公開的技術(shù)方案中,所述虛擬機還用于實現(xiàn)控制器200的環(huán)境配置,例如,所述控制器200所在的主機或虛擬機300的ip要保證所述控制器200所在的環(huán)境的IP和虛擬交換機100所在的環(huán)境IP可達,并關(guān)閉所述虛擬交換機100和控制器200所在環(huán)境的防火墻配置;
在本系統(tǒng)中,所述控制器200與通過網(wǎng)絡(luò)與所述虛擬交換機100相連;
其中,所述虛擬交換機100被配置為:當(dāng)檢測到所述虛擬機300連接到所述虛擬交換機100時,在所述虛擬交換機100上生成一個與所述虛擬機300對應(yīng)的通信端口,并通過所述虛擬交換機100內(nèi)的qos配置所述通信端口;
所述控制器被配置為:通過網(wǎng)絡(luò)連接所述虛擬交換機的ovsdb數(shù)據(jù)庫,所述控制器內(nèi)配置rfc文件,所述控制器通過所述rfc文件定義所述ovsdb數(shù)據(jù)庫的操作,實現(xiàn)對所述ovsdb數(shù)據(jù)庫中數(shù)據(jù)的讀、寫以及刪除操作,所述控制器依據(jù)RFC標(biāo)準(zhǔn)文件定義所述ovsdb數(shù)據(jù)庫的操作格式,對ovsdb數(shù)據(jù)庫中的相關(guān)Qos表進行操作。
本申請上述實施例公開開的系統(tǒng),通過采用控制器遠程連接虛擬交換機中的ovsdb數(shù)據(jù)庫,按照RFC標(biāo)準(zhǔn)文件定義的所述ovsdb數(shù)據(jù)的操作格式,對所述ovsdb數(shù)據(jù)庫中的相關(guān)QoS表進行相應(yīng)操作(例如,插入、讀取、更新、刪除等相關(guān)操作)。從而使得控制器很好的支持了ovsdb數(shù)據(jù)庫的標(biāo)準(zhǔn)協(xié)議,控制器對虛擬交換機的協(xié)議提供了良好支持,實現(xiàn)云平臺中使控制和轉(zhuǎn)發(fā)面脫離解耦,提高了云平臺對底層設(shè)備的管理,快速實現(xiàn)對底層虛擬交換機的快速配置和管理。
在本申請上述實施例公開的技術(shù)方案中,所述控制器的類型可以依據(jù)用戶需求自行選擇,例如,在本申請實施例公開的技術(shù)方案中,所述控制器可以采用支持ovsdb標(biāo)準(zhǔn)協(xié)議的onos控制器。所述虛擬交換機可以選擇支持開放虛擬交換標(biāo)準(zhǔn)(openvswitch)的開放式虛擬交換機。
在本申請上述實施例公開的技術(shù)方案中,所述控制器與虛擬交換機之間可使用tcp協(xié)議進行通信。
為了方便對所述控制器的源代碼進行編輯修改,所述控制器內(nèi)還配置有軟件開發(fā)工具包。所述軟件開發(fā)包的具體類型可以依據(jù)用戶需求自行選擇,例如所述軟件開發(fā)工具包為JDK1.8工具包。
所述控制器內(nèi)配置有源代碼配置文件,所述代碼配置文件用于修改所述控制器的源代碼,開發(fā)所述控制器的Qos功能。
在應(yīng)用本申請上述實施例公開的配置管理系統(tǒng)時,需要預(yù)先對其進行配置,主要配置包括:虛擬交換機配置、控制器設(shè)計和配置以及控制器環(huán)境設(shè)置。
其中,云平臺下虛擬化交換機QoS的配置過程包括:
虛擬交換機的設(shè)置,該設(shè)置主要是使虛擬交換機托管被控制器連接管理,假設(shè)虛擬交換機的名字為br-ovs,所述虛擬交換機的配置為:ovs-vsctlset-controller br-ovs tcp:10.180.207.22:6653(這些是在虛擬交換機上執(zhí)行的命令,這些命令用來設(shè)置虛擬交換機和控制器的連接,其中10.180.207.22為控制器所在主機或虛擬機的IP),其中tcp為使用的連接協(xié)議,通過上述配置方式保證控制器所在的環(huán)境的IP和虛擬交換機所在的環(huán)境IP可達,并關(guān)閉所述虛擬交換機和控制器所在環(huán)境的防火墻配置。
控制器環(huán)境的配置主要是安裝JDK1.8文件,并修改所述控制器所在的主機的/etc/profile文件(修改該文件是為了是控制器啟動后使用10.180.207.22與虛擬交換機進行通信),增加:export$ONOS_IP=10.180.207.22,并執(zhí)行source/etc/profile(使該文件立即生效),即所述控制器通過JDK1.8文件修改其所在主機的/etc/profile文件,并增加export$ONOS_IP=10.180.207.22后,執(zhí)行source/etc/profile命令,使得該修改后的profile文件立即生效。
控制器設(shè)計修改(以onos控制器為例):在控制器的onos/core/api/src/main/java/org/onosproject/net/behavior/目錄下增加相應(yīng)的有源代碼配置文件(XXconfig.java)(用過所述有源代碼配置文件可重新修改控制器的源碼開發(fā)qos功能),用過有源代碼配置文件定義所述控制器的通信接口applyQoS(該接口是主要是調(diào)用控制器定義的協(xié)議接口來操作虛擬交換機的ovsdb數(shù)據(jù)庫)。在控制器的onos/drivers/ovsdb/src/main/java/org/onosproject/drivers/ovsdb/目錄下增加ovsdbXXconfig.java文件,來實現(xiàn)有源代碼配置文件定義的接口applyQoS,在該接口中會調(diào)用protocols文件(進行網(wǎng)絡(luò)中的數(shù)據(jù)交換而建立的規(guī)則、標(biāo)準(zhǔn)或約定)下實現(xiàn)的接口(該文件的增加主要是在遵循控制器框架的前提下,來實現(xiàn)所述Xxconfig.java定義的接口功能)。在控制器的onos/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller目錄下實現(xiàn)在applyQoS調(diào)用的接口,最后通過rfc(是一系列以編號排定的文件。文件收集了有關(guān)互聯(lián)網(wǎng)相關(guān)信息)定義的對ovsdb數(shù)據(jù)庫的標(biāo)準(zhǔn)操作(rfc文件對操作ovsdb數(shù)據(jù)庫定義了標(biāo)準(zhǔn)的接口,如傳入的參數(shù),操作的返回結(jié)果,這是標(biāo)準(zhǔn)我們并不需要關(guān)心為什么官方要這樣定義,只要是使用虛擬交換機的都需要遵循該標(biāo)準(zhǔn)),完成對數(shù)據(jù)的讀寫刪除。
針對于上述管理系統(tǒng),本申請還公開了一種云服務(wù)器,該服務(wù)器可以應(yīng)用有本申請上述任意意向?qū)嵤├龅脑破脚_下虛擬交換機Qos配置管理系統(tǒng)。
為了描述的方便,描述以上系統(tǒng)時以功能分為各種模塊分別描述。當(dāng)然,在實施本申請時可以把各模塊的功能在同一個或多個軟件和/或硬件中實現(xiàn)。
本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)或系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關(guān)之處參見方法實施例的部分說明即可。以上所描述的系統(tǒng)及系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
專業(yè)人員還可以進一步意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。