搭建iSCSI文件服务器故障转移群集

nick814 Windows Server 2016 171 次浏览 3条评论

说明

今天来做一个基于iSCSI存储的两节点的故障转移文件服务器群集。

下图是拓扑图

所有的服务器都是Windows Server 2016,并且使用Windows Server 2016来模拟iSCSI存储。2个节点服务器需要加域,iSCSI服务器不加域。

网络有3个,分别是:

  • Public网络:正常的网络,其中Node1和Node2节点有2块Public网卡,做NIC Teaming。
  • Heart网络:群集的心跳网络,Node1和Node2节点各有一块网卡用于心跳。两台节点服务器之间需要随时监听对方的「心跳(heartbeat) 」情况,以便得知对方是否故障或故障后是否又恢复正常,为了进免受到其他网络流量的干扰,以便实时得知对方心跳状态,因此建议节点之间通过专用网络来通信,例如两个节点各有一块网卡连接这个专用的Heart 网络。

    为了提高容错能力,我们会设置让节点之间也可通过前面的public 网络来通信,它在节点之间因故无法通过private 网络通信时,还可以选择public 网络。

  • iSCSI网络:用于Node2个节点和下面的iSCSI存储通信的网络,只用于iSCSI通信不做其他用途,2个节点和iSCSI服务器都有2块网卡做此功能。

需要说明:

为了避免单一点故隧而影响到群集的运行, 建议在两个节点与客户端之间、两个节点与目标服务器之间的通信链路采取适当的容错措施,例如以节点与客户端之间来说,可以在节点利用两块网卡来连接两个网络,而通过这两个网络都可以跟客户端沟通。也可以采用teaming 网卡来提供容错功能, 例如可以在public 网络采用teaming网卡,但是不要在heart 网络使用teaming网卡,以免因为延迟问题而影响到节点之间通信的实时性,此外iSCSI并不一定支持teaming, 因此iSCSI 网络不要使用teaming 网卡

Teaming就是将—台计算机内的多块物理网卡通过驱动程序将其虚拟成一块虚拟网卡,其他计算机通过此虚拟网卡来与这台计算机通信, 但是数据实际上是通过多块物理网卡来传输。Teaming 网卡可以提高网络传送速度、提供负载平衡与容错功能。WindowsServer 2016 已经内建网卡的teaming 驱动程序,不需要另外安装。此功能在WindowsServer 2016 内被称为NTC Teaming (NIC组)。

Node节点设置

我们会看到好多网卡,我们重命名一下,这样看起来清楚点

建立NIC 组合网卡

多了块网卡我们自己设置下

设置心跳及iSCSI网卡

对用不到的Microsoft 网络客户端与Microsoft 网络的文件和打印机共享协议停用(取消勾选即可)。因为此范例是使用TCP/IPv4, 因此建议取消勾选TCP/IPv6 。

Microsoft 网络客户端用来访问网络上其他计算机内的共享文件与打印机,Microsoft 网络的文件和打印共享是让网络上其他计算机来访问本地计算机上的共享文件与打印机。由于不需要通过Heart与iSCS I 网络来与其他计算机进行此类通信,因此可以禁用。

继续针对iSCSI 络连接重复以上步

继续Node2 重复以上步

两台Node节点都加域。

器与存储设备

安装iSCSI目标服务器

设置存储卷

创建仲裁卷

生产环境仲裁卷也就这么大就够了,里面没什么数据的

依次添加2台Node的iSCSI网卡的IP地址

一般好像还没见到有人去设置密码的,因为iSCSI一般都是独立的网段和独立的交换机也不接入现有网络的,所以没看到有人设置密码。

然后我们在用同样方法建立File共享卷,但是iSCSI目标就不需要在设置了。

ISCSI 目标所使用的端口号码为TCP 3260, 在通过服务器管理器安装iSCSI 目标时,系统就已经自动在Windows防火墙上开放了TCP 3260 的入站流量。

让节点服务器连接iSCSI 虚拟磁盘

添加多路径

添加多路径I/O功能


安装完成重启下

工具中选择MPIO

然后添加对iSCSI设备的支持,然后重启

我们在打开MPIO会发现多了这个MSFT的iSCSI设备

连接iSCSI磁盘

分别在两台节点服务器上设置iSCSI启动器,以便通过它来连接目标服务器的目标,然后通过目标访问iSCSI虚拟磁盘。



多路径连接

选择快速连接




连接另一个ip,同样的方法设置下





Node2也同样设置下。

挂载磁盘

两台服务器都挂载下,Node1挂载好后,Node2挂载的时候不要格式化

节点服务器安装故障转移群集功能

验证群集设定

注意

1 如果验证结果只有警告事项的话, 可能不会影响群集的建立,例如若群集节点之间只通过—块网卡来通信(没有通过多块网卡或没有teaming功能等)的话,则验证向导会列出警告信息, 但是它不会影响到群集的建立。

2. 如果验证结果显示有其他未通过验证的失败事件的话, 则需要排除此间题后再重新验证,否则所建立的群集可能无法正常工作。

创建群集

这里名字输错了应该就输入Cluster的,因为这里是创建群集,后面一部才是创建文件服务器群集,后面才应该叫这个名字。

群集会自动把容量少的硬盘当成仲裁磁盘

设置两节点的文件服务器故障转移群集

设置群集网络的用途

我们要调整群集内public 、Heart与iSCSI 网络的用途:

  • Public 网络· 我们要让客户端可通过此网络来与群集节点通信, 也要让群集节点之间可以通过此网络来通信(当作Heart 网络的备用网络).
  • Heart 网络:此网络专供群集节点之间通信使用。
  • iSCSI 网络:它是群集节点利用iSCS J通信协议来与目标服务器通信的专用网络,不能作为群集节点之间通信的网络,当然也不能用来与客户端通信。

我们顺便对网卡改名下,否则看不清

在Windows 防火墙上开放所需流量

在建立文件服务器故障转移群集之前, 需要在两台节点服务器与Target 服务器的Windows 防火墙上开放远程卷管理流,否则无法在群集内建立共享文件夹。由两个节点之间是通过public 网络来通信的,因此首先需要找出public网络的网络位置,然后只需针对此网络位置来开放远程卷管理通信协议即可。

继续到Node2计算机上重复以上的步骤。

继续到iSCSI计算机上重复以上的步骤,由于iSCSI服务器没有加域,需要所有网络都开放。

建立文件服器故障移群集

添加文件共享

若两台节点服务器、目标服务器的Windows 防火墙没有开放远程卷管理流量的话,此时将无法添加文件共享。

这时我们到我们的域控上访问下,访问成功,实验完成

3条评论

  1. 四月的奥德赛 2019年8月5日 09:44

    iSCSI 目标服务器可伸缩性限制
    https://docs.microsoft.com/zh-cn/windows-server/storage/iscsi/iscsi-target-server-limits

  2. 四月的奥德赛 2019年8月5日 09:45

    之前看到Windows Server 2019上iSCSI 不支持Initiator了,今天看了一下又支持了。

  3. 四月的奥德赛 2019年8月5日 09:50

    1、Windows Server 2016上设置网卡优先级需要在Powershell下进行,参考https://www.azurew.com/6529.html。
    2、在群集管理器里面也没有调整网络顺序。

发表评论

Go