azure - 了解 Windows Azure 中的可用性集

标签 azure virtual-machine azure-availability-set

我正在阅读 Microsoft 网站上对可用性集的解释,但无法 100% 理解该概念。

http://www.windowsazure.com/en-us/documentation/articles/manage-availability-virtual-machines/

人们在评论中提出了很多问题,但 Microsoft 没有技术支持来回答这些问题。

正如我对可用性集的正确理解,您可以使用 IIS 应用程序复制 VM 并使用 SQL 复制 VM,这意味着您必须使用 4 个 VM(支付 4 个)而不是 2 个。这意味着每当 IIS1 虚拟机关闭时,网站在 IIS2 虚拟机的帮助下仍然可以在线,反之亦然? SQL1 和 SQL2 虚拟机也是如此吗?

我的方向正确吗?如果是这种情况,如何同时保持 SQL1 和 SQL2、IIS1 和 IIS2 虚拟机中的数据同步,以便在一台虚拟机停机更新时网站仍能使用最新的数据和代码?

最佳答案

可用性集结合了 Windows Azure PaaS 领域的两个概念 - 升级域和故障域 - 有助于使服务更加健壮。当多个虚拟机部署到可用性集中时,Windows Azure 结构 Controller 会将它们分布在多个升级域和故障域中。

故障域代表一组具有单点故障的虚拟机 - 一种方便(尽管不精确)的方式来考虑它是具有单个顶部或机架路由器的机架。通过将虚拟机部署到不同的故障域,结构 Controller 可确保单个故障不会导致整个服务脱机。

结构 Controller 使用升级域来控制主机操作系统升级(即底层物理服务器)的执行方式。结构 Controller 一次对一个升级域执行这些升级,仅在前一升级域的升级完成后才移至下一个升级域。这样做可以确保在主机操作系统升级期间服务仍然可用,尽管容量有所减少。这些升级似乎每隔一两个月就会发生一次,所有虚拟机都部署到可用性集中的服务不会收到警告,因为它们应该对升级具有弹性。 Microsoft 确实提供了有关升级包含部署在可用性集之外的虚拟机的订阅的警告。

此外,对于在可用性集之外部署虚拟机的服务,没有 SLA。

关于 SQL Server,您可能需要研究 SQL Server 可用性组的使用,该可用性组位于 Windows Server 故障转移群集之上并使用数据的同步复制。对于 IIS,您可能需要考虑将应用程序部署到 PaaS 云服务中的可能性,因为这比将其部署到 IaaS 云服务中具有显着的优势。您可以通过VNET创建集成PaaS和IaaS云服务的服务拓扑。

关于azure - 了解 Windows Azure 中的可用性集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22290079/

相关文章:

azure - 将可用性集添加到 Azure 虚拟机模板创建

Azure 可用性集与可用区

java - 在 Azure Eventhub 中,当使用 Java 中的 EventProcessorHost 接收消息时 @Override 出现错误

c# - 尝试引用 Azure Analysis Service 表格模型 C# 时出现异常

java - 当 VM 最小化时,Selenium 无法单击弹出窗口。

hadoop - 在一台机器上运行 Hadoop 集群

azure - Azure 可用区中的可用性集

azure - 查找未关联的公共(public) IP Azure

azure - 如何在 Azure 中设置 Sonar ?

virtual-machine - VBoxManage : error: The specified user was not able to logon on guest