2017-03-20 15 views
1

私はいくつかのElastic Load Balancerを持っています。私は、ELBのターゲットグループに属するEC2インスタンスに関連するパブリックIPアドレスを動的に見つけることを望みます。私は以前のバージョンのELBでこれを行うことができました。なぜなら、インスタンスIDは各ELBにリストされるからです。さて、それはそうではないようです。どんな手がかりも素晴らしいだろう!Boto3で特定のターゲットグループに属するEC2インスタンスを見つけよう

答えて

2

としてはHow to query AWS to get ELB names and attached instances to that using python boto3 modules?に答えた:

アプリケーションLoad Balancerは、複数のターゲットグループを持っています。インスタンス上のポートは、ターゲットグループに登録されます。

ターゲットグループ内のインスタンスを一覧表示するように思われる唯一のコマンドは、インスタンスを返すdescribe_target_health()、あるポート(1つのインスタンスが複数のターゲットを提供することができますので):ある人のために

{ 
    'TargetHealthDescriptions': [ 
     { 
      'Target': { 
       'Id': 'i-0f76fade', 
       'Port': 80, 
      }, 
      'TargetHealth': { 
       'Description': 'Given target group is not configured to receive traffic from ELB', 
       'Reason': 'Target.NotInUse', 
       'State': 'unused', 
      }, 
     }, 
     { 
      'HealthCheckPort': '80', 
      'Target': { 
       'Id': 'i-0f76fade', 
       'Port': 80, 
      }, 
      'TargetHealth': { 
       'State': 'healthy', 
      }, 
     }, 
    ], 
    'ResponseMetadata': { 
     '...': '...', 
    }, 
} 
0

それでも解決策を探して、私は同じのためのPythonスクリプトを作っており、コードはgithubで利用可能です。

関連する問題