ALBはターゲットグループを割り当てる形になるので、指定したターゲットグループに紐づくインスタンスを取得すればIP取れました。
require 'aws-sdk' alb = Aws::ElasticLoadBalancingV2::Client.new( region: 'ap-northeast-1', access_key_id: 'xxx', secret_access_key: 'xxx' ) ec2 = Aws::EC2::Client.new( region: 'ap-northeast-1', access_key_id: 'xxx', secret_access_key: 'xxx' ) instance_healths = alb.describe_target_health({ target_group_arn: 'xxx' }) instance_ids = instance_healths.target_health_descriptions.map {|t| t.target.id } ec2_instances = ec2.describe_instances({ instance_ids: instance_ids }) instance_ips = ec2_instances.reservations.map { |e| p e.instances[0].public_ip_address }
0 件のコメント:
コメントを投稿