有谁知道对单个 iSCSI 目标的共享访问(多个启动器)应该如何工作。
我已经让它与 Linux (CentOS-7) 目标和 Win 2012 服务器/Win Hyper-V 2012 R2 启动器一起工作。问题是每个实例似乎都有自己的 NTFS 分区版本。
这样做的原因是我可以将我的虚拟机文件托管在远程 iSCSI 目标上,并在服务器之间迁移实际运行的虚拟机。如果不共享 iSCSI 目标,我看不到任何这样做的方法。
有谁知道对单个 iSCSI 目标的共享访问(多个启动器)应该如何工作。
我已经让它与 Linux (CentOS-7) 目标和 Win 2012 服务器/Win Hyper-V 2012 R2 启动器一起工作。问题是每个实例似乎都有自己的 NTFS 分区版本。
这样做的原因是我可以将我的虚拟机文件托管在远程 iSCSI 目标上,并在服务器之间迁移实际运行的虚拟机。如果不共享 iSCSI 目标,我看不到任何这样做的方法。
要让多个启动器共享一个目标,无论是通过 ISCSI、光纤通道还是其他 SAN 解决方案,您都需要一个可识别集群的文件系统。VMWare ESXi 使用 VMFS 执行此操作。Veritas 在 Veritas Cluster Suite 中提供了一个。Sun 在当天提供了一个回报,这将导致无穷无尽的麻烦。Oracle 使用 RAC 做到了这一点,直到他们变得明智并改为事务复制而不是共享块存储。Microsoft 提供 NTFS 集群共享卷,这是一个 Windows 集群文件系统。我相信红帽有一个,虽然我从来没有玩过它。
与独立文件系统相比,集群文件系统有更多细致入微的工作,因为它们必须了解 quorum-counting、fencing、dead-peer 检测和传播。如果他们不能做这些事情,脑裂场景(每个节点都认为他拥有对共享资源的唯一访问权限,并且无法与其他节点检查)将使您破坏所有数据,或者至少陷入不一致(并且难以恢复)状态。
另一件需要注意的事情:其中大多数是特定于操作系统的。显然 VMFS 只是 ESXi(我认为只有连接到 VCenter)。NTFS CSV 仅适用于 Windows 2012。Oracle RAC 用于运行 Oracle 数据库的数据库集群。我认为 Veritas 是混合中唯一独立于应用程序/跨操作系统的解决方案。
Veritas Cluster Suite 复杂且不便宜。此外,您需要了解服务组、启动/拆卸的顺序以及集群/防护才能使其正常工作。如果你错过了关于分布式锁定、争用和强制断锁的部分(当我们开始这个模块时,我被拉到与其他架构师的会议中),你会后悔的。
Veritas Cluster Suite 创建了非常紧密耦合的集群,其中一个节点可以将同情病引入另一个节点。赛门铁克(最近收购了 Veritas)有两门课程,在将基于 Vx Cluster Suite 的集群投入生产之前,您可能应该参加这些课程,因为它既强大又危险(如汽车、电锯或侧臂) .
DTK 是完全正确的,您需要一个集群解决方案来管理对同一存储的共享访问,否则数据损坏可能并且将会随之而来。
由于您特别提到了 Hyper-V 虚拟机,我将提供一些更具体的文档,说明如何在 Windows 系统(包括 Hyper-V 主机)上完成此操作:
https://technet.microsoft.com/en-us/library/jj612868.aspx
当然,您需要构建一个完整的 Windows 故障转移集群才能使用 CSV,因此请务必阅读有关故障转移集群的所有相关部分,其中 CSV 只是一个组件。