虚拟机vmware6.5 搭建win2003双节点cluster VMware Workstation 6.0中Cluster配置指南 目录 一、群集介绍... 3 二、群集专业术语... 3 三、实验环境介绍及要求... 4 1、拓扑图... 4 2、软件配置说明... 4 (1) DC软件配置信息... 4 (2) Cluster Node A软件配置信息... 4 (3) Cluster Node B软件配置信息... 5 3、硬件配置要求... 5 (1) 网卡... 5 (2) 共享磁盘... 5 四、安装群集前的准备工作... 6 1、创建共享磁盘... 6 (1) 创建用来保存共享磁盘的目录... 6 (2) 创建仲裁磁盘... 6 (3) 创建数据共享磁盘... 7 (4) 验证共享磁盘是否成功创建... 7 (5) 附加共享磁盘... 8 2、网络及系统配置... 10 (1) 创建群集服务帐户... 10 (2) 添加群集A记录... 12 (3) ClusterNodeA上的共享磁盘配置... 12 (4) 网络配置... 16 (5) ClusterNodeB上的共享磁盘配置... 21 五、安装群集服务... 24 1、在A节点上新建一个群集... 24 2、将B节点加入现有群集... 29 六、配置群集服务... 35 1、群集网络配置... 35 2、心跳适配器优先化... 37 3、仲裁磁盘配置... 38 4、创建一个启动延迟(此操作非必需)... 39 5、测试群集安装... 40 七、故障转移测试... 42 1、初级测试... 42 2、高级测试... 44 (1) 手工模拟故障1次... 44 (2) 手工连续模拟故障4次... 45 (3) 停止群集服务测试... 47 (4) 模拟意外断电时故障转移... 49 八、结束语... 50 一、群集介绍 服务器群集是一组协同工作并运行Microsoft群集服务(Microsoft Cluster Service,MSCS)的独立服务器。它为资源和应用程序提供高可用性、故障恢复、可伸缩性和可管理性。它允许客户端在出现故障和计划中的暂停时,依然能够访问应用程序和资源。如果群集中的某一台服务器由于故障或维护需要而无法使用,资源和应用程序将转移到可用的群集节点上。 (说明:本文档编写的目的是为了帮助大家实现所关心的如何在VMWare Workstation中完成典型群集的配置步骤,不会具体的涉及到如何安装群集应用程序,如Exchange群集等) 二、群集专业术语 节 点: 构建群集的物理计算机 群集服务: 运行群集管理器或运行群集必须启动的服务 资 源: IP地址、磁盘、服务器应用程序等都可以叫做资源 共享磁盘: 群集节点之间通过光纤 SCSI 电缆等共同连接的磁盘柜或存储 仲裁资源: 构建群集时,有一块磁盘会用来仲裁信息,其中包括当前的服务状态各个节点的状态以及群集转移时的一些日志 资源状态: 主要指资源目前是处于联机状态还是脱机状态 资源依赖: 资源之间的依存关系 组 : 故障转移的最小单位 虚拟服务器: 提供一组服务--如数据库 文件和打印共享等 故障转移: 应用从宕机的节点切换到正常联机的节点 故障回复: 某节点从宕机状态转为联机状态后,仍然继续宕机前的工作,为其他节点分流 三、实验环境介绍及要求 1、拓扑图
六、配置群集服务 1、群集网络配置 (1) 进行专用网络配置。打开群集管理器,单击“群集配置”,单击“网络”,右键选择Heartbeat的属性。(2) 选择“为群集使用启用这个网络”和“只用于内部群集通讯(专用网络)”。 对上图中的几个选项,我稍微做一下解释: 为群集使用启用这个网络: 如果选定了该复选框,群集服务将使用该网络。默认对所有网络选定该复选框。 只用于客户端访问(公用网络):如果您想让群集服务仅使用该网络适配器与其它客户端进行外部通信,那么选择该选项。该网络适配器将不进行节点对节点通信。 只用于内部群集通信(专用网络):如果您想让群集仅使用该网络进行节点对节点通信,那么选择该选项。 所有通信(混合网络):如果您想让群集服务使用该网络适配器进行节点对节点通信和外部客户端通信,那么选择该选项。默认对所有网络选定该复选框。 在本次实验中,我们仅使用到了两个网络:Public Connection和Heartbeat Connection。基于最常见的配置,我们将这两个网络分别作为混合网络和专用网络。 (3) 同样,进行公用网络配置 2、心跳适配器优先化 (1) 由于群集服务总是尝试使用列于首位的网络适配器进行节点间的远程过程调用(RPC)通信。只有当群集服务无法使用第一个网络适配器进行通信时,才会使用列表上的下一个网络适配器。所以我们需要调整一下心跳适配器的优先级。 (2) 启动群集管理器。右击群集名称,然后单击“属性”,在弹出的对话框中单击“网络优先级”选项卡。将Heartbeat Connection 上移至顶部。
2、将B节点加入现有群集 (1) 开启ClusterNodeB节点,同时不要关闭ClusterNodeA,否则无法加入现有群集。打开群集管理器,选择“添加节点到群集”,“浏览”,找到之前创建的群集名ClusterTest。点击“确定”。 (2) 进入添加节点向导。 (3) 选择您要添加到现有群集的节点。我这里选择ClusterNodeB。 (4) 同样,节点加入前会进行群集配置分析。如果分析结果中有任何问题,请着手解决后再往下继续。 (5) 输入群集服务帐号。 (6) 群集配置信息汇总,返回修改请点击“上一步”,继续请点击“下一步”。 (7) 开始“添加节点到群集”的配置操作。 (8) 完成节点添加工作。 (9) 从下图可以看出,ClusterNodeB已成功加入现有群集,目前处于运行状态。 (10) 至此,我们成功的在ClusterNodeA上新建了一个名为ClusterTest的群集,并成功将ClusterNodeB加入该群集中。 (11) 细心的您在ClusterNodeB加入到现有群集后,可能会发现无法在ClusterNodeB上访问原有的共享磁盘。如下图所示。不要奇怪,只是正常现象。因为在群集服务中,同一时刻只能有一个节点对资源拥有所有权。在我这个例子中,此刻仲裁磁盘的所有者是ClusterNodeA,所以ClusterNodeB无法访问。反过来,如果所有者是ClusterNodeB,则会变成ClusterNodeA无法访问共享磁盘。
五、安装群集服务 1、在A节点上新建一个群集 (1) 开启ClusterNodeA,同时保持ClusterNodeB处于关闭状态。展开ClusterNodeA的“开始”菜单,定位到“程序”à“管理工具”,打开“群集管理器”。 (2) 选择“创建新群集”。 (3) 输入您公司的域名和事先准备好的群集名。如果有需要,在DNS中对该群集名建立对应的A记录。 (4) 输入新群集中的第一个节点的计算机名,这里我们选择ClusterNodeA (5) 这时会对群集配置进行一个完全分析。如果有任何一项无法通过检测,务必检查原因、排除问题。故障排除后,不需要重新再来,只需点一下“重新分析”按钮就行。 (6) 输入群集的IP地址,该地址是ClusterNodeA和ClusterNodeB共同虚拟出来的群集IP。 其FQDN地址对应于前面的ClusterTest.test.com. (7) 输入前面创建的群集服务帐号。该帐号可以不是域管理员,但是必须是各节点的本地管理员。 (8) 下图是配置信息汇总。如果发现配置有错误,可以点击“上一步”进行更改。否则点击“下一步”,开始群集创建。 (9) 可以查看创建过程是否顺利。一般来说,只要前面群集前的分析没有问题,创建过程一般都不会有问题的。 (10) 完成新建服务器群集向导。至此,我们已经成功的在ClusterNodeA上配置了群集服务。 (11) 打开群集管理器,验证ClusterNodeA上的群集服务已成功安装。资源所有者均为ClusterNodeA,并均处于联机状态。
5) 至此,有关ClusterNodeA的前期网络和系统的相关配置已结束。接下来按照类似的方法对ClusterNodeB进行配置。 (5) ClusterNodeB上的共享磁盘配置 1)关闭ClusterNodeA,开启ClusterNodeB。在此期间,请保持ClusterNodeA处于关闭状态。原因前面已经说明,不再赘述。(请尽量按照下图的方式关闭ClusterNodeA,而不只是简单的关闭系统) 2) 打开ClusterNodeB的磁盘管理器,可以看到之前创建的共享磁盘同样被系统发现了。只是由于Windows Server 2003系统的设计使然,没有自动为其分配驱动器号。我们需要手工对它分配和ClusterNodeA相同的驱动器号。 3) 为了实验的直观性,建议将卷标也进行修改。卷标名建议和ClusterNodeA上的保持一致。 4) 同样,建议用同样的方法验证一下磁盘是否可正常读写。 5) 至此,我们已完成两个节点的网络和系统相关配置。下面,我们开始进入真正的群集服务安装环节。
(4) 网络配置 1) 为了接下来的实验更加直观,建议把两块网卡进行重命名操作。生产环境也推荐这样操作。 2) Hearbeat Connection网卡(以下改称为心跳网卡)的TCP/IP属性如下。不要对心跳网卡设置默认网关和DNS地址。 3) 按照下图修改心跳网卡的高级TCP/IP属性,目的是禁止心跳网卡的DNS和NetBios查询。这样能够消除可能出现的通信问题,也有利于减少不必要的网络流量。因为服务器群集节点间的通信对于群集的顺畅运转至关重要。 4) 按照微软官方推荐的做法,如果您拥有一个能够以不同速度进行传输的网卡,那么您应该手动指定同一个速度及双工模式。不要对传输速度应用自动选择设置,因为某些适配器在确定速度时可能丢掉一些数据包。这直接影响到群集节点之间的通讯质量。Microsoft建议您将同一路径上的所有设备设定为“10 M”和“半双工”。同时,如果您的网卡支持Teaming冗余,而您又无法确保该特性和群集之间的兼容性时,建议取消该特性。由于虚拟机无法对网卡的物理属性进行该类设置,如下图所示。 故特意从生产环境HP服务器上截取了如下两张图来说明。
(3) ClusterNodeA上的共享磁盘配置 1) 启动ClusterNodeA(不要开启ClusterNodeB,使其保持关闭状态。这样有助于保证附加到共享总线的磁盘上的数据不会丢失或遭到破坏。) 2) 打开ClusterNodeA 的“磁盘管理”,系统会自动找到先前创建的两个共享磁盘。进入 “磁盘初始化和转化向导” 3) “新建磁盘分区”4) 选择建立“主磁盘分区”。 5) 给仲裁磁盘分配一个约定成俗的驱动器号Q。 6) 一定要格式化成为NTFS,同时把卷标改成“Quorum”。7) 以上是对仲裁磁盘进行操作,按照同样的方法,对共享数据磁盘进行操作。分配驱动器号为R,卷标名为Data。(具体过程略)。另外,需要补充一点的是,通常,驱动器盘符“Q”用于仲裁磁盘,而“R”、“S”等字母则常用于数据磁盘。尽管您可以按照个人喜好随意更改,但是建议采用约定成俗的规定。 8) 对共享磁盘的操作完成后,建议验证一下磁盘是否可读写。方法是新建一些文件后再删除,看看是否都正常。
2) 如下图所示,必须勾选“密码永不过期”,建议同时将“用户不能更改密码”勾选。当然,如果您希望每次密码到期前都手工重设密码,以便在您的工作周报中多一个已完成的工作记录,我不反对。 3) 创建完毕后,再将其添加到各个节点的本地管理员组中即可。 (2) 添加群集A记录 如果您需要将运行在群集服务上的应用程序服务(该服务器即为虚拟服务器)以域名的形式对内或对外发布,您可能需要在域控制器的DNS管理器中添加群集名的A记录。例如,本次试验中,我给节点A和节点B通过群集虚拟出来的地址192.168.0.10分配一个对应的A记录名:ClusterTest.test.com
2) 在ClusterNodeB上重复前一个操作,并做相应的修改。 3) 关闭VMware Workstation软件后再次打开,会发现先前创建的共享磁盘均附加到ClusterNodeA和ClusterNodeB上了。 从上两个图中可以看出: 1) 共享磁盘属于SCSI通道1,和系统盘SCSI通道0不在一个共享总线上,符合集群需求 2) 共享磁盘的仲裁磁盘和数据磁盘均位于SCSI通道1上,亦符合集群需求 2、网络及系统配置 (1) 创建群集服务帐户 1) 群集服务需要一个属于可运行群集服务的每个节点上的本地管理员组成员的域用户帐户。因为安装群集服务时需要用到这个用户名和密码,所以该用户帐户必须在配置群集服务前予以创建。该用户帐户只能专门用于运行群集服务,而不能属于个人。建议该账户是普通域账户,而不是域管理员账户。