2012年1月13日

AWS SDK for Android ELB配下の各インスタンスの状態を確認する

今回は、ELBに紐づいたインスタンスの状態を確認する方法を紹介します。
describeInstanceHealthで取得しますが、他の関数と同じくリクエスト用に値を定義するクラス、
DescribeInstanceHealthRequestが用意されています。
//DescribeInstanceHealthRequestのインスタンス
DescribeInstanceHealthRequest describeInstanceHealthRequest = new DescribeInstanceHealthRequest();
//取得対象となるELBの名前を定義         
describeInstanceHealthRequest.setLoadBalancerName("hogehoge-Default-Environment");
             
//ELBに紐づいたインスタンスの状態を取得
DescribeInstanceHealthResult describeInstanceHealthResult = amazonElasticLoadBalancingClient.describeInstanceHealth(describeInstanceHealthRequest);
             
//DescribeInstanceHealthResultからInstanceStateのListを取得
List instanceStates = describeInstanceHealthResult.getInstanceStates();
             
//状態を出力して確認
for(com.amazonaws.services.elasticloadbalancing.model.InstanceState instanceState :instanceStates)
{
        //各インスタンスのIDと状態を確認
        Log.i("InstanceId:State", instanceState.getInstanceId() + ":" + instanceState.getState());
}
下記が、実際の出力結果になります。



InstanceStateクラスはEC2のものではなく、elasticloadbalancingのものが該当するので注意する必要があります。

また、ReferenceによるとELBの名前指定による配下のインスタンス全件取得も可能のようですが、
インスタンスをListで個別指定して取得することも可能のようです。


こちらの記事はなかの人(hiroki0907)監修のもと掲載しています。
元記事は、こちら

お問い合わせはこちらから

  • お問い合わせ

0 コメント:

コメントを投稿