有客戶聯(lián)系筆者,說在監(jiān)控程序里面看到虛擬機(jī)延遲非常大,讓幫助檢查一下??蛻舡h(huán)境采用8臺(tái)服務(wù)器(每臺(tái)服務(wù)器配置256GB內(nèi)存、6塊 1.2TB 的 SSD)、2臺(tái)萬兆交換機(jī)組成的全閃存vSAN群集,拓?fù)淙鐖D1所示(圖中畫出了2臺(tái)服務(wù)器,其他服務(wù)器未列出)。
用戶的管理流量、虛擬機(jī)流量以及vSAN流量由2臺(tái)華為S6720萬兆交換機(jī)分擔(dān),正常情況下不可能出現(xiàn)延遲的現(xiàn)象。下面是檢查的過程。
圖1 8節(jié)點(diǎn)標(biāo)準(zhǔn)vSAN群集
圖2 172.16.1.4主機(jī)延遲較大
1.使 用vSphere Web Client登 錄 到vCenter Server,在左側(cè)導(dǎo)航器中選擇vSAN群集,在右側(cè)“主機(jī)”選項(xiàng)卡中查看主機(jī)狀態(tài),在清單中可以看到8臺(tái)主機(jī)狀態(tài)正常,主機(jī)CPU消耗、內(nèi)存消耗都在正常范圍以內(nèi);在“虛擬機(jī)”列表中看到虛擬機(jī)的狀態(tài)正常;在“監(jiān)控→問題→所有問題”中查看的有三條警告信息,其中有一條“網(wǎng)絡(luò)延遲檢查”的警告信息。
2.在“監(jiān)控→vSAN→運(yùn)行狀況”的“網(wǎng)絡(luò)→網(wǎng)絡(luò)延遲檢查”選項(xiàng)中的“網(wǎng)絡(luò)延遲檢查結(jié)果”表示172.16.1.4這臺(tái)主機(jī)與其他主機(jī)延遲較大,其他主機(jī)延時(shí)較為正常,如圖2所示。除此以外其他信息正常。
(3)在導(dǎo)航器中選中172.16.1.4這臺(tái)主機(jī),在“配置→網(wǎng)絡(luò)→物理適配器”中查看物理網(wǎng)卡狀態(tài),查看到鏈路速度正常(10000Mb)。其他主機(jī)網(wǎng)卡狀態(tài)及鏈路速度正常。因?yàn)楝F(xiàn)在檢查到的問題是172.16.1.4這臺(tái)主機(jī)與其他主機(jī)之間延遲較大,初步想法是先將這臺(tái)主機(jī)下線檢查,遷移數(shù)據(jù)與虛擬機(jī)到其他主機(jī)。
因?yàn)閼岩墒?72. 16.1.4主機(jī)有問題,所以想先將有問題主機(jī)下線,然后看故障能否解決。
1.在導(dǎo)航器中右擊172.16.1.4主機(jī),在彈出的快捷菜單中選擇“維護(hù)模式→進(jìn)入維護(hù)模式”。當(dāng)前主機(jī)有4臺(tái)虛擬機(jī)正在運(yùn)行。
2.因?yàn)楫?dāng)前主機(jī)是vSAN環(huán)境并且想要下線檢查,所以將進(jìn)入維護(hù)模式前需要將當(dāng)前主機(jī)上的虛擬機(jī)遷移到其他主機(jī),選中“將關(guān)閉電源和掛起的虛擬機(jī)移動(dòng)到群集中的其他主機(jī)上”,同時(shí)選中“將所有數(shù)據(jù)撤出到其他主機(jī)”。
3.當(dāng)前環(huán)境是萬兆網(wǎng)絡(luò)的全閃存磁盤組vSAN環(huán)境,正常情況下遷移這4臺(tái)虛擬機(jī)的數(shù)據(jù)到其他主機(jī),應(yīng)該很快完成,但直到10多個(gè)小時(shí)后仍然沒有完成數(shù)據(jù)的遷移。在“群集→監(jiān)控→vSAN→重新同步組件”中看到仍然還有2.03TB數(shù)據(jù)需要重新同步。
4.這時(shí),筆者分析可能不是服務(wù)器的問題,而是其他問題引起的。登錄vSAN主機(jī)的交換機(jī),發(fā)現(xiàn)交換機(jī)的每個(gè)端口都被添加了如下兩行配置。
詢問管理員得知,因?yàn)橛信_(tái)機(jī)器大量向外發(fā)包,管理員為找出是哪個(gè)IP,對(duì)交換機(jī)進(jìn)行了限速,但找到問題虛擬機(jī)后沒有取消限速配置。
找到問題所在之后,將交換機(jī)端口取消限速即可。另外為了避免再有虛擬機(jī)對(duì)外發(fā)包對(duì)其他網(wǎng)絡(luò)造成影響,可以將vSAN及虛擬化環(huán)境的交換機(jī)的“級(jí)聯(lián)”端口進(jìn)行限速。
1.在本示例中每臺(tái)交換機(jī)的23、24與核心交換機(jī)級(jí)聯(lián),登錄每臺(tái)交換機(jī),將1~22端口取消限速并保存配置即可。批量為1~22端口取消限速的命令格式如下。
2.交換機(jī)取消限速之后,再在“監(jiān)控→vSAN→網(wǎng)絡(luò)→網(wǎng)絡(luò)延遲檢查”中重新測(cè)試,此時(shí)已經(jīng)沒有延遲。
3.交換機(jī)端口速度恢復(fù)正常之后,數(shù)據(jù)同步很快完成。172.16.1.4進(jìn)入維護(hù)模式。然后將該主機(jī)退出維護(hù)模式,至此虛擬機(jī)的IO延遲問題解決。
4.在“監(jiān) 控 → 性 能→vSAN-虛擬機(jī)消耗”,將“時(shí)間范圍”改為24小時(shí),查看取消交換機(jī)限速6小時(shí)后前后速度對(duì)比可發(fā)現(xiàn),取消交換機(jī)端口限速之后吞吐量增加、延遲減小到接近0的狀態(tài)。
說明:交換機(jī)端口qos命令格式為:qos lr cir cir cbs cbs
“cir cir”表示承諾信息速率,整數(shù)形式,取值范圍是64~接口自帶帶寬,例如Ethernet接口帶寬為100000(100Mbps)、GE 接 口帶寬為1000000(1000Mbps,1Gbps)、XG 接 口 帶 寬 為10000000(10Gbps)。
“cbs cbs”表示承諾突發(fā)尺寸,整數(shù)形式,每次突發(fā)所允許的最大流量尺寸,設(shè)置的突發(fā)尺寸必須大于最大報(bào)文長(zhǎng)度,單位是byte。