故障转移群集(Failover Cluster)可以提供一个高可用性应用程序或服务的网络环境,本章将接受如何搭建iSCSI SAN文件服务器故障转移群集。
我们可以将多台服务器组成一个故障转移群集,这些服务器会协同工作以提高一个高可用性的应用程序或群集内每台服务器被称为一个节点(Node),节点之间通过网络硬件与软件连接在一起对用户提供服务,这个过程被称为故障转移,它让用户能够不中断的继续享有服务器提供的服务。
天太热,其他不高兴写,写一些注意事项,然后再把实验过程写一下。
当群集中的节点发生故障时,会由其他节点接手继续提供服务。不过,当节点之间通信出现问题或太多节点发生故障时,群集就会停止服务,可是群集可以容忍多少个节点发生故障,这要由仲裁配置(Quorum Configuration)决定,Quorum中文就是法定数量的意思,也就是只要群集中仍然正常运行的节点数量达到法定数量,群集就会继续提供服务,否则就停止服务。在停止服务期间,仍然正常的节点会继续监听故障节点是否恢复正常,一旦正常节点的数量恢复到法定数量时,群集就会继续提供服务器。
在计算法定数量时,有的仲裁配置会用到仲裁磁盘,又称为见证磁盘(Witness Disk)。仲裁配置分为以下几种。
此种配置不会用到仲裁磁盘,而所谓多数节点就是正常节点数量占多数的情况下,群集才会提供服务,否则就停止服务。此种配置适用于奇数节点的群集。例如,5个节点的群集,其正常节点的数量必须至少3个,群集才会提供服务。
适用于偶数节点的群集,它在计算法定数量时会将仲裁磁盘计算进来,例如,4个节点+1个仲裁磁盘的群集,可以将其视为5个节点的群集,此时正常节点的数量必须至少3个,群集才会服务。
它和多数节点与磁盘类似,不过将仲裁磁盘改为共享文件夹内的文件。
只要仲裁磁盘脱机·,群集就会停止提供服务(不建议采用)。
我们将通过下图来演示如何搭建一个iSCSI SAN两节点的文件服务器故障转移群集,其仲裁配置默认为多数节点与磁盘。
要创建上图的两节点群集,其软硬件配备必须符合以下要求。可以使用我以前所得vmware workstation来实验,也可以用hyper-v来实验,因为这个现在windows 2012的实验没有涉及虚拟化。
架设群集需要AD域,群集中的节点服务器必须隶属于同一个域,并且应该扮演同样的域角色,也就是都是成员服务器或都是域控。我们的环境域名contoso.com,左上角DC为域控,Node1和Node2两个节点,最下面的服务器为目标服务器,其中将安装Windows Server2012 内置的iSCSI目标服务器软件,不需要加域。
为了让群集能正常运行,因此群集中的两台节点服务器应该都要配备相同或类似的硬件,而且需要安装相同版本的操作系统,包含相同的硬件版本(32位,64位),同时也要安装相同的SP与软件更新。在windows Server 2012系统产品中只有Datacenter与Enterprise版本才具备群集功能,因此2个节点服务器都安装了Windows Server2012 Datacenter。为了方便,域控与目标服务器也都安装Datacenter。
图中两台节点服务器各有三块网卡,分别连接到Public,Private和iSCSI网络。
为了提高故障恢复能力,我们会设置让节点之间也可以通过前面的public网络来通信,她在节点之间因故无法通过private网络通信时,还可以选择public网络。
注:为了避免单一点故障而影响到群集的运行,建议在两个节点与客户端之间,两个节点与目标服务器之间的通信管道采用适当的故障恢复措施,例如以节点与客户端之间来说,可以在节点中利用两块网卡来连接到两个网络,而通过这两个网络都可以和客户端通信。还可以采用具备teaming功能的网卡来提供故障恢复功能,例如可以在public网络采用teaming网卡,但是不要再private网络采用teaming网卡,以免因为延迟问题而影响节点之间的通信的实时性。此外,iSCSI并不支持teaming,因此iSCSI网络不要使用teaming网卡。Teaming就是将一台计算机内的多块网卡,通过驱动程序将其变成一块虚拟网卡,其他计算机通过此虚拟网卡与这台计算机通信,但是数据实际上通过多块物理网卡来传送。Teaming网卡可以提高网络传输速度,提供负载平衡与故障处理功能。Windows Server2012 已经内置网卡teaming功能。
Windows Server 2012 要求存储媒体必须遵照SCSI Primary Command-3 (SPC-3)的标准,尤其是必须支持SPC-3 Persistent Reservation(SPC-3持续保留)。我们要利用Windows Server 2012内置的iSCSI目标服务器来搭建iSCSI目标服务器,通过他创建的iSCSI磁盘支持上述的SPC-3要求。
本例为两个节点的文件服务器群集,因此仲裁配置为多数节点与磁盘,此时除了存储文件的文件磁盘外,还需要一个仲裁磁盘,这两个磁盘要求如下:
我们按部就班的来说明如何搭建群集,以减少出错的机会。
安装完成后,分别改为DC1,Node1,Node2,Target。
为了让群集运行的更有效率,建议调整两台节点服务器的设置。例如,为了让两台节点服务器能够实时通过private网络来监听对方的心跳情况,因此应该避免在这个网络上发送其他不相干的流量;还有iSCSI网络仅用于节点与目标服务器之间使用iSCSI protocol来通信的专用网络,因此也应该避免在这个网络上发送其他不相干的流量。例如,我们最好将节点服务器上连接这两个网络的网络连接的dns和wins流量禁用。
注:Microsoft网络客户端用来访问网络上其他计算机内的共享文件与打印机;Microsoft网络的文件和打印机共享让网络上其他计算机来访问本地计算机上的共享文件与打印机。由于不需要通过private和iSCSI网络与其他计算机有此类型的互动,因此可以禁用。
注:两个节点需要安装相同的更新程序,然而在此建议不要启动自动更新功能,而是由系统管理员手动更新,以便能够确保两个节点拥有相同的更新程序。
注:类型处也可以选择节点的DNS名称,MAC地址或iSCSI发起程序的IQN,IQN必须先到节点Node处查询(在启动iSCSI发起程序后,位于设置标签下的发起程序名处)。
注:可以要求iSCSI发起程序端(群集节点)必须经过验证后才可以连接iSCSI虚拟磁盘,其方法为 勾选启用验证服务界面中的启用CHAP,然后设置用户名与密码,在iSCSI发起程序端必须提供此处的用户名与密码才可以连接iSCSI虚拟磁盘。
反过来说,iSCSI发起程序端也可以验证iSCSI目标,此时需要勾选启用验证服务界面中的启用反向CHAP,然后输入iSCSI发起程序端指定的用户名与密码。
注:如果要更改iSCSI虚拟磁盘或iSCSI目标的设置,可以直接对着iSCSI虚拟磁盘或iSCSI目标单击鼠标右键,然后再弹出的快捷菜单进行设置。
注:iSCSI目标所使用的连接端口号为TCP 3260,在通过服务器管理器安装iSCSI目标时,系统就已经自动在防火墙上开放了端口的流量。
分别到两台节点服务器上设置iSCSI发起程序,以便通过它来连接目标服务器的目标,然后通过目标访问iSCSI虚拟磁盘。
注:如果连接失败,请确认目标服务器的Windows防火墙已经关闭或有例外开发iSCSI流量。
注:如果目标服务器端有要求身份验证,单击高级勾选启用CHAP登陆,输入用户名和密码。
(前面上图我们只看到一块盘,后来检查了下,发现quorum磁盘iSCSI目标中Node1的ip打错,所以没有显示出来)
分别到两台节点服务器安装故障转移群集功能,添加功能-故障转移群集
在开始创建群集之前,强烈建议执行群集验证程序,他会检查节点服务器,网络与存储媒体等是否符合群集的要求。
注:
我们将利用群集创建向导来创建群集。
注:如果要改用其他磁盘来扮演仲裁磁盘:单击群集右侧的更多操作-配置群集仲裁设置。
我们要调整群集内Public,Private,iSCSI网络的用途。
注:如果在窗口中没有看到要管理的群集,请单击连接到群集,然后选择要管理的群集。
在创建文件服务器故障转移群集之前,需要在两台节点服务器的Windows防火墙开放远程卷管理流量,否则无法在群集内创建共享文件夹。由于两个节点之间通过Public网络进行通信,因此首先我们需要找出Public网络的网络位置,然后只需要针对此网络位置来开放远程卷管理即可。
两个节点服务器需要先安装文件服务器角色服务。
注:如果两台节点服务器的Windows防火墙未关闭或没有开发远程卷管理流量,此时将无法添加共享文件夹。
注:通过故障转移群集管理器控制台来共享群集磁盘内的文件夹,不要通过其他方法,例如不要通过文件资源管理器。
注:如果将某个节点暂停,此节点当前拥有的角色仍然会继续提供服务,但是你无法将由其他节点拥有的角色转移到这个被暂停的节点。
注:如果要让群集停止对客户端提供服务-对着群集右键-其他操作-关闭群集,以后选择启动群集服务来重新启动。
如果要从群集中移除某个节点服务器,先查看该节点是否为文件服务器的所有者,如果是,转移到其他节点。
接着通过逐出来移除此节点
请按照以下步骤来删除群集。