2

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

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

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

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

我认为没有办法将一台服务器“镜像”到另一台服务器以减少这种工作量?

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

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

4

1 回答 1

3

好像你有多个你应该关注的主题。

让我们从数据库开始。最简单的事情是,如果您可以将您的 sql 服务器迁移到 sql azure 中。比你不需要维护它和维护你应该使用的机器。这会给您带来好处,即您的中心组件可以被 1 到多个应用程序使用。

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

如果您不想重写组件,则必须使用 VHD。一个 VHD 只能有一个租约。所以只能使用一个实例。我见过的一种常见方式是,如果应用程序正在启动,它会尝试“恢复”租约。(试错之类的)

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

如果您能够“外包”SQL 服务器,您可以将您的机器最小化以用于 ASP.net 应用程序。尝试使用横向扩展而不是纵向扩展。这意味着使用更多的小节点,而不是一个大节点。(如果可能的话)

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

高温高压

于 2012-11-06T16:39:23.560 回答