2011-12-28 6 views
4

私は、スケールしたいroleIDが与えられた場合、与えられた量のインスタンスに役割をスケールするコードを探しています。私はこのメソッドを実装する誰かを探しています。Windows Azureの役割をプログラムで調整する

Private Shared Sub DoScaleOperation(RoleID As String, InstanceCount As Integer) 
    'TODO: 
    'Check if the current number of instances in the role RoleID matches InstanctCount 
    'and if the numbers don't match then scale down or scale up as appropriate. 
End Sub 

この方法は、開発環境とクラウド環境の両方で機能するはずです。誰もこれを行う方法を知っていますか?

またcuriorsityアウトIロールインスタンスの名前は、スケールアップにどうなるかとスケールダウンの間に除去インスタンスの名前がどうなるか疑問に思います。私はインスタンスの名前がRoleID_(0からInstanceCount - 1)のようになることを期待しています。

答えて

7

あなたは、プログラムのAzureで数えるのインスタンスを変更するために呼び出したいAPIがあります:http://msdn.microsoft.com/en-us/library/windowsazure/ee460809.aspxこのAPIは、地元のdevの環境では動作しません。あなたはあなたの電話で管理証明書を提供する必要があります。 Azureコマンドレットを使用してインスタンス数を変更することもできます。

+0

ロールインスタンスに属する特定のデータがフラッシュされるように、ロールがスケールされる前に特定のイベントを実行する必要があるため、標準的な自動スケールアプローチが機能しません。私は残りのAPIを理解していない、それは古代中国のように見えます。誰かが私にこの方法を提供できるかどうか疑問に思っていましたか? – RyanFishman

+0

。このトピックに関する記事がいくつかあります。 http://dotnet.dzone.com/news/windows-azure-and-scaling-howおよびhttp://blogs.ugidotnet.org/corrado/archive/2011/02/09/how-to-programmatically-change- the-number-of-azure-role-instances.aspxを参照してください。また、十分なグーグルでコマンドレットを使用する方法をいくつか示しています。コマンドレットでない限り、 "1行のコード"という魔法はありません。 – Igorek

+2

OnStop()イベントを処理して、ロールインスタンスでシャットダウンコードを実行できます。これにより、シャットダウンシーケンスがスケールされるコードから独立した状態に保たれます(スケーリングしている同じインスタンス内にスケールコードを入れたくない場合)。また、(ハードウェア障害などで)予期せずシャットダウンしたときに、ロールインスタンスを正常に回復する必要があります。 –

関連する問題