基於VMware的虛擬機資源池實現(上)-創建資源池

大家將要讀到的是如何使用VMware技術完成一個自動化/流程化(企業內部流程)的虛擬機資源池,這一方案是已經在大型金融企業管理了數千臺虛擬機的實際方案。在大多數做雲的甲方企業或乙方集成商看來,這就是雲計算了,對此,個人稍有保留意見,容後寫務虛文章時再聊。本文適合有系統運維經驗的系統管理員使用,如果實施過程中有不清楚的地方,歡迎Email。個人不喜歡截圖,因爲讀起來太費勁,能看懂圖的人其實只要知道輸入的內容就夠了,看不懂的人貼100張圖也是白搭。。。
1          準備
1.1         選擇服務器
如果機房的承重、電源、空調能承受高密度的刀片服務器,就用刀片吧,主流廠商Cisco,HP,IBM的所謂雲箱整櫃往回買就行,買回來啥網絡、存儲就都OK了,準備的步驟就簡單多了。如果不能,就按照下面的步驟選擇機架式服務器吧。
機架式x86服務器選擇的基本原則是在可接受的故障轉移成本下,密度越高越好。最佳性價比實踐是2路服務器,配2顆Intel當前核數最多的CPU(http://ark.intel.com/#@Processors),256G內存,8個千兆以太網口,2個光纖存儲網口,2塊300G的15k硬盤,至於品牌的選擇,主要就是在考慮功耗、散熱和故障率,回頭我會另寫一篇博客專門說這個比較,現在只說結論,性價比肯定是HP最好,DELL也OK,如果單純要省錢,事實上聯想和浪潮做VMware虛擬化也與進口服務器沒原則差別。
另外有一點,如果明確的知道虛擬機上將運行的都是高性能計算類應用,可將服務器改爲4路服務器,配4顆Intel當前核數最多的CPU,當然Intel2路和4路服務器的CPU是不同產品序列的。事實上,絕大多數計算機系統都是內存敏感的,而且VMware的CPU彈性做的很好,所以內存決定了一臺服務器上VM數量,256G內存能支持大概20-30個VM,當一臺服務器發生故障時,這些VM切換到(這一切換在絕大多數故障前提下都是需要重啓VM的OS的)其他服務器的時間成本可以在10分鐘以內,而內存升級到512G時,虛擬機的切換成本並不是20分鐘,而是1小時以上。8個千兆網口和2個8Gb光纖口是足夠支撐20-30VM的管理和業務帶寬需求的。
這裏補充一句關於虛擬化是否省錢的說明:在現有x86技術下,虛擬化是絕對會省下非常多的錢的,之前有個說法:算上VMware的license,虛擬化與物理服務器成本大致相當。這個說法是有前提的,就是每臺2路服務器上的VM在8個左右。VMware是按照CPU數(不是核數)收費的,現在Intel技術+應用的內存敏感特性使這一說法不再成立,簡單的計算就是1臺服務器8個VM成本持平,那如果是24個,意味着白撿了16臺VM,成本將下降至少2/3。實際環境中的成本計算中,對使用數千臺虛擬機的企業來說,每年剩個3,5千萬絕對不是問題。這個成本問題我回頭也會專門寫一篇博客給出計算的辦法。
1.2         服務器上架
服務器的機櫃安排主要考慮功耗、散熱、高可用。虛擬機資源池的服務器通常比同樣配置的安裝普通OS的服務器耗更多電(因爲資源利用率高,通常普通物理服務器CPU平均利用率過3%的都少,高性能計算除外),當然也就散更多熱,如果在一個標準機櫃裏放滿(比如12臺2路服務器)虛擬化的服務器,單個機櫃應該有承受20A負載的能力。高可用的考量其實就是單個服務器的冗餘電源平均分佈在不同的電路上,同一羣集的服務器應平均分佈在至少兩個機櫃中。如果計劃將機櫃專用於虛擬化,應將接入層交換機部署在機櫃內。
1.3         網絡規劃、跳線和配置
在網絡拓撲二層打通的網絡環境中,可以使用在虛擬交換機進行vLAN的隔離,這意味着在接入層物理交換機上,將端口設置爲trunk,使其可聯通此網絡區域中的任一vLAN。
對於同一臺服務器,需9個千兆接入層交換機接口,其中一個爲遠程控制端口(條件允許的話,應儘量配置)。其他的8個端口中,2個作爲管理端口(使用一個管理IP,對應此服務器的主機名),6個作爲業務端口,管理端口連接的物理交換機端口應設置爲固定vLAN,業務端口連接的物理交換機端口應設置爲trunk。這八個端口應對稱的分佈在兩臺接入層交換機上。
1.4         存儲規劃、跳線和配置
服務器的兩個光纖接口應連接到SAN存儲網絡的兩個互爲冗餘的光纖交換機上,每臺光纖交換機應分別有兩條鏈路連接到互爲冗餘的兩臺存儲設備的兩個SP上,並在交換機上爲此服務器的兩個端口配置到兩臺存儲的各4條鏈路,關於存儲陣列的部署和SAN網絡的規劃,我回頭會再單寫一篇博客。
1.5         dns配置
將規劃好的服務器主機名和對應的管理IP添加到DNS中,以便進行配置的時候可以根據域名解析ESX主機。
1.6         防火牆開通
如果可能的話,應使VC使用的IP、VC的SQL Server數據庫使用的IP、ESX的管理IP均處於一個vLAN中,如果不行,需要開通VC到VC數據庫的1433端口,VC與全部ESX之間的IP級互相訪問(其實也有端口列表,但是非常多,還不如直接開IP級訪問關係)
2          安裝
2.1         ESXi安裝
對於HP、DELL、IBM這樣的大品牌服務器,應使用客製化的特定ESX安裝盤,可大大降低操作系統出現紫屏的概率,聯想和浪潮這樣的服務器就只能用標準版本的ESX安裝盤了,現提供5.5版本的安裝文件和keygen,生產環境驗證可用。
  • 標準ESX5.5安裝盤:VMware-ESXi-5.5U1-RollupISO.iso
  • HP OEM ESX5.5安裝盤:VMware-ESXi-5.5.0-Update1-1746018-HP-5.75.4-Dec2014.iso
  • IBM OEM ESX5.5安裝盤:ESXi-5.5u1-1746018-IBM_20140522.iso
  • 標準VC5.5安裝盤:VMware-vCenter-5.5.0-1891310-20140201-update01.iso
  • VC和ESX5的keygen:VCVMwareESXI5keygen.zip
ESX的安裝過程基本就是下一步,對於所有的提問給出肯定答覆即可,截這些屏實在是沒有意義,安裝過程遇到錯誤的概率也挺大,比如光盤問題、兼容性問題、網絡問題、RIAD問題、驅動問題等,如果需要,可以將問題EMail給我。稍微需要注意下的是安裝完成後的配置,點擊F2進入配置界面,選擇配置網絡,每個條目都進去一下,分別選擇連接了固定vLAN端口的網卡(具體的網卡名字與連線的物理位置不見得對的上,只能一個一個試),禁用IPv6,輸入管理IP/網管/掩碼,輸入DNS服務器和本機域名(要把後綴也輸入,比如,esxbjf20322.mydomain.com),輸入搜索域(比如,mydomain.com),esc退出選擇保存,需重啓服務器,然後,進入管理界面進行測試,如果ping都OK的話,就完工了。
安裝完ESX後,存儲陣列上就能識別到這主機了,在存儲陣列上爲其劃分相應的LUN,每個2T,多少個就看需要了,更多的情況是看你有多少存儲。
2.2         vc安裝
vc的安裝其實就是安裝兩臺win2008 r2x64服務器(可以使用虛擬機,不要把它們加到AD域中),一個裝上sql server 2008 r2 x64,一個裝上vc系統,這些安裝過程基本都是一路回車,不一一截屏了。如果想使用剛裝好的esx來提供虛擬機安裝vc,可使用vsphere client(使用http://esxip就可以下載安裝)連接任一臺esx(IP輸入esx的管理IP,用戶名root,密碼爲你安裝過程中輸入的root密碼),創建虛擬機就行。在安裝過程中所有涉及到密碼的地方都輸入同一個密碼,這樣無論如何你都不回弄混。安裝包可從上文地址下載。
3          配置
VC安裝完畢後,就可以使用vsphere client連接VC(IP輸入VC所在的虛擬機IP,用戶名爲[email protected],密碼是安裝VC過程中輸入的),VC是可以與LDAP和AD集成的,回頭單獨寫一篇博客來說明做法。連接後在系統管理->vCenterServer設置->許可中,輸入VC的許可證號,可從上文中的雲盤下載keygen,然後生成vCenter Server 5 Standard類型的key,或者直接輸入MA69T-A8345-1ZRT1-FC3NK-8AL7X。
3.1         羣集
首先,右鍵點擊VC樹根節點創建數據中心(按地域命名,如bj),在右鍵點擊此數據中心創建集羣(按地域加功能命名,如bjoa),右鍵單擊集羣,選擇編輯設置,將界面上的兩個勾都勾上,以打開HA(高可用,硬件故障時自動vMotion)和DRS(動態資源共享,將虛擬機自動遷移到負載小的ESX上)。再右鍵點擊羣集,添加主機,輸入主機的域名(如esxbjf20322.mydomain.com),輸入root和root密碼,然後一路回車。過程中需要輸入key,可從上文中的雲盤下載keygen,然後生成VMware vSphere 5 Enterprise Plus (unlimited CPU)類型的key,或者直接輸入1F4J3-0030K-CZT21-D1272-2CF3W。
至於每個集羣應該多少臺主機,實話實說企業是絕對達不到ESX的技術上限的,通常羣集裏主機數目就是一次採購中的ESX的數量(需要按分離的網絡功能區進行分散),每個羣集2,3,4,7,8,10臺不等,沒有原則影響,每個羣集的n臺主機內存總和的利用率理論上不高於(n-1)/n,實際上最好別超過60%。
3.2         ESX主機
對每臺ESX,需在配置tab上做如下配置:
3.2.1    時間
時間配置中,點擊屬性,勾選NTP客戶端已啓用,點擊選項,選擇與主機一起啓動和停止,點擊NTP設置,點擊添加,輸入NTP服務器地址,如果企業內沒有,就搭建一個,回頭單寫一篇講如何建時間服務器。勾選重啓NTP服務器以應用更改,點擊確定,點擊確定。
3.2.2    管理網絡
網絡中,點擊標準交換機的屬性,選擇vSwitch,點擊編輯,網卡綁定,選擇,將固定vLAN的兩個網卡都變成活動適配器,注意,上面網絡準備中的網絡連接方式決定了負載均衡策略只能使用基於源虛擬端口ID的路由。點擊Manangement Network,選擇編輯,勾選vMotion,點擊確定,點擊關閉。
3.2.3    存儲
存儲器中,點擊全部重新掃描,然後點擊添加存儲器,下一步,選擇一個LUN,然後一路回車,當然包含一個起名字的過程建議按規則起名(比如,bjoalun001),重複直至所有的lun都添加完畢,在一個ESX裏做完這些操作後,其他ESX屬於存儲陣列上同一個storage group的,應該自動識別這些datastore,如果哪臺沒有,就到它的存儲器界面點擊全部重新掃描就可以。
3.2.4    本地存儲
在清單裏切換到數據存儲和數據存儲羣集,將每臺主機的本地硬盤改成規範的名字(如localesxbjf20322),可通過點擊datastore,然後切換到主機tab,確定該本地存儲屬於哪臺主機。
3.2.5    分佈式虛擬交換機
在清單裏切換到網絡,右鍵單擊數據中心,新建vShpere Distributed Switch,下一步,選擇最高版,下一步,起個規範的名字(如dvsbjoa),端口數改爲6,下一步,選擇所有在同一二層網絡中的ESX的6個業務網卡,下一步,點擊完成。右鍵單擊這個dvs,新建端口組,名稱使用該vlan的IP前綴(如20-33-230),VLAN類型選擇VLAN,VLAN ID輸入這個端口組支持的VLAN ID,此ID對應着物理網絡裏20.33.230.0/24這個vLAN對應的ID,下一步,點擊完成,即可。
下面我們就可以在這個資源池中創建虛擬機了,可以通過模板、模板內自動化腳本、PowerCLI、VBS實現管理員自動管理,可以通過企業內部流程系統實現資源池的流程化管理,這些將在《基於VMware的虛擬機資源池實現(下)-運營資源池》中進行介紹。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章