2014-10-27 37 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