由于工作需要,需要架设windows群集环境。一般情况下我个人习惯在架设某个环境前先在虚拟机上做一遍实验,这样最起码能知道一些细节问题。首先我们不要把windows群集和NLB群集弄混了。NLB群集功能强大,适合大规模网络环境,架设时工作组、域环境均可。Windows群集适合小网络环境,最多支持8个节点,架设时必须需要域的环境。下面我们一起看一下这次的环境架设过程
本次架设分为四个环节
一、:域环境搭建、添加
二、:共享存储设备的添加
三、:群集环境搭建、群集节点添加
四、:web故障迁移测试
环境拓扑图如下
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395550gL8Y.jpg"></a>
一、搭建域环境,将server1和server2加入到域中(略)
二、添加共享存储设备
由于我们是虚拟环境,存储设备自然也得用虚拟机上的虚拟磁盘来实现
关闭server1和server2,编辑虚拟机server1
添加2块虚拟磁盘,一块用于群集仲裁,一块用于数据存储
<a href="http://img1.51cto.com/attachment/201003/24/620835_126939555339xP.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_12693955541scy.jpg"></a>
为server1添加存储设备:启动server1,添加我们刚才所创建的2块磁盘,并对其进行分区、格式化(server2此时是关闭状态) 进入server1磁盘管理后,对其进行如下操作
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395555lc9h.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395558kME9.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395560tvRt.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395561wD2o.jpg"></a>
完成上述设置后关闭server1
为server2添加共享磁盘(server1目前是关闭状态)
编辑虚拟机server2,然后添加刚才在sserver1上新建的两块磁盘,因为这两台公用这两块磁盘,所以我们添加时应该选择添加已经存在的
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395563GKuM.jpg"></a>
开启server2,添加刚才我们添加的硬盘
打开磁盘管理后,显示如下
<b></b>
<b>这个时候我们不需要对其进行格式化,只对其添加盘符即可</b>
<b>完成上述设置后关闭server2</b>
三、创建群集
在创建群集之前,我们先来解决一个即将发生的问题,由于我们是用虚拟机搭环境,默认情况下虚拟机中的虚拟磁盘不支持多台共用,所以我们需要修改一下虚拟机的配置文件。修改server1和server2两台虚拟机存放目录下以.vmx结尾的文件,打开文件后在最后一行加入disk.locking = "false" 如果不做此操作的话两台共用一个磁盘的虚拟机启动的时候会有一台报错,报错信息如下
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395568rONs.jpg"></a>
修改虚拟机文件
<a href="http://img1.51cto.com/attachment/201003/24/620835_12693955701e24.jpg"></a>
下面我们开始创建群集:开启server1,然后进入群集管理器,选择“创建新群集”
<b>群集名称和域:域填写我们所在的域名,群集名称随便</b>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395576XoNy.jpg"></a>
添加群集的第一个节点:默认情况下server1就会把自己添加进来
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395579KaD9.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395582MAiZ.jpg"></a>
群集IP地址:群集IP地址是192.168.1.100,这个地址是对外服务器群集对外公布供用户访问的地址
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395585SR5t.jpg"></a>
群集服务账户:这时候我们填写域管理员的用户名和密码以及所在的域
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395587ZVB2.jpg"></a>
群集仲裁:正常情况下应该显示E盘,如下图
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395590d9za.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395593lBLf.jpg"></a>
群集创建成功,我们可以看到在群集管理器中server1已经添加进来了
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395596Q0AR.jpg"></a>
完成上述设置后重启server1
开启server2,将server2加入到群集(此时server1必须开启)
打开群集管理器,选择添加节点到群集,群集或服务器名的格式是 群集名.域名 如下图
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395599MG9N.jpg"></a>
将自己(server2)添加到群集中
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395602Nss2.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395605WsHZ.jpg"></a>
此时需要填写一下群集验证信息
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395608pZZg.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395611ZucI.jpg"></a>
此时server2已经添加到群集中,如下图
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395614CiIf.jpg"></a>
Windows群集不同于NLB群集,windows群集IP是在群集节点上轮流的,而NLB群集IP是公有的,NLB群集节点本地连接里面都可以看到群集IP,而windows群集不是,如下图
Server1
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395619M1Ay.jpg"></a>
Server2
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395622uOb3.jpg"></a>
四、WEB故障迁移测试:
群集最大的应用就是体现服务器的高可用性,如何保证高可用性就在于是否能否提供不间断服务,当群集某节点故障时,服务不受影响。下面我们看一下实施方法
首先我们分别在server1和server2上面装上IIS,然后我们来演示一下web故障自动迁移
Server1的配置:
首先配置server1上面的IIS,配置完成后我们需要在群集管理器里面设置一下,我们需要设置群集组的所有者,目前的所有者为server1,如下图
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395624Y10s.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395627vNAV.jpg"></a>
下面我们要把组0移动到群机组里面,不然当WEB出现故障时不能实现自动转移
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395630B5D6.jpg"></a>
目前的所有者都属于server1
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395633n20x.jpg"></a>
下面我们要做的是让变更群集组的所有者,将所有者变为server2,不然在server2上面配置IIS主目录时系统会提醒找不到盘符路径的情况。右键单击“群集组”,选择“移动组”
<a href="http://img1.51cto.com/attachment/201003/24/620835_12693956357yHY.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395638ZkgM.jpg"></a>
当群集组所有者权限给予server2后我们在server1上面打开共享磁盘时是没有权限打开的,如下图所示
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395640wVOT.jpg"></a>
Server2配置:
首先配置IIS,server2上面IIS设置应该与server1上面一样并且web站一样,server1和server2的IIS网站主目录均为F:\webroot
在server2上配置完IIS之后,我们应该把群集组所有者权限还给server1,如下图
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395642GUkx.jpg"></a>
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395645Ic2u.jpg"></a>
测试,我们在DC上访问一下群集IP地址
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395647sG4I.jpg"></a>
现在我们可以看到群集IP地址在server1上面
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395651IJTG.jpg"></a>
下面我们把server1的网卡关掉在看一下网站是否能自动实现故障迁移,如下图,当关闭群集某节点后群集切换时间只丢了一个包
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395654JeSR.jpg"></a>
现在我们看到群集IP跑到了server2上面
<a href="http://img1.51cto.com/attachment/201003/24/620835_1269395658UTpk.jpg"></a>
OK,本次试验先到此为止,群集的知识不止这些,比如还会牵扯到数据库的应用等 关于这些,我们将以后接续。由于笔者水平有限,不足之处欢迎各位指正
本文转自q狼的诱惑 51CTO博客,原文链接:http://blog.51cto.com/liangrui/365161,如需转载请自行联系原作者