微软公司的SQL Server 2005发布已经有一段时间了,先前作了简单的测试安装,感觉确实有不小的改进,在操作上我还是有些不适应,毕竟我不是专门做数据库管理的。菜啊!
之所以会对SQL2005感兴趣,主要是因为很多朋友都在用,而且未来我可能也会接触它。一直以来都想搞一次MDaemon的冗余方案测试,本来打算采用免费的MySQL可是发现目前的4.x版本竟然无法正常运行在MSCS上,无奈等待了有数月之久直到微软的SQL2005发布,哈哈!机器的内存也升级到1.5G,所以决定抱着勇于求知的精神开始筹备测试部署SQL2005群集,年前最后一天班下午没有太多事情就搭建了一个DC+NodeA+NodeB的群集环境,安装SQL2005还是比较顺利的,后来放入第二张盘安装便失败了,以为是因宿主性能造成(在512M内存的虚拟机中安装SQL2005群集,真的是非常得慢,我可怜的硬盘),决定年后上班搭建一个双节点群集环境来做测试,这样一来资源占用应该会小很多,毕竟撤掉一台单独的DC。
昨天是年后的第一天班,处理完手上的工作,下午便开始搭建双节点群集环境。这样强烈使用VMware GSX来作为虚拟机软件,不像VSRV2005R2那样配置方便,但是相对来说整体的操作还是优于VSRV2005R2的,另外就是运行速度,感觉确实要快很多。新版的GSX搭建MCSC还是比较简便的,不必像网上资料中写的需要什么pln工具,直接生成固定容量磁盘后,修改虚拟机的配置文件添加参数就可以了。关于配置参数的资料可以参考:http://goxia.maytide.net/p/vmware_cluster.php
本文主要总结SQL2005的群集部署,所以关于VMware下MSCS环境的搭建步骤就不再重复,直接从主题开始。
测试环境:
1、宿主机
硬件配置:PIV2.4G/1.5G-DDR400/80G-PATA-7200pm/8139C-NIC
操作系统:Microsoft Windows XP Pro With SP2 ENU
虚拟平台:VMware GSX 3.2.1
2、VirtualHost Microsoft Cluster NodeA
硬件配置:PIV2.4G/512M/10G/vlance-NIC/vmxnet-NIC
操作系统:Microsoft Windows Server 2003 EE With SP1 CHS
网卡信息:vlance-NIC:10M 全速半双工/HeartBeat/IP192.168.236.250
vmxnet-NIC:1000M 全速全双 工/Public/IP192.168.199.250/GW192.168.199.2/DNS192.168.199.250/WINS192.168.199.250
承载服务:DC+DNS+WINS+IIS
3、VirtualHost Microsoft Cluster NodeB
硬件配置:PIV2.4G/512M/10G/vlance-NIC/vmxnet-NIC
操作系统:Microsoft Windows Server 2003 EE With SP1 CHS
网卡信息:vlance-NIC:10M 全速半双工/HeartBeat/IP192.168.236.251
vmxnet-NIC:1000M 全速全双工/Public/IP192.168.199.251/GW192.168.199.2/DNS192.168.199.251/WINS192.168.199.251
承载服务:DC+DNS+WINS+IIS
4、Virtual 4G Pln:Qdisk500M/Sdisk3500M
注意:本次测试将仲裁盘和资源盘放在了一起,实际中最佳的做法应当单独配置一个物理磁盘作仲裁使用,为提高安全性还应该为仲裁磁盘配置RAID1。
5、MSCS IP 192.168.199.200
目标实现:成功部署 SQL Server 2005 群集/HostName SQL2005/IP192.168.199.201
群集实施:
1、我手上的SQL2005为企业中文版2CD。首先放入第一张盘,点击“服务器组件、工具、联机丛书和示例”开始SQL2005的群集安装,安装程序会自动检测当前是否为群集环境并为群集安装准备。小提示:MSCS默认环境下,群集组资源中缺少MSDTC组件,所以需要先添加MSDTC后再开始SQL2005的群集安装,否则会出现警告并停止!
2、接受软件使用许可协议。
3、SQL2005在进行初始检测后开始执行安装 SQL2005 所需组件。
4、完成所必需组件的安装。
5、安装程序开始执行系统配置检查。
6、进入SQL2005的安装向导。
7、向导开始执行系统配置检查,因为是安装群集,会自动检查各节点并给出状态提示。因为虚拟机配置的是512M内存,所以这里会“最低硬件要求”的警告,可以忽略!
8、选择要安装的组件,如要得到各组件的详细信息可以选择高级项。
9、进入高级项后就来到了详细的各组件的功能选择,这里可以得到详细的组件信息。根据需要选择组件功能。
10、“实例名”配置中选择“默认实例”。
11、虚拟服务器名称配置中,为此群集命名为sql2005
12、为虚拟服务器配置IP,这里我使用Public作为公共访问,并分配一个IP192.168.199.201,添加后点击“下一步”。
13、在“选择群集组”中选择可以得群集组,因为这里我只有一个默认的群集组,所以点击“下一步”继续。
14、弹出警告,提示我此群集组包含仲裁资源,这是因为我之前配置了一块Pln磁盘并分配两个逻辑分区来做群集,因此在这里会提示警告,可以直接忽略。
15、群集节点配置中,选择可用的节点,因为我当前是双节点群集环境,所以安装向导自动为我选择了NodeA节点。
16、配置远程安装的帐户,这里的帐户必须是各节点上有效的管理员帐户。
17、为服务配置帐户,之前我已经添加了一个名为sql2005的域用户作为SQL服务帐户,所以这里填写上正确的信息。
18、配置群集服务的域组,这里其实我到现在还没有彻底搞明白是什么意思,参看帮助文件,便在域中为每个SQL服务创建对应的全局组。(希望达人能够帮我解答一下此处的意义!)
19、身份验证模式中,选择“混合模式”这和SQL2000的感念是一样的。
20、排序规则我是按照默认选择的。
21、这里我没有选择微软提供的跟踪服务功能。
22、前期的安装配置完成后就准备开始执行正式的文件安装,激动啊!
23、SQL2005的群集安装进度还是很人性化的,这里你可以切换每个节点来监视安装进度。
到这里就是一个漫长的等待了,真是心疼我的硬盘。不过结果很悲惨,在CD1安装完毕后,系统提示我插入CD2,记得年前的测试也是在这里出现问题的,感觉会不会是因为磁盘写延迟,导致另外一个节点没有安装完,我就放入第二张CD造成的呢?抱着幻想我就一直等待,并且监视两台节点的日志,直到节点的硬盘和网卡没有强烈的提示后,我才放入CD2,点击了确定。谁知道接下来就出现了之前测试相同的错误,安装终止并结束了。郁闷!这是怎么回事?检查系统发现SQL2005的服务已经是启动了,这么说服务的安装时成功的。于是进入添加删除程序中,使用更改方式检查SQL2005的安装,发现这里只有添加节点和卸载SQL2005群集两个选择。
重新执行光盘,发现CD2原来是“工具、联机丛书和示例”的安装盘。
于是再次执行安装程序,哈哈,记起来了!之前也重新执行过安装不过放入的是CD1,所以组件选中服务项等都是不安装,我以为红叉代表删除,所以就没敢继续,如果当时直接从CD2执行安装估计也就成功了。
我个人认为,SQL2005的管理工具等组件应该在群集安装后再单独为每个节点安装才是最佳的做法。至于为什么之前会失败只能靠其他达人来做试验来验证了!完成了管理工具等组件的安装,怀着兴奋的心情打开了全新的SQL2005管理工具,默认启动后显示的是连接到服务器的配置页面,这里配置好登录后,可以在管理工具的选项中修改初始打开页面。在“已注册的服务器”窗体中打开SQL2005服务器。
哈哈,SQL2005的群集算是安装完成了。真是令人兴奋!
进入“群集管理器”中检查SQL2005群集的安装,发现没有问题。心理已经非常激动了!
最后来验证一下群集是否真的开始正常工作了,我将NodeB节点关闭后,在NodeA上打开“群集管理器”发现SQL2005的群集资源已经自动并成功地从NodeB上转移到了NodeA,在NodeA上打开SQL2005的管理工具进行服务器连接测试,成功!
至此,SQL2005的群集算是圆满测试成功了。其间也是走了不少弯路,不过最后总算是成功了,心理也得到了安慰。其实SQL2005的群集还是非常简单的,只不过CD2的安装出错到底是因为其本身不支持群集安装还是因为其他原因目前还不知晓,只能等权威的解释了!另外,SQL2005的群集安装需要在拥有活动资源的节点上进行安装。
总算是把文章写完了,今天狂停电,真郁闷!害死我了。最后算是一边写一边发布再编辑,真是费神。此实战总结为个人观点,其中有不足或错误之处还希望大家多多指正!
作者:gOxiA