2014-10-27 35 views
1

对此可能有一个简单的解决方案,但我的搜索无法找到它。从Windows Azure管理门户阻止工作人员角色实例

在我的Azure解决方案中,我有一个具有两个实例的工作者角色,它们将消息从队列中拉出以供处理。出于调试目的,我想暂时停止这些实例。

如果我点击Cloud Services,然后点击Instances,我看到我的两个正在运行的实例,但似乎没有任何方法可以暂停/停止/关闭它们。任何想法如何我可以?

回答

1

似乎没有要任何方式暂停/停止/关闭它们

你在你的观察正确的,因为你不能暂停/停止/关闭特定实例。您可以停止或关闭整个云服务,但不能关闭单个实例。但是,您可以删除特定的实例,但如果我理解正确,那不是您想到的。

任何想法,我怎么能?

请看看这个博客文章:http://alexandrebrisebois.wordpress.com/2013/09/29/temporarily-taking-a-cloud-service-role-instances-off-of-the-load-balancer/。基本上,诀窍是创建一个实例Busy,以便Azure负载平衡器不会向该实例发送请求。

+2

请注意,将实例设置为繁忙将使其脱离LB轮换,但不会对正在轮询队列中消息的辅助角色执行任何操作。您有几个选项:1)添加自定义代码,以便您可以通过配置更改指出您的角色应该停止获取消息; 2)RDP到VM并停止运行WaWorkerHost。有很多方法可以做#2,但最简单的方法是将RDP发布到虚拟机,下载AzureTools,在AzureTools下载调试工具,将WinDBG附加到WaWorkerHost.exe并将其保留。 – kwill 2014-10-28 19:11:00