转载请务必注明原出处。本文在本人Live空间( http://delxu.spaces.live.com/blog/cns!D04F87F9ED029F69!2583.entry)和51cto技术博客( http://delxu.blog.51cto.com/975660/269922)首发。
首先,要确保你采购的硬件在VMware兼容性列表里面。这个网站是必须访问的: http://www.vmware.com/resources/compatibility
其次,内存容量。因为VMware可以榨干硬件的每一滴内存或者运算能力,所以,物理服务器往往向满配方向靠拢。但是,成本的因素有的时候会制约采购。比如当单条8GB的内存是单条4GB内存的4倍价格的时候,你可能会考虑采购2条4GB的内存来代替单条8GB的内存。这个时候,一个具有16个内存插槽的服务器会比一个只具有8个内存插槽的服务器更合适。
再次,CPU的运算能力和集群。构建一个12个CPU的VMware群集,6台双CPU的服务器比3台4-CPU的服务器效率更高(你只损失了2个CPU的运算能力用于HA特性,而不是4个CPU)。当然,如果是构建一个具有120个CPU的虚拟化数据中心,那么就另当别论了。
之后,CPU和内存的匹配。现在CPU的运算能力大大提高,如果CPU只用到20%,而内存使用已经到了80%,显然这不是一个好的方案。比较好结果是内存和CPU能都用到60%-70%,当应用持续增加时,可以考虑添加新的ESX主机。
再再次,本地硬盘。由于ESX集群的应用是必须要外部存储的,因此服务器本地存储通常也就只是安装ESX本身的操作系统,需要的空间不多,一般来说72GB的10Krpm的硬盘就足够了。(现阶段貌似最小的也是146GB了?)
网卡。必须是千兆网卡,万兆更佳,VMware的Best Practice推荐是6个千兆网卡(1个Service Console专用,1个FT,2个VM Network,2个存储网络)。
关于存储网络的选择,请参考其他文档。拙文《 NFS还是iSCSI?关于VMware vSphere的存储连接的选择题》也做了部分分析和判断。
在现阶段(2009年底和2010年初)我的6主机应用中,计划使用双CPU XEON 5540,64GB内存,双146GB SAS硬盘,8个千兆网口的HP BL280c G6刀片服务器。
(2)关于ESX还是ESXi的选择
因为要选择安装HP SIM Agent用来进行硬件健康监控,必须采用带Service Console的ESX。如果没有第三方工具要装,是可以选择ESXi的,因为这个版本没有Service Console,理论上也更少OS的漏洞,需要打的补丁少,维护工作量小,而且还可以节约一部分CPU和内存资源。我选择ESX还考虑可以利用Service Console多一些命令行和Script的管理,以防Host出现问题时,缺乏必要的诊断工具。
因为除了没有Service Console,ESXi和ESX几乎具有完全相同的功能和更高的安全性,更好的性能,所以最近有越来越多的专家推荐用户采用ESXi。关于ESX还是ESXi选择的进一步分析,具体还可参考拙文:《
ESX还是ESXi?这也是个问题》
http://delxu.blog.51cto.com/975660/272098
【ESX4 安装前的准备】
时钟:推荐ESX使用NTP来校时。所以,请准备好局域网内可用的NTP服务器地址(或者如果该ESX能连通Internet的话,也可以用Internet上的NTP服务器地址,比如0.us.pool.ntp.org。不过一般而言,为安全考虑,ESX Host都是和外网不通的)。如果没有NTP服务,则要保证硬件时钟使用的是UTC时间(在BIOS中设置)
网络:必须至少有一块网卡,而且确保网线已经插好(link up)。当然,对于HP刀片服务器不存在这个问题。
为了避免安装之后因为网络问题无法连通Host,建议在安装之前分配好哪一个网口是对应管理VLAN,记录下这个网卡的MAC地址,并配置好上联交换机的端口和VLAN。如果安装时选错,见【ESX安装后配置】章节,来修复这个问题。
分区:ESX4 的service console本身也是一台虚机,运行一个简化的Linux操作系统,4.0版本是存在一个vmdk文件(esxconsole.vmdk)中,而且必须位于一个VMFS分区上,(这可以是一个本地硬盘分区,或者是一个可引导的SAN分区)。通过这个esxconsole (这里指用作管理ESX的那台虚机)不仅可以用命令行或者Script的方式进行ESX的管理,还可以在其中安装第三方的工具(比如HP SIM Agent来进行硬件健康监控)。因此其默认大小5GB偏小,必须在安装的时候手工配置。(也就是不要选自动)
有专家建议建立/opt和/var分区。我个人建议一个比较简单的做法是,对于一个146GB的HD,分50GB给root分区/,这同时保证了/home, /opt和/var不会空间不足。
此外,有一部分内存是分配给esxconsole这台虚机的,默认是300MB左右(根据物理内存大小略有不同)。Swap分区大小默认是内存的2倍。但是esxconsole因为会运行第三方工具,300MB内存偏小。建议调整为800MB(最大值),相应地Swap分区要调整到1600MB。这个分区调整必须在初次安装的时候就做好。
所以安装时候要调整的分区最终是这样的:
-------------------------------------
Mount Point Type Size
/ EXT3 50000MB (50GB)
(none) SWAP 1600MB (1.6GB)
/var/log EXT3 2000MB (2GB)
-------------------------------------
关于分区的更多考虑,请参考Sybex出版Scott Lowe著的《Mastering VMware vSphere 4.0》第23-26页。(这本书网上很多地方下载的到,是学习vSphere 4.0的最佳参考书。)
【ESX4 的安装步骤】
前面的准备工作都做充分了之后,实际安装其实是个很简单的过程。具体安装见拙文:《 VMware vSphere ESX 4 安装图解》
必须注意的是,其中的分区配置是默认的,请根据前一节叙述的建议值进行手工调整。(等我有空重装系统的时候更改之)
【ESX4 安装后配置】
(1) Service Console内存调整
先用vSphere Client连到ESX host(或者vCenter),然后点你要配置的那台ESX Host,并在右边点Configuration → Memory,然后点Properties
内存值可以是256-800之间的某个值,建议直接设成最大的800MB。因为既然是ESX主机,通常内存都不会小于8GB,800MB只是10%。更常见的情况是,管理员们在购买的时候就选择了32GB,64GB甚至128GB内存!(俺个人觉得2个4核至强5500系列CPU配64GB,或者4个4核至强配128GB内存比较合适)
(2) 网卡重新配置
假设你之前完全没有任何VWware ESX环境,一个全新的安装过程是这样:
* 安装ESX Host,安装过程中配置正确的TCP/IP(至少包括静态IP和网关)
* 在客户端上打开一个web浏览器,输入ESX的IP地址,然后下载vShpere Client,并安装在客户机上
* 打开vSphere Client,通过IP地址连接到ESX Host,然后进行安装后的初次配置
如果网卡在安装过程中选错了,那么很有可能安装完以后,用Web方式无法联通ESX HOST,也就无法进行后续的配置。这时候怎么办?
(注:图片截取自《Mastering VMware vSphere 4.0》第46页)
解决方法一:
拔插网线,一个一个网口尝试过来,并重复刷新网页,直到试通为止。
这个办法比较简单,但是对刀片服务器不适用。(刀片服务器的网卡是直接连通背板的,没有网线)
解决方法二:
如果你同时也是网管,你可以重新配置交换机,将ESX网卡对应的端口,都先暂时放进ESX的管理VLAN中。(也可以一个一个试)
解决方法三:
重新配置vmnic和vSwitch之间的连接关系。
1) 用root帐号物理登录到ESX的service console。(HP刀片服务器可以用iLO)
2) 用以下命令查看vmnic
esxcfg-nics -l
3) 用以下命令查看vSwitch
esxcfg-vswitch -l
4) 用以下命令解除vmnic和vSwitch之间的错误配置
esxcfg-vswitch -U vmnic# vSwitch#
其中#是你通过上面2和3命令查看到的
例如
esxcfg-vswitch -U vmnic0 vSwitch0
5) 用以下命令重新绑定vmnic和vSwitch
esxcfg-vswitch -L vmnic# vSwitch#
其中#是你通过上面2和3命令查看到的
例如
esxcfg-vswitch -L vmnic1 vSwitch0
6) 用web方式重试,如果不通,重复步骤4和5,直到试通。
【参考文档】
本文的主要参考的文档如下:
(1) Scott Lowe, 《Mastering VMware vSphere 4.0》
(2) NetApp, TR-3749 《NetApp and VMware vSphere Storage Best Practices》 (在now.netapp.com可以下载到,但是必须有一个now帐号)
(3) VMware Inc., 《ESX and vCenter Server Installation Guide》