周末无事,想起一位同事提起可以用 vmware 来灌 cluster ,一时兴起,也来玩一把。在网上找了找,关于这方面的资料不多,有两篇提到了一些要点,管他,试过就知道了。
系统配置 :
CPU:AMD Athon XP2500+
MEM:256M*2 双通道
硬盘: 80G
OS:winxp+sp1
VMWare GSX server 2.5.1 build-5336
Windows 2003 Enterprise Edition
我一般在我的机器上开一个虚拟机,跑的还蛮顺畅的,没试过开两个会怎么样。不过 512M 的内存应该能抗的住。
废话少说,先用 vmware gsx server 灌好两个 win2003 系统(听一位试过的朋友说 workstation 也可做 cluster ,但他做好后切换的时候切换不过来,只好特意到 www.ttdown.com 下了个 vmware gsx server 版)
由于 cluster 需要域环境,我的主机装的是 winxp ,又不太可能像网上一篇文章说的那样,开三个虚拟机,一台专门做 DC 和 DNS ,我的内存开两台虚拟机都已经够戗了。在微软的网站上搜索了一下,如果 cluster 中的一个节点做成 DC 的话,另外一个节点也要做成 DC 才成 (文章链接 http://support.microsoft.com/default.aspx?scid=kben-us;281662 ) ,二话不说,运行 ->dcpromo ,新建一个 odba.net 的域,将两台虚拟机 test1 , test2 都做成 DC ,其中 test1 还兼职做 DNS 。
每台虚拟机需要两片网卡,设定如下:
Test1
Public:IP - 172.17.0.1 掩码- 255.255.255.0 DNS- - 172.17.0.1
Private: IP - 10.1.1.1 掩码- 255.255.255.0
Test2
Public:IP - 172.17.0.2 掩码- 255.255.255.0 DNS- - 172.17.0.2
Private: IP - 10.1.1.2 掩码- 255.255.255.0
由于跟DC装在一起,所以test2也要装DNS, 并开启区域复制,不然主DNS(也就是节点1)挂掉以后,你会发现在节点2上无法用群集管理器连上虚拟服务器了,这是因为他不认识主机名了。当然这个应该也可以通过更改hosts文件来解决。如果你像我一样还是采用DNS,则test2的网卡设置中,DNS Server要设成172.17.0.2而不是172.17.0.1
接下来,创建共享磁盘柜。
在 vmware gsx server 的程序目录下有个 plainmaker.exe ,就利用他了。把他 copy 到你准备存放共享磁盘柜文件的目录下,假设为 e:/SCSI 。
Cluster 的共享磁盘柜至少需要一个 Quorum Disk 和一个 Shared Disks ,这样我们就需要创建两个 SCSI 磁盘。
plainmaker quorum.pln 200
plainmaker shareddisk.pln 2000
这样就在 e:/SCSI 目录下生成了一下文件
quorum.pln
shareddisk.pln
quorum1.dat
shareddisk1.dat
shareddisk2.dat (网上说只有前面四个,但是我机器上确实有这个 ^_^ )
接下来,在两个虚拟机里面分别添加两个 SCSI 磁盘,都选已存在的虚拟盘,在打开的文件类型选 vmware plain disks ,文件名 quorum.pln , shareddisk.pln 。
最重要的一步,打开每个虚拟机里面的 .vmx 文件 , 在末尾加上 disk.locking="FALSE" 。
另外, Win2003 需要安装 SCSI 的驱动,到 vmware 网站可以下到该驱动的虚拟软驱镜像(地址: http://www.vmware.com/download/downloadscsi.html )。然后将虚拟软驱指向这个镜像,为每个虚拟机装好 SCSI 驱动,然后在磁盘管理里面将两个 SCSI 盘转换为 basic 磁盘,创建主分区,格式化为 NTFS 。给 200M 的那个设置为 Q 分区,卷标 quorum , 2G 的那个设置为 S 分区,卷标 shareddisk( 这样命名只是为了好记,你也可以随便命名)
准备工作差不多了,对了,还要在 AD 新建一个帐号,设为 clusteradmin ,用来建立和管理 cluster 的。
关掉 test2 ,开启 test1 。
运行 ->comclust
新建一个群集,命名为 test , IP 设为 172.17.0.66 ,仲裁盘选 Q 完成后,开启 test2 ,开始 ->comclust ,选添加节点到已有群集
一路ok 。
打开群集管理员,在网络一项中将private设置为只供内部通讯用。在实际的cluster系统中,连接两块private的就是著名的"心跳线了"。
到此,vmware+win2003 cluster 创建完成 。 在此基础上,可以继续试验SQl server和exchange等的cluster 。
作者Blog:http://blog.csdn.net/NinGoo/