天天看點

實戰虛拟化之設計模闆

作者:       範軍 (Frank Fan)  

新浪微網誌:   @frankfan7

Twitter:   @frankfan7

   如果把一個項目比作戰役的話,項目經理是三軍統帥,架構師就是羽扇綸巾運籌帷幄的那位.仗怎麼打,就看你的戰略和戰術和。

   未戰而廟算勝者,得算多也;未戰而廟算不勝者,得算少也。多算勝少算,而況于無算乎!-孫子兵法

<b>一</b><b>   </b><b>挑戰</b><b></b>

<b></b>

大型虛拟化項目涉及面廣,子產品關聯多,架構設計師經常面臨的挑戰有以下幾個方面:

<b>滿足客戶關鍵需求</b>

和關鍵客戶的會談的機會是很寶貴的,能否有效的挖掘商業和技術需求,直接關系到項目成敗。架構師要有清晰的思路來掌控會議的話題和程序。哪些方面需要深入發掘,哪些方面大概覆寫,哪些方面暫時擱置,都要心中有個大概計劃并靈活應對。

需求有了之後,設計并實施的過程中是否全面考慮滿足那些需求呢?

<b>掌控全局和深入局部</b>

技術專家常常容易犯的一個毛病就是隻見樹木,不見森林。有時容易沉浸在技術細節中,而沒能多着眼大布局。有時候對一個設計決定的風險和影響估計不足。

<b>設計實施計劃</b>

技術藍圖之外,還要靠缜密的實施計劃,才能有效利用資源,規避風險和保證品質及進度。

我設計了下面的架構設計圖來說明了虛拟化項目的成功要素。屋頂代表客戶需求,這是我們的終極目的,一切的努力都是要把這個屋頂撐起來。五棵柱子代表虛拟化項目中的關鍵子產品。每棵柱子的技術決定都會對緊接下面一層的風險有影響。再下面的三層分别是假設條件、環境限制,客戶環境。最下面的一層基礎是實施計劃,直接決定了項目執行的成敗。

<a href="http://blog.51cto.com/attachment/201303/202800321.jpg" target="_blank"></a>

<b>二</b><b>  </b><b>案例</b>

光練不說是傻把式,光說不練是假把式,咱還是實戰演習一把練練真把式。

下面的客戶需求摘自VMware VCDX訓練營提供的一個案例

<a href="http://blog.51cto.com/attachment/201303/202900649.jpg" target="_blank"></a>

<a href="http://blog.51cto.com/attachment/201303/202942104.jpg" target="_blank"></a>

謝謝看官耐着性子看到這兒,是不是覺得有點暈,有點亂,不知道從哪兒着手?這就對了。不隻你暈,我也暈。

VCDX最後一關面試的時候是要求30分鐘内對以上客戶需求出個設計草案的,打仗沒章法,那怎麼成?我第一次VCDX面試的失利,原因之一就是因為折在這兒了。說着說着沒詞了,不知道下一步問考官扮演的客戶什麼問題,也不知道是不是滿足客戶需求了。

别急,咱有招兒,翠花,上模闆!

<b>三</b><b>  </b><b>模闆</b><b></b>

我又發明了個圖(您是不是嘀咕了,我好像别的不會,就會畫圖湊字數,糊弄個推薦文章?)個人覺得還是有撥雲見日的功效的(吹吧,接着吹~)

<a href="http://blog.51cto.com/attachment/201303/203022725.png" target="_blank"></a>

咱們把上面零碎地資訊往這模闆裡一填,是不是清晰多了?

解釋一下,ID是該條目的辨別,而OID(Outcome ID)是與此條目有關聯的其他條目ID。好處就是标出了條目直接的關聯,很容易查證是否滿足的需求,并且掌握了設計決定之間的關聯。

我僅僅列出了設計中較為重要的一些考慮因素,細節部分還需具體問題來具體研究。

在客戶需求會議之中着重于模闆的藍色部分,會議中就有章可循。當然不指望一次會議就全弄清楚。

在設計過程中根據藍色部分的資訊,一步步勾勒出綠色部分的大緻資訊,然後再具體細化。

咱們就拿其中一個具體的需求來說事兒吧。

R1  客戶需要把200台實體伺服器虛拟化。下一步直接要考慮的就是 H1:

<b>1  H1-</b><b>目标ESXi</b><b>伺服器選用什麼硬體?大概多少台?</b>

環境限制中的 C3和C4以及條件假設A1 就大概決定了H1

C3:盡可能繼續使用原來的伺服器并說明了其配置

C4:新購買了五台伺服器并說明了其配置

A1:假設15實體伺服器的工作量将在1台ESXi主機上運作,那麼一共200台伺服器

200/15=13.3  取整後是14,再考慮額外2台主機作為Failover Capacity, 14+2=16台

<b>2 </b><b>具體ESXi</b><b>伺服器的配置  </b>

H1有關聯的條目(OID)是H2,H3

H2:需要按照C3來計算所需要的ESXi主機的CPU和RAM需求

Number of vCPU: socket number * core number * 實體主機數(2 * 2  * 200 ) = 400

在第一步中我們預計需14台ESXi主機

400/14=29   一台主機需要滿足29 vCPU

RAM:RAM * 實體主機數 (4 *  200)= 800 G

同理:800G/14= 58G   一台主機需要有58G的<b>可用記憶體</b><b></b>

新購伺服器的配置是:

CPU physical cores:   2-cpu * quad core( 2*4) = 8

Ratio of physical core: vCPU =  8:29 = 1:4  , 還算是穩妥。

RAM:  不清楚

至少RAM要有20%的空餘吧 ,

58G / 80%  = 73G 

這就看記憶體的價格了,可能上128G比較合适

可是我們隻有5台新伺服器啊,16-5=11, 還有11台沒着落呢。

别忘了條件限制中的C3:盡可能使用已有伺服器

已有伺服器隻有4G RAM,這就肯定需要擴容到最大支援的記憶體了。

還有一個案例中透露的細節是,200台主機是分3個階段來虛拟化的。為什麼?第一是 根據需求R2來制定執行計劃P1:  把關鍵應用的伺服器放在最後一個階段。 第二:我們可以利用虛拟化完成後的伺服器,作為ESXi主機來補充新購伺服器的不足

經過以上分析,是不是主機和叢集的架構就出來了?

還沒完呢,存儲網絡的事兒還沒說呢,謝謝很多看官耐着性子聽我羅嗦到這兒.

咱還是下回分解吧。

<a href="http://down.51cto.com/data/2362369" target="_blank">附件:http://down.51cto.com/data/2362369</a>

本文轉自frankfan751CTO部落格,原文連結:http://blog.51cto.com/frankfan/1144708 ,如需轉載請自行聯系原作者

繼續閱讀