查找与AWS Network Load Balancer关联的静态IP?

时间:2018-01-03 16:18:42

标签: amazon-web-services elastic-load-balancer

如何找到分配给现有AWS Network Load Balancer的静态IP列表?

我在控制台中看不到任何显示IP的内容,也没有在CLI中看到任何内容。

2 个答案:

答案 0 :(得分:3)

此文档对您有所帮助:

https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/

弹性IP将是您想要的IP。

如果您只想知道现有负载均衡器的地址,请使用它的CNAME并使用dig或nslookup查询DNS。

答案 1 :(得分:0)

您无法在一步中查询,因为aws ec2 describe-addressees命令中的过滤器不够复杂。 但是你可以分两步完成:

#Query to obtain the instances id in the autoscaling group and 
aws ec2 describe-instances --filters "Name=tag:aws:autoscaling:groupName,Values=#YourAutoScalingGroupName#" --query 'Reservations[*].Instances[*].[InstanceId]' | grep i > instancesId.txt


#Then read the file, iterate line by line and ask for the elastic ip 
while read instanceId           
do           
    aws ec2 describe-addresses --filters "Name=instance-id,Values="${instanceId}               
done < instancesId.txt

编辑:

正如迈克尔所说,这个解决方案确实在自动缩放组中找到了ip地址。所以:

aws elb describe-load-balancers --load-balancer-name "YOUR_BALANCER_NAME" | grep -oP  "\"InstanceId\": \"\K(i-[a-z0-9A-Z]*)"  > instancesId.txt

将在负载均衡器上搜索实例。