新聞中心
經(jīng)過500次測試,我們打造出了超好用的虛擬化防火墻
無數(shù)個專注體驗(yàn)、打磨細(xì)節(jié)的日夜,只為最好的產(chǎn)品體驗(yàn)。
說起防火墻,相信大家都不陌生。虛擬化防火墻就是將它搬到“云”上進(jìn)行統(tǒng)一管理,或者將它嵌入到本地設(shè)備節(jié)約物理空間,是防火墻的升級優(yōu)化版本。
安博通在2017年正式推出了虛擬化防火墻產(chǎn)品——安博通虛擬安全網(wǎng)關(guān)。作為SPOS-Base系列產(chǎn)品的核心,該產(chǎn)品至今已成功服務(wù)中興、中科大洋、均瑤集團(tuán)等數(shù)百家客戶,并獲得了使用者的信賴。在它的背后,是一個精益求精、匠心獨(dú)具的研發(fā)團(tuán)隊(duì)和他們無數(shù)個專注體驗(yàn)、打磨細(xì)節(jié)的日夜。
500次性能測試才能發(fā)布1款產(chǎn)品
從2016年產(chǎn)品誕生到2017年產(chǎn)品成熟,虛擬化防火墻的研發(fā)歷時一年。在這一年中,研發(fā)團(tuán)隊(duì)最重要的工作之一就是對產(chǎn)品的各項(xiàng)性能進(jìn)行測試。
虛擬化防火墻產(chǎn)品包含1核2G、2核4G、4核8G和8核16G四種型號,支持KVM和VMware ESXI兩種平臺,SR-IOV和Virtio/vmxnet3兩種網(wǎng)卡類型,任意組合共有16種不同型號。每種型號的產(chǎn)品都經(jīng)歷了幾十輪性能測試:開始1輪測試,出現(xiàn)問題,解決問題,再進(jìn)行5輪測試驗(yàn)證,如此不斷循環(huán),直到產(chǎn)品完全穩(wěn)定。
超過500輪的完整性能測試,才使虛擬化防火墻產(chǎn)品達(dá)到安博通的發(fā)布標(biāo)準(zhǔn),這也是我們對品質(zhì)的一貫追求。
我們用了14天,只改動了3行代碼
在虛擬化防火墻產(chǎn)品發(fā)布前夕,一個突發(fā)狀況驟然來臨。
虛擬化防火墻還沒正式發(fā)布時,就已經(jīng)有用戶預(yù)定了這款產(chǎn)品,等待著安裝使用。為了讓第一批使用者擁有最好的產(chǎn)品體驗(yàn),研發(fā)團(tuán)隊(duì)一直不間斷地測試著產(chǎn)品,排除潛在的問題。
就在距發(fā)布僅有14天的時候,問題出現(xiàn)了:虛擬化防火墻在一款新系列網(wǎng)卡X550上無法正常收發(fā)包。這個問題讓研發(fā)團(tuán)隊(duì)很是意外,因?yàn)榱硪豢钔瑯又С諷R-IOV(單根I/O虛擬化)特性的網(wǎng)卡82599系列已經(jīng)通過了測試,理論上,兩款網(wǎng)卡對于上層虛擬化防火墻來說并無本質(zhì)區(qū)別。
一邊是近在咫尺的發(fā)布日和等待交付的用戶,一邊是產(chǎn)品的“不完美”,哪怕客戶正在使用X550網(wǎng)卡的可能性非常小,研發(fā)團(tuán)隊(duì)依然無法忍受這一“瑕疵”。他們的選擇是在這14天里爭分奪秒,讓產(chǎn)品變得“完美”。
想要解決問題就要先定位問題。研發(fā)團(tuán)隊(duì)發(fā)現(xiàn)在配置接口IP地址后,接口鏈路狀態(tài)突然由up變?yōu)閐own,導(dǎo)致了無法收發(fā)包的問題,經(jīng)過分析,配置IP地址時會自動發(fā)送一個免費(fèi)的ARP(地址解析協(xié)議)報文,來校驗(yàn)網(wǎng)絡(luò)中是否存在重復(fù)IP。那么發(fā)送ARP報文,又怎么會引起接口鏈路狀態(tài)的改變呢?
首先,研發(fā)團(tuán)隊(duì)在centos虛機(jī)上進(jìn)行了發(fā)包測試,結(jié)果一切正常,排除了網(wǎng)卡本身的問題。接著,他們又想到安博通虛擬化防火墻采用了高性能轉(zhuǎn)發(fā)框架DPDK(數(shù)據(jù)平面開發(fā)套件),這也許是問題所在。在使用DPDK自帶的測試程序l2fwd進(jìn)行編譯測試后,他們確定了自己的猜想:問題確實(shí)與DPDK有關(guān)。經(jīng)過代碼調(diào)試,研發(fā)最終將問題精準(zhǔn)定位到發(fā)包函數(shù)下的寄存器語句。
雖然導(dǎo)致問題的語句已經(jīng)定位,但解決方法仍無頭緒。研發(fā)團(tuán)隊(duì)決定換個方向,仔細(xì)研究X550系列網(wǎng)卡的datasheet手冊,尋找解決之道。功夫不負(fù)有心人,他們在手中發(fā)現(xiàn)X550新增了惡意驅(qū)動檢測(MDD)特性,該特性要求VF必須以規(guī)定的方式設(shè)置和使用發(fā)包描述符;而DPDK認(rèn)為VF支持MDD特性會嚴(yán)重?fù)p耗性能,所以暫未支持。為了正常使用DPDK VF,可以在宿主機(jī)上通過3行命令來關(guān)閉MDD特性。
至此,問題終于定位并解決了,14天的堅(jiān)持不懈讓虛擬化防火墻在發(fā)布當(dāng)天以完美的狀態(tài)亮相。短短3行代碼中,凝聚著安博通人追求極致的信念。
我們一直都在,晚9點(diǎn)到凌晨2點(diǎn)的堅(jiān)守
晚9點(diǎn),防火墻產(chǎn)品線研發(fā)團(tuán)隊(duì)的負(fù)責(zé)人亞勇(化名)接到了一通電話,是一位海外客戶對虛擬化防火墻提出了新需求,需要緊急解決。
客戶需要在兩臺centos虛機(jī)上安裝虛擬化防火墻,這對他們來說是比較方便的操作辦法,然而卻不是正規(guī)的產(chǎn)品安裝方式。這種非常規(guī)的安裝方式,需要調(diào)整虛擬化防火墻的代碼來適配虛機(jī);同時,又極易損壞虛機(jī)原有的系統(tǒng)。
時間緊,任務(wù)重,亞勇在了解全部需求后,立即開始規(guī)劃部署方案,他決定修改系統(tǒng)grub,用虛擬化防火墻直接替換原有的centos系統(tǒng)。整個部署過程,適配的要點(diǎn)有3個:1、centos的文件系統(tǒng)為XFS;2、centos的分區(qū)使用了LVM(邏輯卷管理);3、centos的接口使用了DHCP來獲取IP地址和網(wǎng)關(guān)。
為了確保萬無一失,亞勇首先在本地搭建測試環(huán)境,進(jìn)行代碼的修改、調(diào)試和驗(yàn)證;多次驗(yàn)證無誤后,才按既定步驟部署在客戶的虛機(jī)上。問題圓滿解決了,時針也指向了凌晨2點(diǎn)。
“把問題解決了,客戶能夠正常使用了,我才能安心睡覺,要不心里老存著事?!边@是亞勇實(shí)現(xiàn)這次緊急需求后的感受。
客戶對安博通服務(wù)保障的感受就一個字——“快”。安博通創(chuàng)下的實(shí)現(xiàn)新需求平均用時兩周的紀(jì)錄,超出了許多客戶的預(yù)期。客戶對安博通的信任感不止來自于過硬的產(chǎn)品質(zhì)量,也來自于我們對問題、需求的快速響應(yīng)。
這樣的故事,在安博通經(jīng)常發(fā)生。對產(chǎn)品的精雕細(xì)琢,對服務(wù)的快速響應(yīng),早已融入安博通的靈魂。這是安博通人對“工匠精神”的恪守傳承,也是對客戶最用心、讓客戶最放心的一份莊嚴(yán)承諾。