虚拟机映像是不是在 Windows azure 中恢复?

Posted

技术标签:

【中文标题】虚拟机映像是不是在 Windows azure 中恢复?【英文标题】:Are virtual machine images reverted in windows azure?虚拟机映像是否在 Windows azure 中恢复? 【发布时间】:2011-09-23 07:38:31 【问题描述】:

如果我将虚拟机映像部署到 Windows azure。 虚拟机是否能够保持状态,或者有时会恢复到原始状态?

例如如果虚拟机托管 sql server(例如,启用 sql azure 中不存在的全文搜索) 那么我有时会丢失数据吗?

【问题讨论】:

【参考方案1】:

(编辑——这个答案与 Azure 部署的 PaaS 风格相关;新的 IaaS 虚拟机确实具有持久存储。有关更多详细信息,请参阅 http://michaelwasham.com/2012/06/08/understanding-windows-azure-virtual-machines/)


不,虚拟机不会正式地保持任何状态。理论上,可以在您不知情的情况下创建一个新的虚拟机,并将您的流量路由到该新实例,例如在补丁更新或其他任何事情之后。

因此,如果您想存储不会消失的东西,请使用 AzureBlobDrive 或表存储或 SQL Azure。

然而,实际上,Azure 实例目前具有三个驱动器:

C:保存日志 D:持有操作系统 E:(和 F:)保留您的申请

在全新部署或“重新映像”时,这三个驱动器是从头开始创建的。

但是,在重新启动时,C: 和 D: 似乎保持原样,但您的应用程序的驱动器已重置。

在升级部署中,事情变得很有趣。驱动器 C: 和 D: 保持不变,但在负载平衡器使主机脱机后,将使用新版本的应用程序创建一个新驱动器 F:。您的 IIS 实例被重置为指向这个新驱动器,然后旧驱动器 E: 被移除,然后重新配置负载平衡器以使主机重新联机。在下一次升级时,您的应用程序将换回驱动器 E:。

这样做的好处是升级几乎不需要完全部署那么长时间。缺点是无法通过升级来更改 IIS 配置(例如端点、证书),而是需要完全部署。

因此在实践中,将数据临时存储在 C: 上是可行的,例如日志记录。但不要依赖它。

【讨论】:

新的虚拟机(测试版)仍然是这种情况吗?创建新 VM 时,它看起来像是创建了一个持久保存在 Azure 存储上的新磁盘。此外,D盘标记为“临时存储”,C盘没有标记。还是这个线程在谈论新的重新标记的云服务? 不,虚拟机具有不同的体系结构。我的回答与通过 Azure 部署的服务有关。【参考方案2】:

VM 角色上的磁盘不耐用。当实例转换(即操作系统从一台机器移动到另一台机器)时,您又回到了原点。

您可以挂载 VHD 驱动器来保存数据,但只有一个实例可以写入驱动器。

顺便说一句,使用 VM 角色来托管 SQL Server 是个坏主意,请使用 SQL Azure。

【讨论】:

您还可以使用 AzureBlobDrive 将 Blob 存储装载为驱动器:github.com/richorama/AzureBlobDrive

以上是关于虚拟机映像是不是在 Windows azure 中恢复?的主要内容,如果未能解决你的问题,请参考以下文章

在Azure中创建虚机映像

32.Azure制作自定义的Liunx虚拟机映像

Windows 10Hyper-v虚拟机官方映像文件在哪下?

使用Azure虚机映像创建VM

Azure虚拟机计费模式

Windows Azure 虚拟机,Server 2012,无法激活 0xC004F074