作者: 范军 (Frank Fan)
新浪微博: @frankfan7
Twitter: @frankfan7
原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和本声明。否则将追究法律责任。
如果把一个项目比作战役的话,项目经理是三军统帅,架构师就是羽扇纶巾运筹帷幄的那位
.
仗怎么打,就看你的
战略和
战术和。
未战而庙算胜者,得算多也;未战而庙算不胜者,得算少也。多算胜少算,而况于无算乎!
-孙子兵法
一 挑战
大型虚拟化项目涉及面广,模块关联多,架构设计师经常面临的挑战有以下几个方面:
满足客户关键需求
和关键客户的会谈的机会是很宝贵的,能否有效的挖掘商业和技术需求,直接关系到项目成败。架构师要有清晰的思路来掌控会议的话题和进程。哪些方面需要深入发掘,哪些方面大概覆盖,哪些方面暂时搁置,都要心中有个大概计划并灵活应对。
需求有了之后,设计并实施的过程中是否全面考虑满足那些需求呢?
掌控全局和深入局部
技术专家常常容易犯的一个毛病就是只见树木,不见森林。有时容易沉浸在技术细节中,而没能多着眼大布局。有时候对一个设计决定的风险和影响估计不足。
设计实施计划
技术蓝图之外,还要靠缜密的实施计划,才能有效利用资源,规避风险和保证质量及进度。
我设计了下面的架构设计图来说明了虚拟化项目的成功要素。屋顶代表客户需求,这是我们的终极目的,一切的努力都是要把这个屋顶撑起来。五棵柱子代表虚拟化项目中的关键模块。每棵柱子的技术决定都会对紧接下面一层的风险有影响。再下面的三层分别是假设条件、环境限制,客户环境。最下面的一层基础是实施计划,直接决定了项目执行的成败。
二 案例
光练不说是傻把式,光说不练是假把式,咱还是实战演习一把练练真把式。
下面的客户需求摘自VMware VCDX训练营提供的一个案例
谢谢看官耐着性子看到这儿,是不是觉得有点晕,有点乱,不知道从哪儿着手?这就对了。不只你晕,我也晕。
VCDX最后一关面试的时候是要求30分钟内对以上客户需求出个设计草案的,打仗没章法,那怎么成?我第一次VCDX面试的失利,原因之一就是因为折在这儿了。说着说着没词了,不知道下一步问考官扮演的客户什么问题,也不知道是不是满足客户需求了。
别急,咱有招儿,翠花,上模板!
三 模板
我又发明了个图(您是不是嘀咕了,我好像别的不会,就会画图凑字数,糊弄个推荐文章?)个人觉得还是有拨云见日的功效的(吹吧,接着吹~)
请打开此文后面附件,或者下载该图的最新的Excel
模板。您要还有兴趣往下读,需要结合模板,要不肯定一头雾水。
咱们把上面零碎地信息往这模板里一填,是不是清晰多了?
解释一下,ID
是该条目的标识,而OID
(Outcome ID
)是与此条目有关联的其他条目ID
。好处就是标出了条目直接的关联,很容易查证是否满足的需求,并且掌握了设计决定之间的关联。
我仅仅列出了设计中较为重要的一些考虑因素,细节部分还需具体问题来具体研究。
在客户需求会议之中着重于模板的蓝色部分,会议中就有章可循。当然不指望一次会议就全弄清楚。
在设计过程中根据蓝色部分的信息,一步步勾勒出绿色部分的大致信息,然后再具体细化。
咱们就拿其中一个具体的需求来说事儿吧。
R1
客户需要把200
台物理服务器虚拟化。下一步直接要考虑的就是 H1
:
1 H1-
目标ESXi
服务器选用什么硬件?大概多少台?
环境限制中的 C3
和C4
以及条件假设A1
就大概决定了H1
C3
:尽可能继续使用原来的服务器并说明了其配置
C4
:新购买了五台服务器并说明了其配置
A1
:假设15
物理服务器的工作量将在1
台ESXi
主机上运行,那么一共200
台服务器
200/15=13.3
取整后是14
,再考虑额外2
台主机作为Failover Capacity, 14+2=16
台
2
具体ESXi
服务器的配置
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
的可用内存
新购服务器的配置是:
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
主机来补充新购服务器的不足
经过以上分析,是不是主机和集群的框架就出来了?
还没完呢,存储网络的事儿还没说呢,谢谢很多看官耐着性子听我罗嗦到这儿.
咱还是下回分解吧。
附件:http://down.51cto.com/data/2362369
本文转自frankfan751CTO博客,原文链接:http://blog.51cto.com/frankfan/1144708 ,如需转载请自行联系原作者