虚拟机映像是不是在 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 中恢复?的主要内容,如果未能解决你的问题,请参考以下文章