國家廣播電視總局無線電臺管理局七二二臺 王曉峰
在使用VMware的服務(wù)器虛擬化系統(tǒng)一段時間以后,發(fā)現(xiàn)系統(tǒng)內(nèi)有一些需要優(yōu)化的地方。在部署一臺交換機和若干千兆網(wǎng)線并進行相應(yīng)配置后,服務(wù)器虛擬化系統(tǒng)的容錯能力和性能都得到了提升,系統(tǒng)運行的更加穩(wěn)定可靠。
本人所在單位目前已經(jīng)使用VMware公司的服務(wù)器虛擬化軟件vSphere ESXi6.7和配套的虛擬化管理軟件vCenter6.7實現(xiàn)了機房服務(wù)器系統(tǒng)虛擬化。服務(wù)器虛擬化以后,整個機房物理服務(wù)器的數(shù)量從原來的二十多臺降為了三臺;保障服務(wù)器工作的UPS電源負載降低了35%左右;減輕了機房制冷系統(tǒng)的負荷;機房總體耗能有所降低??偟膩碚f服務(wù)器虛擬化之后單臺物理機上運行業(yè)務(wù)系統(tǒng)的密度增大了,整個機房提高了運維效率降低了運維費用。但是隨著這兩年來的使用,我們發(fā)現(xiàn)目前的服務(wù)器虛擬化系統(tǒng)存在一些問題,需要升級改造。
本人所在單位的服務(wù)器虛擬化系統(tǒng)是按照最小系統(tǒng)規(guī)格配置的。分別由三臺物理服務(wù)器,一臺千兆交換機,一臺光交換機、一臺FC共享存儲和vSphere虛擬化軟件組成。從邏輯上可以分為系統(tǒng)存儲部分、系統(tǒng)網(wǎng)絡(luò)通信部分和宿主機部分。
系統(tǒng)存儲部分組成如下:三臺物理服務(wù)器上安裝了HBA光纖通道卡,通過8G速率的光纖與光交換機連接;虛擬化共享存儲的控制器上自帶光纖接口,通過8G速率的光纖與光交換機連接。三臺物理服務(wù)器可以通過光纖與光交換機組成的“光通路”訪問共享存儲,實現(xiàn)服務(wù)器虛擬化系統(tǒng)的數(shù)據(jù)讀寫。改造前服務(wù)器虛擬化系統(tǒng)連接拓撲圖如圖1所示。
圖1 改造前服務(wù)器虛擬化系統(tǒng)連接拓撲圖
系統(tǒng)網(wǎng)絡(luò)通信部分組成如下:每一臺物理服務(wù)器均配置了八個網(wǎng)口,目前僅僅使用其中三個網(wǎng)口與一臺千兆交換機連接;在這臺千兆交換機上劃分了三個網(wǎng)絡(luò)Vlan:虛擬化系統(tǒng)遷移時需要用到的vMotion業(yè)務(wù)所在網(wǎng)絡(luò)Vlan,管理虛擬化系統(tǒng)時需要用到的Management業(yè)務(wù)所在網(wǎng)絡(luò)Vlan,還有虛擬服務(wù)器對外提供服務(wù)使用到的業(yè)務(wù)Vlan。前兩個Vlan是保障服務(wù)器虛擬化系統(tǒng)自身能夠正常工作的基礎(chǔ);后一個Vlan是系統(tǒng)內(nèi)運行的虛擬機保持對外服務(wù)的通道。每臺物理服務(wù)器使用三條千兆網(wǎng)線分別通過不同的網(wǎng)口連接到系統(tǒng)千兆交換機對應(yīng)的Vlan網(wǎng)口。
服務(wù)器虛擬化系統(tǒng)與其他網(wǎng)絡(luò)系統(tǒng)的關(guān)系如下所述。服務(wù)器虛擬化系統(tǒng)內(nèi)的千兆交換機通過一個設(shè)置為Trunk工作模式的網(wǎng)口與上一級核心交換機連接,同時另外一個設(shè)置為Trunk工作模式的網(wǎng)口與遠端工作現(xiàn)場的一臺交換機連接。通過上述兩條鏈路,系統(tǒng)內(nèi)運行的辦公業(yè)務(wù)類虛擬機給本單位接入核心交換機的用戶提供日常辦公相關(guān)服務(wù);設(shè)備控制相關(guān)的虛擬機給遠端工作現(xiàn)場的工控設(shè)備提供數(shù)據(jù)存儲和遠程自動控制服務(wù)。
經(jīng)過兩年的實際運行,我們發(fā)現(xiàn)在生產(chǎn)環(huán)境下這套服務(wù)器虛擬化系統(tǒng)存在以下問題。首先系統(tǒng)中的交換機與上一級核心交換機之間、系統(tǒng)交換機與遠端工作現(xiàn)場交換機之間只有一條物理鏈路,只要發(fā)生故障,它們與虛擬化系統(tǒng)之間的通信就會中斷。其次在服務(wù)器虛擬化系統(tǒng)中,僅僅有一臺千兆交換機,這臺交換機即需要負擔虛擬化系統(tǒng)內(nèi)部的網(wǎng)絡(luò)流量,又需要承擔與系統(tǒng)內(nèi)虛擬服務(wù)器進行業(yè)務(wù)交互的網(wǎng)絡(luò)流量,在系統(tǒng)內(nèi)虛擬機大規(guī)模遷移時交換機容量捉襟見肘;同時因為設(shè)備故障或者意外造成這臺交換機停止工作會使所有虛擬化服務(wù)器無法訪問,造成虛擬化系統(tǒng)內(nèi)運行的全部業(yè)務(wù)對外服務(wù)中斷。
因為這套服務(wù)器虛擬化系統(tǒng)已經(jīng)使用了兩年左右,在功能上能夠滿足單位的日常需要,所以這次升級系統(tǒng)的主要目的是盡量提高系統(tǒng)的可靠性。在計算機系統(tǒng)中可靠性的提升一般采用冗余設(shè)備的方法。但是計算機系統(tǒng)不僅僅是物理硬件的堆砌,還包含運行在物理硬件上的各種軟件。因此在做冗余設(shè)置提升系統(tǒng)可靠性時,不僅要考慮硬件配置,還要考慮軟件設(shè)置。
為了提升服務(wù)器虛擬化系統(tǒng)中使用的交換機與單位其它交換機之間通信的可靠性,從物理上看,我們可以直接在這兩臺交換機之間增加一條千兆網(wǎng)線,以實現(xiàn)鏈路冗余。而實際上在不對交換機做任何配置的情況下,兩臺交換機之間直接連接兩條網(wǎng)線會在交換機之間形成環(huán)路,產(chǎn)生廣播風暴,使交換機無法正常工作。
可以在交換機中啟用STP協(xié)議(生成樹協(xié)議)或配置鏈路聚合功能解決冗余物理鏈路的環(huán)路問題。
交換機中的STP協(xié)議啟用以后,會根據(jù)當前交換機的物理連接拓撲生成邏輯上的、無環(huán)路的交換機樹形拓撲,通過關(guān)閉環(huán)路中上層交換機指定端口的方法,使環(huán)路中一條物理鏈路處于工作狀態(tài),而另一條處于不工作狀態(tài)。當處于工作狀態(tài)的鏈路中斷時,原本中斷狀態(tài)的鏈路才會啟用。這樣可以實現(xiàn)物理鏈路冗余,但是STP協(xié)議切換鏈路花費的時間比較長,在鏈路切換時會產(chǎn)生較長的中斷時間。
在交換機上配置鏈路聚合功能,會將兩臺交換機之間連接的多條物理鏈路,看成一條邏輯鏈路,解決了鏈路備份與環(huán)路的矛盾。根據(jù)對交換機的配置,一些物理鏈路可以同時工作,在增加交換機之間通信帶寬的同時,提供了鏈路冗余;另一些物理鏈路可以作為備份鏈路存在,平時鏈路上沒有數(shù)據(jù)傳輸,當上文中工作鏈路中某一條中斷后,由備份鏈路補上。
經(jīng)過綜合考慮,我們選擇在交換機上開啟STP協(xié)議同時配置鏈路聚合,使用STP協(xié)議防止物理鏈路自環(huán);使用鏈路聚合技術(shù)為交換機之間增加冗余物理鏈路,實現(xiàn)交換機之間鏈路可靠性與性能的提升。
為了解決虛擬化系統(tǒng)內(nèi)的一臺千兆交換機單點部署的問題,我們增加了一臺新的同型號交換機并且在兩臺交換機之間實施了堆疊配置。交換機堆疊是一種交換機集群技術(shù),在兩臺同型號的交換機之間通過指定接口把兩臺交換機連接起來并在交換機上啟動堆疊配置,堆疊后的交換機對外呈現(xiàn)出一臺交換機的特性。這臺通過堆疊技術(shù)實現(xiàn)的邏輯交換機,只有一個管理IP,接口數(shù)量和性能都得到了加強,配合跨設(shè)備鏈路聚合技術(shù),可以實現(xiàn)交換機的熱備。也就是說,一臺物理服務(wù)器的兩個網(wǎng)口,分別連接到堆疊交換機中的兩臺物理交換機,并將這兩個來自不同物理交換機的端口在堆疊后的邏輯交換機內(nèi)做端口聚合配置。當堆疊交換機中的一臺物理交換機故障后,服務(wù)器可以通過堆疊交換機中的另一臺物理交換機通信。
圖2 改造后服務(wù)器虛擬化系統(tǒng)連接拓撲圖
綜上所述,我們制定如下升級方案。新增一臺千兆交換機,與虛擬化系統(tǒng)中的原千兆交換機使用千兆網(wǎng)線分別通過兩組物理網(wǎng)口連接組成堆疊交換機。從三臺物理服務(wù)器上,通過空余的網(wǎng)口分別為vMotion業(yè)務(wù)所在Vlan、Management業(yè)務(wù)所在Vlan和業(yè)務(wù)網(wǎng)絡(luò)所在Vlan增加一條冗余千兆網(wǎng)線,連接到堆疊交換機中新增的物理交換機上。實施堆疊配置后的兩臺物理千兆交換機和其他外圍交換機連接時,可以從兩臺物理交換機上使用千兆網(wǎng)口同時連接到外圍交換機的兩個網(wǎng)口上,在堆疊交換機和外圍交換機上同時配置端口聚合。改造后服務(wù)器虛擬化系統(tǒng)連接拓撲圖如圖2所示。
將虛擬化系統(tǒng)中的一臺交換機的19號網(wǎng)口和20號網(wǎng)口依次與另一臺新增交換機的20號網(wǎng)口和19號網(wǎng)口連接起來。
使用Telnet連入一臺物理交換機的配置系統(tǒng),依次運行interface stackport 0/1,port interface GigabitEthernet 0/0/19 enable,quit;依次運行interface stack-port 0/2,port interface GigabitEthernet 0/0/20 enable,quit。
使用Telnet連入另外一臺物理交換機的配置系統(tǒng),依次運行interface stack-port 0/1,port interface GigabitEthernet 0/0/19 enabl e,quit;依次運行interface stack-port 0/2,port interface GigabitEt hernet 0/0/20 enable,quit。
重新啟動兩臺交換機,啟動后會組成堆疊交換機。
除了交換機堆疊之外,交換機之間的級聯(lián)和交換機與服務(wù)器的連接使用兩個網(wǎng)口通過網(wǎng)線對應(yīng)連接對端網(wǎng)口,交換機系統(tǒng)內(nèi)以手工負載分擔模式配置鏈路聚合。下面以虛擬化系統(tǒng)內(nèi)堆疊后形成的邏輯交換機與核心交換機之間的鏈路聚合配置為例予以說明。
在堆疊交換機上做如下配置:interface eth-trunk 1,trunkport GigabitEthernet 0/0/1,trunkport GigabitEthernet 1/0/1,port link-type trunk,port trunk allow-pass vlan 10 to 100。
在核心交換機上的配置與堆疊交換機上的類似,僅僅是把trunkport GigabitEthernet 1/0/1命令改為trunkport GigabitEthernet 0/0/2。
通過配置堆疊交換機的GigabitEthernet 0/0/1口和GigabitEthernet 1/0/1與核心交換機的GigabitEthernet 0/0/1和GigabitEthernet 0/0/2口實現(xiàn)了鏈路匯聚。
結(jié)論:經(jīng)過本次升級,優(yōu)化了多個可能會出現(xiàn)單點故障的網(wǎng)絡(luò)結(jié)構(gòu),整個系統(tǒng)的性能和可靠性均有了很大的提升。此后單臺交換機或者單條鏈路的故障再也無法中斷虛擬化系統(tǒng)對外提供服務(wù)。