下面我有一些问题——我尽量用最好的措辞来表达。如果你对我的帖子投了反对票,请发表评论解释你投反对票的原因,以便我以后发帖时可以做得更好。以下是我的问题(我最大的问题是第二段):
如果我们使用 Server 2012,我们是否能够在运行 VDI 和 RDS 的大规模虚拟化环境中无需 SAN 即可获得高可用性 (HA) 和可靠性?
我们有使用 Microsoft SQL 的高事务应用程序,例如 Exchange、SharePoint 等,它们需要 HA 和可靠性——有没有其他方法可以在不使用 SAN 的情况下实现这些功能?(编辑:或者我想我要说的是——我们能否消除 SAN,同时仍为 Microsoft SQL 和 Exchange 提供 HA 和可靠性?在 2012 年,Hyper-V 与此有什么关系吗?)
我的主管听说使用 Server 2012 可以做类似的事情,将两台服务器连接在一起,实现 HA 和可靠性——这是真的吗?它是如何工作的?谢谢!
答案1
是的,您无需使用共享磁盘解决方案即可实现所列出的所有服务的高可用性。
- Exchange 2010:数据库可用性组(至少三台服务器,其中一个只是文件共享,记得正确地对客户端请求进行负载平衡。)
- SQL 2012:AlywasOn 可用性组。SQL 2008 R2 及以下版本:镜像/日志传送
- VHD 文件:使用 DFS-R 复制和 DFS 命名空间设置的独立文件服务器
阅读这些主题,你就会知道是否要使用它们,或者是否需要集群来提供容错能力。我上面列出的所有技术都需要人工干预或需要一段时间来过渡。
Hyper-V 2012 引入了仅使用常规 TCP/IP 在主机之间进行实时迁移和复制的功能。但是,它不是集群。当出现故障时,您仍然会遇到停机,因为您必须启动您的副本。
另外,请记住集群服务不能进行实时迁移,因为当磁盘 I/O 暂停时,它们会立即出现 BSOD。Exchange DAG 和 SQL AlwaysOn 使用群集来保持同步,而无需共享存储。
答案2
BlueToast,pauska 的意思是,如果没有共享存储,您就无法从虚拟化层获得 HA。在许多情况下,您可以在应用程序层获得 HA。因此,不要指望 Hyper-V 提供 HA,而是看看虚拟机内的软件。
话虽如此,Server 2012 可以使用文件服务器作为必要的共享存储,只要该文件服务器使用 SMB 3.0(随 Server 2012 提供)。要获得真正的 HA,您需要将文件服务器实现为文件服务器群集。您可以使用 Server 2012 做到这一点,只要连接到文件服务器群集的存储是对称连接的。虽然这可能会让您怀疑是否需要在文件服务器中使用 SAN 来避免连接到 Hyper-V 的 SAN,但事实并非如此。您可以使用便宜得多的共享 SAS JBOD。
如果您使用共享 SAS 创建该文件服务器集群,那么您将能够在 Hyper-V 层使用 HA,然后您可以选择放弃在应用程序层设置 HA。哪种解决方案对您最有意义应取决于具体情况。在应用程序层执行操作通常涉及更丰富的选择,但会迫使您为每个应用程序使用不同的解决方案。在虚拟化层执行操作往往允许您对许多应用程序使用相同的策略,但对虚拟机中发生的事情的了解会稍微模糊一些。