我对整个 SAN 还很陌生,正在努力理解一些基本知识。我们正在尝试构建一个 Hyper-V 集群,其中包含两台服务器和一些外部存储介质,例如 HPE MSA 2050(尚未确定),但我有一些非常基本(可能很愚蠢)的问题:
- 我是否可以直接将 MSA 连接到两台服务器,而无需购买专用的 SAN 交换机(最好通过 FC)
- 我需要多少存储空间?假设我想要 40TB 的可用空间(不考虑奇偶校验)。我是否只需要 SAN 中的一组驱动器,并且两个服务器都可以读取和写入相同的块,或者我是否需要“加倍”所有内容,以便每个服务器都有自己的一组驱动器?我读过一些关于 CSV(群集共享卷)的文章,但不确定我是否理解正确。
- 我提到的 HPE SAN 声称拥有两个控制器,并且还拥有两个 PSU,这是否意味着它本身就足够冗余,你不需要第二个 PSU(假设定期发生故障,并且第三次世界大战不会轰炸整个服务器机房)
我希望你能帮助我,提前谢谢了。
答案1
如前所述,对于 2 节点集群,SAN 有点过头了。此外,尽管有冗余控制器和 PSU,但它仍然是单点故障。改用本地驱动器和一些 VSAN 软件。例如,看看 Starwind VSAN:https://www.starwindsoftware.com/starwind-virtual-san。对我来说,它在几个 2 节点集群上运行速度很快且很稳定。当然还有微软原生的 Azure Stack HCI(它仍然是 S2D 的秘密):https://azure.microsoft.com/en-us/products/azure-stack/hci/#overview。但是,当我多次在 2 节点设置上尝试它时,它根本无法承受 Windows 更新而不丢失存储。我没有遇到这样的问题,而且公平地说,它在 4+ 节点上运行良好。
关于您的问题:
- 是的,您可以在服务器中直接使用 FC HBA 卡。
- 因此您需要 40TB。按照使用简单 RAID 的方式计算。无需翻倍。您可以为每个主机提供单独的 LUN,但如果您希望两个主机同时写入共享 LUN,则需要一个集群文件系统 (CSV) 和相应的故障转移集群:https://docs.microsoft.com/en-us/windows-server/failover-clustering/failover-clustering-overview否则,使用通用文件系统,就没有文件锁定,并且一个节点不知道另一个节点正在同时写入,因此只会导致数据损坏。
- 除了控制器故障外,存储箱还可能发生其他问题。我认为单个存储箱是冗余的。
答案2
我是否可以直接将 MSA 连接到两台服务器,而无需购买专用的 SAN 交换机(最好通过 FC)
是的,可以,显然,如果您使用 FC,则两台服务器都需要 FC HBA,并且需要将 MSA 上的端口配置为“直接连接”模式,而不是假设它们通过 FC 交换机连接,但这种方法非常有效,我过去曾使用 2040 亲自完成过。如果您通过以太网使用 iSCSI,那么您只需将端口连接到交换机,然后通过这种方式访问它即可。
我需要多少存储空间?
我担心这是一个更大的问题,答案可能会根据您的详细要求而有很大差异。
简单来说,是的,很容易获得 40TB 可用空间 - 任何类型的磁盘都可以 - 它们甚至可以使用 14TB HDD!只要确保如果你使用 HDD 而不是 SSD,不要使用 RAID 5,这在当今被认为是危险的 - 坚持使用 R1/10 或 R6/60,它们会照顾好你的数据 :)
我所命名的 HPE SAN 声称有两个控制器……
可能是的,如果您可以尝试从不同的 UPS 上驱动两个独立的 PSU,当然在同一阶段,这会有所帮助,但是只要您设置了多路径(每个控制器一个或多个路径),您就可以承受单个 PSU 甚至整个控制器的故障。
无论如何祝你好运,如果以后你有更详细的问题可以再回来。
答案3
您不应该考虑使用 SAN 来开始这样的事情。在 Windows 高可用性集群中使用本地连接的存储。使用合适的网络和更少的元素可以更快。
答案4
- 我是否可以直接将 MSA 连接到两台服务器,而无需购买专用的 SAN 交换机(最好通过 FC)
是的。只要设备上有端口,就不一定需要交换机。
- 我需要多少存储空间?假设我想要 40TB 的可用空间(不考虑奇偶校验)。我是否只需要 SAN 中的一组驱动器,并且两台服务器都可以读取和写入相同的块,
从技术上来说,这是可能的。然而,同时访问 LUN 需要集群文件系统,以协调来自客户端主机的并发访问。如果您同时访问普通 NTFS、ext4、... 卷,数据将立即被覆盖和销毁。
块存储共享为逻辑单元号对象。每个 LUN 代表客户端主机的一个逻辑磁盘。在您的场景中,您可以跨所有物理磁盘创建一个磁盘阵列,或者创建两个阵列以利用双控制器,然后在这些阵列上创建多个 LUN,最后将每个 LUN 映射到其中一个主机。确保不要对大于 300 GB 的磁盘使用 RAID 5。
或者我是否需要将所有东西“加倍”以便每台服务器都有自己的一组驱动器?
是的,基本上。
我读了一些关于 CSV(集群共享卷)的内容,但不确定我是否理解正确。
这是一个集群文件系统,允许同时从多个主机到单个 LUN 的访问。根据工作负载、设备功能和存储协议(FC 或 iSCSI),与专用访问相比,集群文件系统的性能可能相当差。
我不会将集群文件系统用于一般的文件共享,但它非常适合存储虚拟机磁盘(因为在虚拟机启动时每个磁盘只锁定一次),并且具有在主机之间迁移虚拟机时无需移动任何数据的好处。
- 我提到的 HPE SAN 声称拥有两个控制器,并且还拥有两个 PSU,这是否意味着它本身就足够冗余,你不需要第二个 PSU(假设定期发生故障,并且第三次世界大战不会轰炸整个服务器机房)
是也不是。双控制器和双 PSU 可实现操作不存在任何单点故障。此外,您还需要在不同电源相位上运行的双 UPS,以及到主机的冗余电缆,以实现完全冗余操作。“足够冗余”取决于您的要求。
基本设置如下:
- 每个 MSA PSU 都连接到不同的 UPS。
- 每个 UPS 都在不同的电源相上运行。
- 您在 MSA 上创建两个阵列,每个阵列映射到一个首选控制器。
- 在每个阵列上创建一个 LUN。
- 每个主机有两个存储端口,每个端口连接到不同的控制器。
- 如果使用存储交换机,则每个主机到存储的链接都会通过不同的交换机路径运行。
- 将每个 LUN 映射到其中一个主机。
- 如果需要(不使用 ALUA),请配置每个主机,以便其主存储链接是其 LUN 的首选控制器的链接。