Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server Azure虚拟机可用性、镜像_Sql Server_Azure_Load Balancing_Failover_Windows Server - Fatal编程技术网

Sql server Azure虚拟机可用性、镜像

Sql server Azure虚拟机可用性、镜像,sql-server,azure,load-balancing,failover,windows-server,Sql Server,Azure,Load Balancing,Failover,Windows Server,为noob问题道歉,我以前从未处理过故障转移 目前,我们有一台运行Windows server、SQL server、ASP.NET的硬件服务器和一个(非常大的)web应用程序。我们正在考虑将其迁移到Azure VM 我在SLA中看到,如果我运行多个Azure VM实例,Microsoft将仅保证99.95%的可用性,以允许出现故障和重新启动等 这是否意味着我需要管理和维护两台服务器?例如,两个版本的SQL,每个版本上有一个数据库,以及两组ASP.NET应用程序文件?如果正确的话,这会大幅提高价

为noob问题道歉,我以前从未处理过故障转移

目前,我们有一台运行Windows server、SQL server、ASP.NET的硬件服务器和一个(非常大的)web应用程序。我们正在考虑将其迁移到Azure VM

我在SLA中看到,如果我运行多个Azure VM实例,Microsoft将仅保证99.95%的可用性,以允许出现故障和重新启动等

这是否意味着我需要管理和维护两台服务器?例如,两个版本的SQL,每个版本上有一个数据库,以及两组ASP.NET应用程序文件?如果正确的话,这会大幅提高价格

我假设没有办法将一台服务器“镜像”到另一台服务器以减少此工作负载

此外,我们的硬件服务器上有25000个上传文件。我们是否需要将它们放在VHD上,然后将它们“链接”到正在运行的任何一台实时服务器,或者Azure是否会自动执行此操作?还是必须将它们从实时服务器镜像到故障转移服务器


任何指点都将不胜感激。我已经阅读了所有Azure文档,但它并没有真正让事情变得更清楚……

似乎您有多个需要关注的主题

让我们从数据库开始。最简单的事情是,如果您可以将sql server迁移到sql azure one中。这样您就不需要维护它,也不需要维护您应该使用的机器。 这将为您提供一个优势,即您的中心组件可以由一对多应用程序使用

第二个是你上传的文件。我假设您的应用程序允许上传文件以供共享或其他用途。最好的办法是,如果您可以将这些文件写入WindowsAzure blobstorage。这通常意味着您必须重写一个连接器,但这将集中另一个组件。 在第一步中,您可以使它们可用,客户可以通过链接下载它们。如果没有,您可以从他们的服务器加载文件并将其交付给客户

如果你不想重写你的组件,你应该使用VHD。一个VHD只能有一个租约。因此,只能使用一个实例。我看到的一种常见方式是,如果应用程序正在启动,它将尝试“恢复”租约。(像尝试和错误一样)

最后但并非最不重要的一点是您的ASP.NET应用程序。如果您有这样一个应用程序,我将研究云实例。尽量不要考虑VM,因为你必须做所有的管理。虚拟机是IaaS。使用.NET应用程序应该能够轻松地转换和部署实例。 您不必考虑故障切换等问题。只需部署2个实例,负载平衡器将完成其余工作

如果您能够“外包”SQL server,则可以最小化ASP.net应用程序的计算机。尝试使用向外扩展而不是向上扩展。这意味着使用比一个大节点更小的节点。(如有可能)

如果你真的走虚拟机的路,你必须自己管理所有的东西,是的,你需要2个虚拟机。您还需要3个虚拟机,因为您没有自动负载平衡器,如果您只有2个,那么只有一台机器可以导出端口80


HTH

请注意-具有多个实例的SLA 99.95%适用于Windows Azure云服务(Web角色/工作者角色)。如果您的目标是WindowsAzure虚拟机,那么它是单独的SLA-99.9%,并且覆盖单个实例。但一旦Azure虚拟机成为GA,它就会发生。目前Azure虚拟机正在预览中。绝对精彩的解释。非常感谢。我们面临的主要问题(这确实导致了一些问题)是SQL数据库依赖于CLR UDF的使用,而SQL Azure目前不支持CLR UDF。微软建议我们选择允许CLR的虚拟机方法。真是太遗憾了,因为我对你的方法很感兴趣。今天,我将研究ASP.NET中Blob存储上的可访问性编码(例如,是否存在文件?如果存在,请创建指向该文件的超链接)…关于VM负载平衡器的一条评论。您可以将虚拟机添加到云服务,它们将自动实现负载平衡。这将允许您使用2个虚拟机而不是3个虚拟机。然后设置可用性集,以防止硬件故障。