设置群集用户帐户
群集服务需要一个属于可运行群集服务的每个节点上的本地管理员(Local Administrators)组成员的域用户帐户。因为安装需要用户名和密码,所以该用户帐户必须在配置群集服务前予以创建。该用户帐户只能专门用于运行群集服务,而不能属于个人。
注意:群集服务帐户不需要一定是域管理员(Domain Administrators)组的成员。基于安全原因,建议不要授予群集服务帐户域管理员权利。
群集服务帐户需要下列权利以便在群集的所有节点上正确地发挥作用。“群集配置向导”(Cluster Configuration Wizard)自动授予以下权利:
· 充当操作系统的一部分
· 调整某个过程的内存配额
· 备份文件和目录
· 增加计划优先级
· 作为服务登录
· 还原文件和目录
设置群集用户帐户
1. 单击“开始”,指向“所有程序”,指向“管理工具”,然后单击“活动目录用户和计算机”。
2. 如果域还未展开,单击加号(+)将其展开。
3. 右击“用户”,指向“新建”,然后单击“用户”。
4. 键入群集名称,如下方图7所示,然后单击“下一步”。
图 7. 键入群集名称。
5. 将密码设置设定为“用户不能更改密码”和“密码永不过期”。单击“下一步”,然后单击“完成”创建该用户。
注意:如果您的管理安全策略不允许使用永不过期的密码,您必须在密码到期前,在每个节点上重续密码并更新群集服务配置。
6. 在“活动目录用户和计算机”插件的左窗格中,右击“群集”,然后在快捷菜单上单击“属性”。
7. 单击“将成员添加到组”。
8. 单击“管理员”,然后单击“确定”。这将给予新用户帐户在该计算机上的管理特权。
9. 退出“活动目录用户和计算机”插件。
设置共享磁盘
警告:为了避免破坏群集磁盘,在其它节点上启动操作系统前,确认至少在一个节点上安装、配置和运行了Windows Server 2003。在完成群集服务配置之前,所开启的节点数不要超过一个,这一点至关重要。要继续的话,关闭所有节点。开启共享存储设备,然后开启节点1。
关于仲裁磁盘:仲裁磁盘(quorum disk)用于存储群集配置数据库检查点以及协助管理群集和维持一致性的日志文件。建议遵照以下仲裁磁盘设置步骤:
· 创建一个最小50 MB的逻辑驱动器用作仲裁磁盘。对于NTFS,最佳的大小为500 MB。
· 专门划出一个单独的磁盘作为仲裁资源。
重要:仲裁磁盘故障可能导致整个群集失效;所以,强烈建议您使用硬件RAID阵列上的一个卷。除了进行群集管理外,不要使用仲裁磁盘执行其它任务。
仲裁资源在群集运作中扮演着关键的角色。在每个群集中,一个单一的资源被分配作为仲裁资源。仲裁资源可以是具备下列功能的任何物理磁盘(Physical Disk)资源:
· 将群集注册表复制到服务器群集中的其它节点上。在每个节点上,群集注册表默认保存在:%SystemRoot%"Cluster"Clusdb。而后,群集注册表被复制到仲裁驱动器的MSCS"Chkxxx.tmp文件中。这些文件互为副本。MSCS"Quolog.log文件是一个维持记录所有针对检查点文件的更改的事务日志。这意味着,脱机的节点可以在重新加入群集时追加这些更改。
· 如果群集节点间失去了通信,质询响应协议将启动以防止出现“裂脑”状况。在这种情况中,仲裁磁盘资源的所有者变成群集及所有资源的唯一所有者。所有者随之为客户端提供资源。当拥有仲裁磁盘的节点不正确地运作时,正常的节点将通过仲裁获得设备的所有权。在群集服务安装过程中,您必须为仲裁磁盘提供驱动器盘符。常用的标准盘符为“Q”,本例中亦采用“Q”盘符。
配置共享磁盘
1. 确认仅开启了一个节点。
2. 右击“我的电脑”,单击“管理”,然后展开“存储”。
3. 双击“磁盘管理”。
4. 如果您连接了一个新的驱动器,将自动开启“写入签名和更新磁盘向导”。如果出现该向导,单击“下一步”,完成向导的各个步骤。
注意:该向导自动将磁盘设为动态。要将磁盘复位到基本状态,右击“磁盘n”(n在此处指您正在设定的磁盘),然后单击“还原基本磁盘”。
5. 右击“未分配的磁盘空间”。
6. 单击“新分区”。
7. 将启动“新建分区向导”,单击“下一步”。
8. 选择“主分区”的分区类型,单击“下一步”。
9. 默认将分区设为最小。单击“下一步”。(建议采用多个逻辑磁盘,而不是在一个磁盘上采用多个分区。)
10. 使用下拉框更改驱动器盘符。使用在字母表上比默认列举的字母更靠后的驱动器盘符。通常,驱动器盘符“Q”可以用于仲裁磁盘,而“R”、“S”等字母则用于数据磁盘。
注意:如果您正在计划使用卷装载点,不要对磁盘分配驱动器号。
11. 使用NTFS格式化分区。在“卷标”方框中,键入该磁盘的名称。例如:“驱动器Q”,如下方图8所示。关键是要对共享磁盘分配驱动器标签,因为在还原磁盘时这会大大减少故障排除时间。
图 8. 对共享磁盘分配驱动器标签至关重要。
如果您正在安装64位版本的Windows Server 2003,确认所有的磁盘均格式化为MBR。全局分区表(Global Partition Table,GPT)磁盘不能作为群集磁盘得到支持。确认所有的共享磁盘均格式化为NTFS并指派为MBR Basic。
验证磁盘访问与功能
1. 启动“Windows Explorer”。
2. 右击一个共享磁盘(比如:“驱动器Q:"”),单击“新建”,然后单击“文本文档”。
3. 确认您可以顺利写入磁盘,并创建了文件。
4. 选择所创建的文件,然后按“Del”键,将其从群集磁盘删除。
5. 对所有群集磁盘重复步骤1至4,确认可以从第一个节点正确地访问它们。
6. 关闭第一个节点,开启第二个节点,并重复步骤1至4,验证磁盘访问和功能。分配驱动器号,以便与相对应的驱动器标签相匹配。对任何附加节点重复相同的步骤。确认所有节点都可以从磁盘读取和写入,关闭除第一个节点以外的所有节点,然后继续阅读本白皮书。
配置群集服务
您必须在安装的第一个阶段提供所有初始配置信息。该步骤是通过使用“群集配置向导”来完成的。
如下方流程图所示,“Form(形成)”(创建一个新群集)和“Join(加入)”(添加节点)所采取的路径有所不同,但是它们共有一些相同的设置页面,即“凭证登录”、“分析”以及“重新分析并启动服务”。而在下列页面上则有少许不同:“欢迎”、“选择计算机”和“群集服务帐户”。在本课的下面两个部分中,您将执行反映所有这些配置路径的向导页面。当您完成了所有的步骤,本白皮书将在第三部分中详细描述“分析”和“重新分析并启动服务”页面,以及这些屏幕所提供的信息的具体意思。
注意:在节点1上进行群集服务配置的过程中,您必须关闭所有其它节点,并开启所有共享存储设备。
配置第一个节点
1. 依次单击“开始”、“所有程序”和“管理工具”,然后单击“群集管理器”。
2. 当出现“打开群集连接向导”提示时,在“执行”下拉列表中,单击“创建新群集”,如下方图9所示。
图 9. “执行”下拉列表。
3. 确认您具有配置群集所必需的前提条件,如下方图10所示。单击“下一步”。
图 10. 前提条件列表属于“新建服务器群集向导欢迎”页面的一部分。
4. 键入群集的唯一NetBIOS名称(最多15个字符),然后单击“下一步”。(在下方图11所示的例子中,群集被命名为“MyCluster(我的群集)”)建议遵守DNS命名规则。
图 11. 建议在命名群集时遵守DNS命名规则。
5. 如果您在本地登录一个不属于“具有本地管理特权的域帐户”的帐户,向导将提示您指定一个帐户。群集服务不会使用该帐户进行启动。
注意:如果您拥有正确的凭证,步骤5所提到的提示,如图12所示,可能不会出现。
图 12. “新建服务器群集向导”提示您指定一个帐户。
6. 由于可能对群集进行远程配置,因此您必须确认或键入将要作为第一个节点创建群集的服务器的名称,如下方图13所示。单击“下一步”。
图 13. 选择将要作为群集中第一个节点的计算机名称。
注意:“安装”向导可以验证所有的节点是否都可以看到共享磁盘。在复杂的存储区域网络中,磁盘的目标识别符(TID)有时可能有所不同,而且“安装”程序可能错误地检测到磁盘配置对其无效。要解决这个问题,您可以单击“高级”按钮,然后单击“高级(最小)配置”。
7. 下方图 14显示“安装”程序现在将分析节点,查找可能导致安装出现问题的硬件或软件问题。检查所有警告或错误信息。您还可以单击“详细信息”按钮,了解有关每个警告或提示的详细信息。
图 14. “安装”程序分析节点,查找可能存在的硬件或软件问题。
8. 键入唯一的群集IP地址(本例为:172.26.204.10),然后单击“下一步”。
如下方图15所示,“新建服务器群集向导”通过使用子网掩码选择正确的网络,自动与其中一个公用网络关联群集IP地址。群集IP地址只能用于管理,而不能用于客户端连接。
图 15. “新建服务器群集向导”自动与其中一个公用网络关联群集IP地址。
9. 键入在预安装时创建的群集服务帐户的“用户名”和“密码”。(在下方图16的例子中,用户名为:“Cluster(群集)”)在“域”下拉列表中选择域名,然后单击“下一步”。这时,“群集配置向导”将验证用户帐户和密码。
图 16. 向导提示您提供在预安装时所创建的帐户。
10. 检查“摘要”页面,如下方图17所示,确认所有将用于创建群集的信息均准确无误。如果需要,您可以使用仲裁按钮,更改由默认自动选择的磁盘指派的仲裁磁盘。
本屏幕上所显示的摘要信息可用于在出现灾难恢复状况时,重新配置群集。建议您保存并打印一份硬拷贝,与服务器上的更改管理日志保持一致。
注意:“仲裁”按钮也可用于指定一个多数节点集(Majority Node Set,MNS)仲裁模型。在您创建MNS群集时,这是主要的配置区别之一。
图 17. 建议采用的“群集配置”页面。
11. 检查所有在群集创建过程中遇到的警告或错误。具体操作是单击加号查看更多信息,然后单击“下一步”。出现在“创建群集”页面的警告和错误如图18所示。
图 18. 出现在“创建群集”页面上的警告和错误。
12. 单击“完成”,结束安装。下方图19显示最终的步骤。
图 19. 设置一个新的服务器群集的最终步骤。
注意:要查看详细的摘要,单击“查看日志”按钮,或者查看保存在该位置:%SystemRoot%"System32"LogFiles"Cluster"ClCfgSrv.Log的文本文件。
验证群集安装
使用“群集管理器”(CluAdmin.exe),在节点1上验证群集服务安装。
1. 依次单击“开始”、“所有程序”和“管理工具”,然后单击“群集管理器”。
2. 确认所有的资源均顺利地实现了联机,如下方图20所示。
图 20. “群集管理器”验证所有的资源均顺利地实现联机。
注意 原则上,不要将任何东西放到群集组中,不要从群集组中取出任何东西,也不要使用群集组中的任何东西执行群集管理以外的操作。
配置第二个节点
在另一个节点上安装群集服务所需的时间要比花在第一个节点上的时间少。“安装”程序基于第一个节点的配置,在第二个节点上配置群集服务网络设置。与此同时,您还可以通过远程操作为群集添加多个节点。
注意:对于本部分,开启节点1和所有的共享磁盘,然后开启所有其它节点。这时,群集服务将控制对于共享磁盘的访问,以便杜绝任何可能破坏卷的机会。
1. 在节点1上打开“群集管理器”。
2. 单击“文件”,单击“新建”,然后单击“节点”。
3. 将启动“添加群集计算机向导”,单击“下一步”。
4. 如果您没有通过正确的凭证进行登录,将要求您指定一个对群集中所有节点具有管理权利的域帐户。
5. 输入您要将其添加到群集的节点的机器名称,单击“添加”。重复该步骤,如下方图21所示,添加您想要的其它节点。当您添加完了所有的节点,单击“下一步”。
图 21. 对群集添加节点。
6. “安装”向导将对所有节点执行分析,以便确认它们得到了正确的配置。
7. 键入用于启动群集服务的帐户密码。
8. 检查所显示的用于确认的摘要信息。摘要信息将用于在其它节点加入群集时对其进行配置。
9. 检查群集创建过程中遇到的所有警告或错误,然后单击“下一步”。
10. 单击“完成”,结束安装。
安装后的配置:心跳配置
现在,每个节点上的网络都已得到了正确的配置,而且群集服务也已配置完毕,这时您需要配置网络角色,以便定义各个网络在群集中的功能。这里有一份“群集管理器”中网络配置选项的列表:
· 针对群集应用启用: 如果选定了该复选框,群集服务将使用该网络。默认对所有网络选定该复选框。
· 仅用于客户端访问(公用网络):如果您想让群集服务仅使用该网络适配器与其它客户端进行外部通信,那么选择该选项。该网络适配器将不进行节点对节点通信。
· 仅用于内部群集通信(专用网络):如果您想让群集仅使用该网络进行节点对节点通信,那么选择该选项。
· 所有通信(混合网络):如果您想让群集服务使用该网络适配器进行节点对节点通信和外部客户端通信,那么选择该选项。默认对所有网络选定该复选框。
本白皮书假定仅使用两个网络,并解释如何将这两个网络分别作为混合网络和专用网络进行配置。这是最常见的配置。如果您拥有可用的资源,建议使用两个专门的冗余网络用于内部群集通信。
配置心跳
1. 启动“群集管理器”。
2. 在左窗格中,单击“群集配置”,单击“网络”,右击“专用”,然后单击“属性”。
3. 单击“仅用于内部群集通信(专用网络)”,如下方图22所示。
图 22. 使用“群集管理器”配置心跳。
4. 单击“确定”。
5. 右击“公用”,然后单击“属性”(如下方图23所示)。
6. 单击选定“针对群集应用启用该网络”复选框。
7. 单击“所有通信(混合网络)”,然后单击“确定”。
图 23. “公用属性”对话框。
心跳适配器优先化
配置完群集服务如何应用网络适配器的角色后,下一步是对内部群集通信应用进行优先排序。这仅适用于两个或两个以上被配置为节点对节点通信的网络。屏幕右边的优先级箭头指定了群集服务使用各个网络适配器在节点间进行通信的先后顺序。群集服务总是尝试使用列于首位的网络适配器进行节点间的远程过程调用(RPC)通信。只有当群集服务无法使用第一个网络适配器进行通信时,才会使用列表上的下一个网络适配器。
1. 启动“群集管理器”。
2. 在左窗格中,右击群集名称(位于左上角),然后单击“属性”
3. 单击“网络优先级”选项卡,如下方图24所示。
图 24. “群集管理器”中的“网络优先级”选项卡。
4. 确认“专用”网络列于最顶部。使用“上移”或“下移”按钮,更改优先顺序。
5. 单击“确定”。
配置群集磁盘
· 启动“群集管理器”,右击您想从群集删除的任何磁盘,然后单击“删除”。
注意:默认状态下,所有磁盘并不在相同的总线上,因为系统磁盘将为它们创建物理磁盘资源(Physical Disk Resources),并对其进行群集。因此,如果节点拥有多条总线,可能列出的某些磁盘将无法用作共享存储,例如:内部SCSI驱动器。应该从群集配置删除这些磁盘。如果您计划对某些磁盘实施“卷装载”(Volume Mount)点,您可能要删除这些磁盘的当前磁盘资源,删除驱动器号,然后创建一个未分配驱动器号的新的磁盘资源。
仲裁磁盘配置
“群集配置向导”自动选择将作为仲裁设备的驱动器,并将使用50 MB以上的最小分区。您可能要把自动选择的磁盘更改为您自己专门指派的仲裁磁盘。
配置仲裁磁盘
1. 启动“群集管理器”(CluAdmin.exe)。
2. 右击位于左上角的群集名称,然后单击“属性”。
3. 单击“仲裁”选项卡。
4. 在“仲裁资源”列表框中,选择一个不同的磁盘资源。在下方图25中,“仲裁资源”列表框中所选定的是“磁盘Q”。
图 25. “仲裁资源”列表框。
5. 如果磁盘拥有的分区不止一个,单击您要在其中保存群集指定数据的分区,然后单击“确定”。
创建一个启动延迟
当出现所有的群集节点均同时启动并尝试附加到仲裁资源的情况时,群集服务可能无法启动。例如:在发生电源故障后,同时对所有节点恢复电力时,可能出现这种情况。要避免这类情况的发生,增加或减少“显示操作系统列表用时”设置。要找到该设置,单击“开始”,指向“我的电脑”并右击鼠标,然后单击“属性”。单击“高级”选项卡,然后在“启动与恢复”下方,单击“设置”。
测试安装:在“安装”程序结束后,有好几种验证群集服务安装的方法。其中包括:
· 群集管理器:如果仅完成了节点1的安装,启动“群集管理器”,然后尝试连接到群集。如果已安装了第二个节点2,在任意一个节点上启动“群集管理器”,然后确认第二个群集显示在列表上。
· “服务”小程序:使用“服务”小程序确认群集服务已显示在列表上并已启动。
· 事件日志:使用“事件查看器”检查系统日志中的“ClusSvc”条目。您会看到有关确认群集服务已经顺利形成或加入一个群集的条目。
· 群集服务注册表项:确认群集服务安装程序将正确的项写入注册表。您可以在HKEY_LOCAL_MACHINE"Cluster下找到许多注册表设置。
· 单击“开始”,单击“运行”,然后键入“虚拟服务”名称。确认您可以连接并看到资源。
测试故障转移(验证资源将执行故障转移)
1. 依次单击“开始”、“程序”和“管理工具”,然后单击“群集管理器”,如下方图26所示。
图 26. “群集管理器”窗口。
2. 右击“磁盘组1”组,然后单击“移动组”。该组及其所有资源将转移到另一个节点。稍后,“磁盘F:、G:”将在第二个节点上实现联机。在窗口中观察该转移。退出“群集管理器”。
恭喜!您已经完成了所有节点上的群集服务配置。服务器群集已经完成可以运作了。您现在可以准备安装群集资源,比如:文件共享、打印机卷筒、诸如分布式事务协调器(Distributed Transaction Coordinator)、DHCP、WINS等群集识别服务、或者诸如Exchange Server或SQL Server等群集识别程序。
附录 高级测试
现在,您已经配置好了您的群集并验证了基本的功能和故障转移,您可能想执行一系列的故障情境测试,来演示预期的结果,并确保群集在发生故障时会正确地进行响应。并不是在每一次实施时都需要进行这种程度的测试,但是如果您刚开始接触群集技术,而且不熟悉群集的响应方式,或者您正在自己的环境中实施一个新的硬件平台,这将有助于进行深入的了解。所列出的预期结果是针对结合默认设置的干净群集配置,并未考虑任何用户自定义的故障转移逻辑。这不是一个包含所有测试的完整列表,而顺利完成这些测试并不能认为已经得到了“许可”或准备好进行生产运作。
测试:启动“群集管理器”,右击一个资源,然后单击“启动故障”。该资源将进入故障状态,然后将重新启动并在同一节点上回到联机状态。
预期结果:资源将在相同的节点上返回联机状态
测试:在相同的资源上,再执行上方“启动故障”测试三次。在第四次故障时,资源将对群集中的另一个节点执行故障转移。
预期结果:资源将针对群集中的另一个节点实施故障转移
测试:将所有资源转移到一个节点上。启动“计算机管理”,然后单击“服务与应用程序”下方的“服务”,停止群集服务。在另一个节点上启动“群集管理器”,确认所有资源均在该节点上正确地执行了故障转移并返回联机状态。
预期结果:资源将针对群集中的另一个节点实施故障转移
测试:将所有资源转移到一个节点上。在该节点上,单击“启动”,然后单击“关闭”。这将关闭该节点。在另一个节点上启动“群集管理器”,然后确认所有资源均在该节点上正确地执行了故障转移并返回联机状态。
预期结果:资源将针对群集中的另一个节点实施故障转移
测试:将所有资源转移到一个节点上,然后按服务器前方的电源按钮将其关闭。如果您有一台符合ACPI(高级配置和电源接口)标准的服务器,该服务器将执行“紧急关闭”功能进行关闭。在另一个节点上启动“群集管理器”,确认所有资源均在该节点上正确地执行了故障转移并返回联机状态。
297150 ACPI计算机上的电源按钮可能强制执行紧急关闭(Power Button on ACPI Computer May Force an Emergency Shutdown)
预期结果:资源将针对群集中的另一个节点实施故障转移
警告:执行“紧急关闭”测试可能导致数据遭破坏和丢失。不要在生产服务器上执行该测试。
测试:将所有资源转移到一个节点上,然后拔掉服务器的电源线模仿一个硬故障。在另一个节点上启动“群集管理器”,然后确认所有资源均在该节点上正确地执行了故障转移并返回联机状态。
预期结果:资源将针对群集中的另一个节点实施故障转移
警告:执行硬故障测试测试可能导致数据遭破坏和丢失。这是一个极端测试。确认您已备份了所有关键数据,然后在您自己的磁盘上执行该测试。不要在生产服务器上执行该测试。
测试: 将所有资源转移到一个节点上,然后拔掉该节点的公用网络电缆。IP地址资源将失效,组将针对群集中的另一个节点执行故障转移附加信息。预期结果:资源将针对群集中的另一个节点实施故障转移
测试:拔掉专用心跳网络的网络电缆。心跳流量将针对公用网络执行故障转移,同时不会执行其它故障转移。如果发生了其它故障转移,请参见本文档前面有关“配置专用网络适配器”的部分。
预期SCSI驱动器安装
本附录提供一套针对SCSI驱动器安装的一般性指导说明。如果SCSI硬盘供应商的指导说明与此处的指导说明相冲突,请遵照供应商所提供的指导说明。
硬件要求中所列的SCSI总线必须在安装群集服务器之前予以配置。配置涉及:
· SCSI设备。
· SCSI控制器和硬盘,以便其可以正确地运行于共享SCSI总线。
· 正确端接总线。共享SCSI总线必须在总线的每个终端上均拥有一个端接器。群集的各个节点间可能拥有多条共享SCSI总线。
除了以下几页信息外,请参考您的SCSI设备制造商的文档,或者可以向美国国家标准协会(American National Standards Institute,ANSI)索取SCSI规格说明。ANSI网站包含一个可用于搜索SCSI规格说明的目录。
配置SCSI设备
共享SCSI总线上的每个设备都必须有一个唯一的SCSI标识号(ID)。由于多数SCSI控制器默认为SCSI ID 7,因此配置共享SCSI总线包括将控制器上的SCSI ID号码更改为另一个号码,比如:SCSI ID 6。如果共享SCSI总线上的磁盘不止一个,每个磁盘都必须拥有一个唯一的SCSI ID号码。
端接共享SCSI总线:有几种端接共享SCSI总线的方法,其中包括:
· SCSI控制器
SCSI控制器具有可用于端接总线的内部软端接,但是不推荐对群集服务器使用该方法。如果通过该配置关闭一个节点,SCSI总线将被不正确地端接,而且不能正常地运作。
· 存储盒
存储盒也具有内部端接。如果存储盒位于SCSI总线的末端,其内部端接可用于端接SCSI总线。应该将其关闭。
· Y电缆
Y电缆可用于连接位于SCSI总线末端的设备。外部活动端接器随后可以附加到Y电缆的一个分支,以便端接SCSI总线。该端接方法要求禁用或移除设备可能拥有的任何内部端接器。图 27 描绘应该如何对SCSI群集进行物理连接。
图 27. SCSI群集硬件配置示意图。
注意:对于任何位于共享总线末端的设备,都必须禁用其内部端接。Y电缆和活动端接连接器均是推荐的端接方法,因为即使节点未联机时,它们也能提供端接。
在Windows Server 2003服务器群集中,有两种基于光纤通道的存储支持方法:仲裁环和交换架构。 重要:在对这两类光纤通道实施进行评估时,阅读供应商的文档,并确定您了解每种实施的指定特性和限制。
虽然 “Fibre Channel”(光纤通道)这一术语暗示了光纤技术的应用,但是也允许使用铜制同轴电缆进行互连。
仲裁环(FC-AL)
光纤通道仲裁环(Fibre Channel arbitrated loop,FC-AL)是一套相互连接形成一个单一环路的节点和设备集。FC-AL提供了一个能将多达126个设备连接形为一个单一网络的经济的方法。通过SCSI,结合集线器配置的FC-AL服务器群集最多可支持两个节点。FC-AL如图 错误!未找到引用源。.1所示。
1 FC-AL连接
FC-AL以相对静态的配置为双节点和少量设备提供解决方案。环路上的所有设备共享介质,而且从一个设备传输到另一个设备的任何数据包都必须通过所有中间设备。
如果一个双节点服务器群集可以满足您对可用性的需求,那么FC-AL部署就具有以下几个优势:
· 成本费用相对较低。
· 环路可得到扩展以增加存储(虽然不能添加节点)。
· 环路易于光纤通道供应商进行开发。
环路的劣势是难以在组织中进行部署。由于环路上的每个设备均共享同一个介质,因此群集中的整体带宽变窄了。有些组织还可能受到126个设备上限的限制。
交换架构(FC-SW)
对于任何超过两个节点的群集,光纤通道交换架构(Fibre Channel switched fabric,FC-SW)是唯一受支持的存储技术。在FC-SW中,设备在使用光纤通道交换器的多对多拓扑结构中进行连接(如图 错误!未找到引用源。.2所示)。
2 FC-SW连接
当一个节点或设备同FC-SW中的另一个节点或设备进行通信时,通信源和通信对象建立起一个点对点连接(类似一个虚拟电路),并直接进行相互通信。架构本身路由选择从通信源到通信对象的数据。在FC-SW中,并不对介质进行共享。任何设备都可以同其它任何设备进行通信,并以最高总线速度实现通讯。这是一个完全可伸缩的企业解决方案,因此强烈建议同服务器群集进行部署。
FC-SW是SAN中所采用的主要技术。FC-SW的其它优势包括:易于部署,可支持数百万个设备,以及提供故障隔离和改换路由的交换机。另外,不存在像FC-AL中的共享介质,允许更快地进行通信。但是,要知道FC-SW对于供应商来说难以开发,而且交换机的价格昂贵。供应商还必须考虑来自不同供应商或制造商的组件间的互操作性问题。
结合服务器群集使用SAN
对于任何大型群集部署,建议您使用存储区域网络(SAN)进行数据存储。虽然较小的SCSI和独立光纤通道存储设备可以随服务器群集一起运作,但是SAN提供高级容错能力。
SAN是一套连接到常规通信和数据传输基础结构(在Windows Server 2003群集中为FC-SW)的相互连接的设备(比如:磁盘和磁带)和服务器。SAN允许多个服务器接入存储池,同时任何服务器都可以在其中潜在地访问任何存储单元。
注意:提供SAN架构组件和软件管理工具的供应商拥有针对构建、配置、监控和管理SAN架构的广泛的工具。联系您的SAN供应商,了解有关针对您的特殊SAN解决方案的详细信息。
SCSI复位
Windows服务器群集的早期版本假定对于共享磁盘的所有通信应作为一个独立的SCSI总线。该做法略具破坏性,并且没有利用光纤通道的更高级的特性来提高仲裁性能和减少通信中断。
Windows Server 2003中的一个关键改进是群集服务发出一个命令用以打断一个RESERVATION,而StorPort驱动程序可以针对光纤通道拓扑结构上的磁盘执行目标或设备复位。在Windows 2000服务器群集中,整个总线范围的SCSI RESET(复位)得到了发布。这导致总线上的所有设备被断开连接。当SCSI RESET被发布时,很多时间被花在复位可能无需进行复位的设备上,比如:CHALLENGER节点可能已经拥有的磁盘。
Windows 2003中的复位按照以下顺序进行:
1. 目标逻辑单元号码( LUN)
2. 目标SCSI ID
3. 整个总线范围的SCSI RESET
注意
目标复位需要主机总线适配器(HBA)驱动程序中的功能。驱动程序必须是针对StorPort而不是SCSIPort编写的。使用SCSIPort的驱动程序将如同在Windows 2000中使用Challenge和Defense一样。联系HBA制造商,确定其是否支持StorPort。
SCSI命令:群集服务使用下列SCSI命令:
SCSI保留:该命令由主机总线适配器或控制器发出,用于维持SCSI设备的所有权。被保留的设备拒绝所有来自其它主机总线适配器的命令,除了最初对其进行保留的主机总线适配器,即发起者。如果发出了一个总线范围的SCSI复位命令,保留将散失。
SCSI释放:该命令由拥有所有权的主机总线适配器发出;释放SCSI设备,以便让其它主机总线适配器对其进行保留。
SCSI复位:该命令中断目标设备上的保留。有时该命令大体上指“总线服务”。 以下部分概述一些直接影响服务器群集部署的SAN概念。
HBA
主机总线适配器(HBA)是将群集节点连接到SAN的接口卡,其连接方法类似于网络适配器将服务器连接到典型的Ethernet网络的方式。但是,HBA并网络适配器更加不容易配置(除非HBA由SAN供应商预配置)。所有节点中的HBA必须是完全一致的,而且必须采用相同的驱动程序和固件版本。
分区和LUN屏蔽
分区和LUN屏蔽是SAN部署的基础,尤其是它们涉及Windows Server 2003群集部署。
分区
许多设备和节点都可以附加到SAN。由于数据保存在一个单一的“cloud”(存储云)或存储实体中,控制哪些主机可以接入特定设备是很重要的。区域划分允许管理员在逻辑卷中对设备进行分区,从而将设备保留在一个卷中以便为服务器群集所用。这意味着,逻辑存储卷中群集节点和设备间的所有交互具备隔离在区域边界内;而其它SAN的非群集成员则不会受群集行为的影响。
3对两个SAN区域进行逻辑描述(A区域和B区域),每个区域均包含一个存储控制器(分别为S1和S2)
3 分区
在该部署中,节点Node A和节点B可从存储控制器S1访问数据,但节点节点C不可以。节点C可以从存储控制器S2访问数据。
分区需要在硬件层次进行实施(结合控制器或交换机),而不能通过软件来实现。主要的原因是:分区也是一个针对基于SAN的群集的安全机制,因为未经授权的服务器无法访问区域内的设备(访问控制由架构中德交换机来执行,因此主机适配器无法访问未经配置的设备)。如果通过软件形式进行分区,如果软件组件出现故障,群集将无法得到安全保障。
除了提供群集安全性外,分区还对给定SAN环境中的流量进行了限制。端口间的流量只被路由选择到位于相同区域的架构段中。
LUN屏蔽
LUN是SAN中所定义的逻辑磁盘。服务器群集看到LUN并将其认作物理磁盘。LUN屏蔽是在控制器层面执行的,允许您定义LUN与群集节点间的关系。存储控制器通常提供创建LUN层次的访问控制的方法,用以允许给定LUN接入一个或更多的主机。 通过在存储控制器上提供该访问控制,控制器本身可以对设备强加访问策略。
LUN屏蔽提供了比分区更加细微的安全性,因为LUN提供了端口层面的分区方法。例如:许多SAN交换机允许重叠的区域,从而可以使一个存储控制器位于多个区域中。多个区域中的多个群集可以共享这些区域中的控制器上的数据。图 错误!未找到引用源。.4描述了这类情景。
4 多个区域中的存储控制器
A群集所用的LUN可以从B群集屏蔽或隐藏,从而只有授权用户才可以访问共享存储控制器上的数据。
Windows Server 2003群集和SAN的综合部署要求:下方列表重点列出了在综合部署服务器群集和SAN存储解决方案时,需要遵守的一些部署要求。有一份白皮书提供了有关结合服务器群集使用SAN的更完整的信息,
SAN上的每个群集都必须在其自己的区域中进行部署。群集用以保护磁盘访问的机制可对相同区域内的其它群集造成负面影响。通过使用分区将群集流量从其它节点或非节点流量孤立出来,就不存在相互干扰的机会。
位于一个单一节点中的所有HBA必须是同一种类型,并且具有相同的固件版本。许多存储和交换机供应商要求相同区域上——有时必须是在相同架构中——的所有HBA共享这些特性。
群集中的所有存储设备的驱动程序和HBA设备的驱动程序必须具有相同的软件版本。
从来不要允许多个节点接入相同的存储设备,除非它们位于相同的群集中。
从来不要将磁带设备放在群集磁盘存储设备所在的同一个区域。磁带设备可能会误解总线休眠,并在不恰当的时候(如在大型备份过程中)进行倒带。
针对结合Windows Server 2003服务器群集部署SAN的指导方针
除了上一部分所讨论的SAN要求外,强烈建议在服务器群集部署中遵照下列实践:
在一个高度可用的存储架构中,您需要通过多个HBA部署群集的服务器。在这些情况中,始终载入多路径驱动程序软件。如果I/O子系统看到两个HBA,会将其假定为不同的总线,并列举所有的设备,好像它们是每条总线上的不同设备。同时,主机看到针对相同磁盘的多条路经。载入多路径驱动程序的失败将禁用第二个设备,因为操作系统将其所看到的认为是具有相同签名的两个独立磁盘。
不要将群集磁盘的硬件快照暴露回相同群集中的节点。硬件快照必须进入服务器群集以外的服务器。许多控制器提供控制器层面的快照,其可作为完全孤立的LUN暴露于群集。当多个设备拥有相同的签名时,群集性能会下滑。如果快照通过原始磁盘联机暴露回节点,I/O子系统会尝试重写签名。然而,如果快照暴露于群集中的另一个节点,群集服务不会将其识别为一个不同的磁盘,而后果可能是数据遭破坏。虽然这不是一个特定的SAN问题,但是提供该功能的控制器通常被部署于SAN环境中。