□ 張亞龍
相對于傳統的服務器部署模式,一臺物理服務器部署一個應用軟件,服務器的平均利用率僅占本機性能的10%到15%左右。甚至在很多情況下,空置或者僅提供少量服務,主機也會消耗70%以上的額定功耗,造成機房物理空間和電力的損耗。本文結合主流虛擬化體系的特點,從實際需求出發,提出基于VMware vSphere 虛擬架構的服務器虛擬化部署方案。此方案滿足多種應用情況的服務器利用率,有效減少了在線服務器的數量,從而實現信息化系統的高可用性,并顯著降低其部署成本。
服務器虛擬化就是將多臺物理服務器資源整合成平臺,按照實際需求進行二次分配計算資源,從而讓操作系統和應用具有更高的可用性。當前,虛擬化技術主要應用在服務器虛擬化、遠程虛擬桌面、AI 人工智能、大數據分析等方面。其中服務器虛擬化,對于各級信息化機房節點具有很多現實意義,它可以減少物理機的數量,節約機架空間,以及降低網絡設備、空調、電源、存儲單元等相關設備的消耗,有效降低日常運行的經濟成本。
目前比較成熟的虛擬化技術體系主要有KVM、XEN、VMware 等,其中 KVM 和 XEN 是開源體系。
KVM 是基于Linux 內核的全虛擬化虛擬機系統,其架構由KVM 內核模塊和QEMU-KVM 模擬模塊組成。KVM內核模塊是在Linux 內核的基礎上增加的虛擬機管理模塊,通過調用Linux 內核中已經包含的進程調度、I/O 管理等模塊,結合QEMU-KVM 模擬模塊為虛擬機提供的虛擬化資源進行工作,每一個虛擬機都是QEMU-KVM 的一個進程,由Hypervisor 中的進程調度模塊統一管理調度。由于KVM是虛擬模塊與Linux 內核的結合,模擬的硬件設備在數據交換時路徑操作比較長,以及多次的上下文切換容易造成資源的損耗和高負載。KVM 體系支持的客戶機操作系統包括Linux、Windows 等。由于 KVM 需要 CPU 中虛擬化功能的支持,只可在支持虛擬化功能的CPU 上運行,即具有VT功能的Intel CPU 和具有AMD-V 功能的AMD CPU。
XEN 是半虛擬化的虛擬機系統,其架構由XEN Hypervisor 和虛擬域兩大部分組成。XEN Hypervisor 負責將CPU 和RAM 兩大硬件資源虛擬出互相隔離的資源,供虛擬域使用的同時管理和監控虛擬域的資源和系統運行情況。每個虛擬域就是一個虛擬機環境,其中虛擬域又分為特權虛擬域和非特權虛擬域,特權虛擬域優先級更高。XEN 架構簡約,系統運行較快,虛擬化實現的性能更強,但是由于沒有Linux 內核的支持,系統更新需要重新編譯整個體系,后期維護成本較高,涉及內核升級的安全隱患較大。
VMware vSphere 是一個不開源的虛擬化系統,系統配置流程較完善且獨立封裝。采用SDS 的核心原則,同時從控制層面和數據層面進行虛擬化。虛擬存儲VSAN 采用分布式架構,配合固態硬盤實現高性能的讀寫緩存。同時,外接存儲可以使系統獲得更高的性價比。vSphere 內核的內部運行,使得數據I/O 路徑能提供更高級別的性能。系統集成的vMotion、HA、DRS、FT 等功能模塊可以實現通過前期的服務策略配置達到存儲任務自動化,后期的管理更為便捷。VMware 的虛擬機支持Windows、LINUX 等系統。
本方案采用X86 服務器16 臺,其中全閃存配置ESXi 14 臺,SAS 配置ESXi 2 臺。全閃存配置的主機中使用四分之一容量提供緩存層,四分之三容量提供數據存儲層。SAS 配置的主機提供管理平臺的運行。平臺可用容量有限,后期擴容可采用混合集群,即緩存層使用已有閃存,容量層擴展,把容量較小的SSD 更換為普通的大容量磁盤。使用讀寫分離的緩存算法,配置緩存層中可用緩存的70%用于存儲需要大量讀取的磁盤塊,配置剩余30%緩存層用于執行寫入操作。從而最大限度減少對讀寫速度較慢的磁盤的訪問,提高磁盤使用壽命和整個平臺可用性。
底層的ESXI 主機采用SATA 接口的DOM 電子硬盤,使數據層和底層架構分離,提高X86 服務器的有效空間利用率,降低單一容器造成的系統風險。由于SATADOM 屬于Flash 存儲介質,主要使用NADA Flash 的Floating Gate 存儲電子實現數據存儲,電子多次穿過Floating Gate 后,會導致介質存儲電子能力變弱,甚至導致擊穿,因此要考慮系統運行的讀寫數據量。通常SATADOM 的讀寫壽命在3000 次左右,在平均使用2500 次以上的時候要提高警惕。我們的平臺在上線數月內,就遇到SATADOM 的擊穿情況,其后分析原因,把系統日志的存儲進行了路徑更改,確保了業務的可靠性。
虛擬機數據交換采用千兆交換機4 臺,后臺的背板數據交換采用萬兆交換機2 臺。兩兩做堆疊設置互備。ESXI6.5 本身支持將千兆和萬兆網絡接口用于混合配置下的Virtual SAN 網絡流量。單一使用千兆網絡,系統配置要求設置獨立網口,專門用于Virtual SAN 流量。如果使用萬兆網絡,則網口可以與其他類型網絡流量共享。考慮到主機遷移的速度和通信流量的穩定,本方案選擇萬兆交換機作為背板交換,千兆交換機作為Virtual SAN 數據交換。
關于I/O 控制器,Virtual SAN 支持每個ESXi 主機使用多個I/O 控制器。使用多控制器和單控制器配置ESXi主機的區別在于,多控制器可以實現更高的運行速度,并且在故障發生時,可以把故障的存儲空間隔離在最小范圍,降低平臺數據損失的風險。使用單控制器時,主機中的所有設備都在同一控制器監管之下,因此,控制器故障會影響主機上的所有存儲單元。在本方案中,結合系統可操作性和每臺ESXI 主機的實際磁盤數量,我們選用單控制器。單控制器造成的磁盤數據風險,將通過完善存儲策略進行規避。
針對承載重要業務系統的虛擬服務器,配置HA 功能。在創建集群后,配置HA 模塊,ESXI 主機將根據系統形成的邏輯隊列,對集群中的其他主機進行持續的心跳檢測。當某臺ESXI 主機在連續三個五秒的時間間隔后仍然沒有釋放出心跳信號,該主機就被判斷為發生故障或者網絡的連接出現了問題。在這種情況下,運行在該主機上的虛擬機就會被自動轉移到平臺中的其他主機上。同樣,當一臺主機無法檢測到來自群集的其他主機的心跳檢測,那么該主機便會啟動內部自檢的進程來判斷自己跟群集中其他主機的連接是否出現了問題。如果確實出現了故障,那么系統會自動終止在這臺主機上所有正在運行的虛擬機,并啟動預先設定好的備用主機。對于VMware HA 的故障轉移,虛擬機客戶端的操作系統會識別為硬件故障而進行的重啟,因此,這樣的過程不會改變操作系統的狀態。
針對核心業務的服務器,配置FT 功能,FT 是以集群為基礎的容錯機制。FT 具有比HA 更高的連續性,占用的資源也更多。在創建虛擬機后,FT 隨即創建兩個相同的副本,其中主要副本處于運行狀態,接受虛擬機同步信息,并運行程序。次要副本捕捉主要副本的所有非決定性的操作。在虛擬主機的心跳檢測或者網絡連接出現異常時,主副本立即激活,無中斷接管異常虛擬機中斷的操作,所有關于虛擬機的狀態信息都將被保留。其中,主副本和次副本不允許在同一主機運行。從而避免單一故障。
關于物理服務器的遷移,在面對不同安全等級的業務時使用不同的遷移方式。Vconverter 支持熱克隆和冷克隆兩種模式。核心業務系統或不可中斷的業務采用熱克隆,在不關閉源系統的情況下進行操作。由于轉換過程中源服務器繼續運行,生成的克隆體并不是源服務器的精確克隆,為避免克隆體重要數據的遺失,可在Vconverter 中設置關閉源服務器部分系統服務,克隆結束后需要進行執行同步,且在同步過程中保證不會對源服務器進行重要更改。轉換過程結束后,虛擬服務器接管源服務器。重要業務和數據量較大的服務器采用冷克隆模式,在關機狀態下進行克隆,生成與源服務器一致的克隆體,系統開機上線需注意IP 地址的沖突導致服務錯誤。
基于中國—東盟多語種全媒體融合平臺的應用已經部分上線,其中重要的系統包括全媒體采訪系統、全媒體廣播和新媒體導播系統。
全媒體采訪系統是基于虛擬云平臺的全媒體采編播平臺,實現移動采稿、編輯和審核,通過手機移動端,及時將國內外的新聞稿件、圖片、視頻上傳到本平臺,審核通過后即形成成品稿件,一鍵同步分享至各個新聞平臺。該系統切實促進了新聞時效,增強了媒體影響力。全媒體廣播是一套基于廣播深度定制的可視化系統,將視頻直播與廣播特點深度融合,支持APP 直播和網頁直播,可同時支持最多12 個不同機位在線直播,支持接入攝像頭、手機、DV等輕量化拍攝設備。在廣播直播間畫面直播的同時,隨時接入多路外場視頻,并可靈活切換畫面與在線聽眾互動。系統直播流同時推送至各個直播平臺。新媒體導播系統是全媒體采編播系統里的播出終端,具有強大的數據采集和多元化的網絡交互應用,實現了云資源中播出素材共享和協同,大大提高了廣播節目的時效性及聽眾的參與度。
中國—東盟云平臺尚處在逐步完善的階段,已經對傳統廣播的媒體融合之路產生了極大的推動和促進作用。外采記者、導播等特殊崗位的工作效率得到了很大提升,微信等平臺的在線互動量呈現出井噴式的增長。