2个工作者角色,一个VHD,自动故障转移

我有2个Windows Azure工作角色和1个云驱动器VHD(用于Lucene.NET文档)。目前,第一个工作者角色获得VHD,第二个角色不断尝试安装VHD(如果另一个拥有它,则会失败),并且只有在成功时,才会进入工作者角色的运行部分。 .. 虽然我已经看到了一些问题:我在OnStop方法中手动卸载驱动器,这会解锁驱动器以供以后使用...但是如果OnStop方法没有被调用,我的驱动器现在可以通过以下方式卸载两个系统......其次,我的第二个实例经常被列为“未准备好”,一段时间后天蓝认为这是奇怪的。最后,即使实例“未准备好”,它仍然会出现在实例中列表... 有没有人之前做过这样的事情并且有什么建议我应该怎么做以解决这个问题?我希望有一个故障转移搜索服务器,因为我的前端依赖它,并等待Azure启动一个新实例(5-15分钟)将无法忍受。     
已邀请:
如果未调用OnStop,则页面blob(支持Windows Azure驱动器的VHD)上的租约将不再续订,这意味着它将在60秒后过期。 如果您的实例列为“忙”,则您的代码可能尚未从OnStart返回。确保您尝试安装驱动器的任何循环都在Run()中,而不是OnStart()。 是的,如果枚举实例,则应显示实例。如果您正在尝试跟踪哪个实例已安装驱动器,我建议让该角色实例将其ID写入某个blob或表。发生故障转移时,新实例将覆盖该ID。     

要回复问题请先登录注册