?

基于虛擬化技術的云數據中心構建及自動化運維管理

2020-12-07 06:03王曉天
軟件工程 2020年11期
關鍵詞:虛擬化

王曉天

摘? 要:針對傳統數據中心逐漸過渡為云數據中心,以及對云數據中心中大量服務進行更快速地部署,更準確地服務狀態監控的需求。本文提出虛擬化環境下數據中心構建方案,并對云數據中心中大量虛擬機如何進行自動化運維提出解決方法。通過數據中心中集群、虛擬網絡及虛擬存儲的部署,完整地體現了在虛擬化環境下數據中心的構建過程,采用自動化運維平臺對云數據中心中虛擬機及虛擬機中的服務進行批量部署、管理及監控,并將采集到的服務器預警信息及時進行反饋。從而幫助企業快速構建虛擬化環境下的數據中心,提高服務運維的效率,保障服務運行的質量。

關鍵詞:虛擬化;云數據中心;自動化運維;Ansible

中圖分類號:TP393? ? ?文獻標識碼:A

Abstract: With the transition from traditional data center to cloud data center, accurate service status monitoring for a large number of fast-deployed services is required. This paper proposes a data center construction framework in a virtual environment, which provides a solution for automatic operation and maintenance of large numbers of virtual machines in a cloud data center. Through deployment of clusters, virtual networks and virtual storage, the framework fully demonstrates the construction process of data center in a virtual environment. The automated operation and maintenance platform enables us to deploy, manage and monitor the virtual machines and the services in cloud data center in batches, and give a feedback to the warning information collected from server in time. The proposed framework helps enterprises quickly build data center in virtualized environment, improve maintenance efficiency, and ensure service quality.

Keywords: virtualization; cloud data center; automated operation and maintenance; Ansible

1? ?引言(Introduction)

隨著虛擬化技術的不斷發展,企業對服務器運維成本及服務質量的要求,云數據中心已逐漸代替傳統的數據中心,虛擬化環境的合理構建是保證業務連續性的基礎。在虛擬化環境中存在數量眾多的虛擬機,而作為服務器的各虛擬機中運行著不同種類的服務,這導致運維工程師負責管理的服務器及服務的數量進行了成倍地增長。如何對這些虛擬化環境下服務器中的服務進行高效的管理,保障服務運行效率以及服務的穩定性成為虛擬化環境下運維工作的難點問題[1]。本文針對以上問題進行研究,首先提出合理構建虛擬化環境的方案,之后在此虛擬化環境的基礎上提出如何進行服務的自動化部署及監控的解決方案,從而提高虛擬化環境中運維工作的效率,不斷提升服務器運行質效,減少故障發生概率[2]。

2? ?虛擬化技術(Virtualization technology)

2.1? ?虛擬化技術概述

虛擬化技術最早出現在20世紀60代,美國IBM公司在大型機CP-40系統中嘗試虛擬化的實現,隨著小型機以及x86的流行,虛擬化技術越來越成熟[3]。

虛擬化技術把物理上的資源轉變為邏輯上可管理的資源,通過對原本各自獨立的硬件資源整合與池化后進行資源的統一分配及再管理。

虛擬化技術的優點主要包括:(1)提高硬件資源利用率。一臺物理設備的利用率并不會達到100%,例如當磁盤利用率超過70%時即為重負載,磁盤響應時間呈指數增長。虛擬化技術出現后,可以通過集中化的管理來調整“峰值”的問題,同一臺物理機上的多臺虛擬機可被按需分配到資源,而物理機不必額外增加物理資源。(2)提高服務器及應用程序的可靠性。傳統的物理服務器出現計劃外的停機時,服務器上的應用程序必然受到影響,無法保障業務連續性。虛擬化技術可以對虛擬機及其應用程序進行實時監控,當監測到預警時可對虛擬機進行及時的遷移或其他容錯操作,從而保證了虛擬機與應用程序的正常運行[4,5]。

2.2? ?服務器虛擬化

目前應用較多的幾種虛擬化技術為:服務器虛擬化、網絡虛擬化、存儲虛擬化及桌面虛擬化。其中服務器虛擬化技術發展時間最長,應用最為廣泛。它可以將物理服務器的資源集中化管理,將這些資源按照目前服務器上虛擬機對資源需求的優先次序來進行分配,從而達到資源最大的利用率。越來越多傳統的數據中心轉變為采用虛擬化技術的數據中心,通過服務器虛擬化技術減少了物理服務器的數量,提高了服務的可靠性[6]。

2.3? ?虛擬化技術選擇

VMware的vSphere是一組基礎架構虛擬化套件,它能夠提供虛擬化、管理、資源優化、應用可用性和操作自動化等功能。同時可以聚合物理硬件資源并為數據中心提供虛擬資源,是一款數據中心級別的虛擬化產品,也是目前市場占有率較高的一款服務器虛擬化產品。本文將采用vSphere套件進行虛擬化環境的構建。

3? ?虛擬化數據中心(Virtualized data center)

3.1? ?集群構建

本文以兩臺物理服務器為例展現采用vSphere套件構建數據中心過程。

(1)安裝ESXi主機。首先為兩臺物理服務器安裝ESXi操作系統,使其成為ESXi主機,為兩臺ESXi主機配置相同網絡地址的IP地址。

(2)在第一臺ESXi主機中部署vCenter Server,訪問vCenter Server,創建數據中心并在數據中心下創建集群,將兩臺ESXi主機加入vCenter Server管理。

(3)分別在兩臺ESXi主機上創建四臺虛擬機并安裝Linux操作系統。

vCenter Server與ESXi主機及其上虛擬機關系,如圖1所示。

3.2? ?虛擬網絡構建

vSphere中的虛擬網絡主要由虛擬交換機、虛擬端口組、VMKernel端口組、上行鏈路端口和物理網卡組成。虛擬網絡中存在兩種類型的虛擬交換機,一種為標準虛擬交換機,在ESXi主機內部創建。另一種分布式交換機,需要通過vCenter Server創建,跨越ESXi主機。虛擬交換機上可建立端口組,用來連接虛擬機。每個端口組可以設置名字及VLAN ID,一個端口組可以看作是一個VLAN。

構建數據中心中虛擬網絡,首先在第一臺ESXi主機上創建兩臺標準虛擬交換機,在第一臺標準交換機上創建虛擬端口組,并將該ESXi主機上的虛擬機加入此虛擬端口組中。再在第二臺標準交換機上創建VMkernel端口組并設置IP地址,VMKernel端口組主要用于IP存儲、vSphere vMotion遷移及Fault Tolerance等操作。第二臺ESXi主機上做相同操作。虛擬網絡架構,如圖2所示。

3.3? ?虛擬存儲構建

采用Openfiler這款開源存儲管理平臺實現數據中心中存儲部分功能。Openfiler能把標準x86/64架構的系統變成一個強大的NAS、SAN存儲和IP存儲網關,并為管理員提供一個強大的管理平臺。

(1)首先將Openfiler部署為一個虛擬機實例,之后對該虛擬機的磁盤進行LUN的劃分,共劃分為四個LUN,其中三個LUN模擬iSCSI存儲,一個LUN模擬NFS存儲,如圖3所示。

(2)將ESXi主機與存儲進行關聯。在ESXi主機中添加iSCSI存儲適配器后掃描到目前存儲,將目標存儲添加至ESXi存儲中。ESXi主機共關聯三個存儲,第一個為ESXi主機本地存儲“datastore1”,第二個存儲為Openfiler存儲服務器中NFS存儲,第三個為Openfiler存儲服務器中的iSCSI存儲,如圖4所示。

4? 自動化運維平臺(Automated operation and maintenance platform)

通過自動化運維平臺對數據中心中ESXi主機上的虛擬機進行批量的服務部署、服務狀態的監控并及時發布預警信息,從而對數據中心中的虛擬機進行自動化的管理。平臺前端Web部分采用JSP進行開發,服務配置文件的設置等通過shell腳本開發實現,采用Ansible作為主要運維工具。

4.1? ?Ansible概述

Ansible是一款開源的運維自動化工具,是基于Python語言開發的,集合了眾多運維工具的優點,實現了配置管理、應用部署、復雜任務編排等功能。

Ansible基于模塊工作,主要包括:負責和被監控端實現通信的連接插件Connection Plugins;指定被管理主機的清單Host Inventory;Command模塊、自定義模塊;能夠一次性執行多個任務的Playbook。

4.2? ?自動化運維平臺功能實現

選擇ESXi主機中的一臺虛擬機作為主控主機,在這臺虛擬機上部署自動化運維平臺,數據中心中其他幾臺虛擬機作為控制節點,被主控主機管理。

4.2.1? ?虛擬化服務器管理

(1)虛擬機管理??梢栽谫Y源管理界面中的主機管理中看到已經連接到主控主機的虛擬機,對相關虛擬機進行修改和刪除等操作。

(2)批量添加虛擬服務器相關信息:名稱、IP地址段、創建數量、系統用戶名、密碼、操作系統類型、默認狀態,是否授權遠程桌面管理等。如圖5所示。

(3)在管理端服務器上執行autoDHCP.sh將所管理的服務器IP地址與網卡MAC地址綁定。如圖6所示。

4.2.2? ?批量管理服務

對各虛擬化服務器上的服務進行批量管理。

(1)批量編譯部署程序。選擇編譯部署的版本號信息及要編譯部署的環境。這里提供開發、測試、演示、生產四種環境信息。

(2)選擇要編譯的服務內容,確認后信息后,平臺會從版本服務器下載最新提交的程序進行編譯。確認編譯成功,提交資源服務應程序包,將打包好的程序分發至各虛擬化服務器上。

(3)重新啟動服務,加載最新應用程序包。

4.2.3? ?批量服務監控

可以通過系統資源服務信息,查看連接虛擬化服務器的狀態,包括網絡信息:DNS域名解析信息;IP地址信息;系統信息:主機名稱、系統發布版本、內核版、確件信息、虛擬化信息等;硬件信息:CPU個數、線程數、硬件信息、內存信息等;虛擬化服務器中服務運行狀態等。如圖7所示。

通過自動化運維平臺,可以在成千上萬臺虛擬服務器上做到批量執行命令,根據不同業務特性進行配置集中化管理、分發文件、采集服務器數據、操作系統基礎及軟件包管理等。

5? ?結論(Conclusion)

本文詳細闡述了采用虛擬化技術構建云數據中心的方案,包括數據中心中集群、虛擬網絡,以及共享存儲的部署,并提出在虛擬化環境下實現自動化運維的方法,實現了批量的服務部署、服務配置、系統信息監控等功能。有效地提高了運維人員工作質量與效率,降低了運維成本。

參考文獻(References)

[1] 楊瀚琛.探討云數據中心及云平臺技術應用[J].電腦知識與技術,2020(6):79-81.

[2] 沈尚博,袁泉.基于Ansible的自動化運維工具設計與實現[J].信息與電腦,2020(1):120-122.

[3] 馬玉芳.基于Openfiler存儲服務器實現XenServer資源池的存儲共享[J].數字技術與應用,2014(1):47-49.

[4] 周綱.虛擬化技術在計算機技術創造中的運用[J].信息與電腦,2020(2):25-26;29.

[5] 羅志恒,連萬民.基于vCenter平臺的虛擬機的監控與備份[J].科技風,2020(13):107-107;109.

[6] Praddep Singh Rawat, Priti Dimri, Gyanendra Pal Saroha. Virtual machine allocation to the task using an optimization method in cloud computing environment[J]. International Journal of Information Technology: An Official Journal of Bharati Vidyapeeth's Institute of Computer Applications and Management, 2020,12(6):485-493.

猜你喜歡
虛擬化
基于OpenStack虛擬化網絡管理平臺的設計與實現
對基于Docker的虛擬化技術的幾點探討
虛擬化技術在CTC/TDCS系統中的應用研究
虛擬化技術在計算機技術創造中的應用
淺析虛擬化技術的安全保障
H3C CAS 云計算管理平臺上虛擬化安全防護的實現
基于SDN的網絡虛擬化平臺及其隔離性研究
高速公路服務器虛擬化技術應用與探討
基于Citrix的桌面虛擬化技術研究與應用
存儲虛擬化還有優勢嗎?
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合