我一直在观看构建会议的一些视频:Windows Azure等内部 我从其中一个中删除的是,除非我将预先配置的VHD加载到虚拟机角色中,否则我将丢失任何系统设置,如果实例被关闭或回收,我可能会丢失。
例如,我有一个帐户,其中2个Web角色运行多个(小)网站。为了实现这一点,我必须调整Hosts文件中的设置。我知道我的网站会在发生故障时继续运行,因为它们是在ServiceConfiguration.csfg中定义的,但是如果发生故障,我的主机文件设置是否会转移到一个新的实例?
即。具有网络角色的“模板”有多深/全面?
答案 0 :(得分:2)
hosts
文件将在任何完全重新部署或重新映像时重建。
通常,您应该避免依赖对操作系统创建的任何文件的更改。如果您的应用程序迁移到另一台服务器,它将在具有自己的Windows新副本的新虚拟机上运行,因此这些更改将突然消失。
如果您执行部署到Azure“登台”环境然后执行“交换VIP”,则会发生同样的情况:“登台”环境不会对操作系统文件进行更改。
Microsoft故意不发布Azure图像的内部细节,因为它们将来很可能会更改,但目前
在完整部署或重新映像时,您会收到一个新虚拟机,因此会重新创建所有三个驱动器。在升级时,虚拟机将继续运行,但负载均衡器会在部署新版本的应用程序以驱动F:时迁移流量。驱动器E:然后被移除。
因此,直接回答您的问题,“模板”适用于驱动器E: - 其他任何事情都可能在您不知情的情况下发生变化,并且无法依赖。
答案 1 :(得分:1)
Azure提供启动脚本,以便您可以在实例启动时进行配置更改。这些通常用于安装其他操作系统组件或进行IIS配置更改(如禁用空闲超时)。
答案 2 :(得分:1)
现有答案在技术上是正确的并且回答了问题,但是在单个Web角色中托管多个网站根本不需要编辑hosts文件。只需在ServiceDefinition.csdef中定义多个网站(具有不同的主机头)。见http://msdn.microsoft.com/en-us/library/gg433110.aspx