【发布时间】:2019-03-25 01:02:10
【问题描述】:
最近,由于 ENI 消耗大量 IP,我们遇到了 VPC 中 IP 耗尽的问题。我需要在 boto3 中编写一个脚本,以在总 ip 使用量增加 80% 左右时触发警报。
因此我需要知道在 VPC 的子网中分配的总 ip。我需要使用 IP 和免费 IP 的总数。
请分享执行此操作的 boto3 命令。
【问题讨论】:
-
您可以将 python 脚本与 os.system 和“aws ec2 describe-network-interfaces --filters SubnetId=subnet-b61f49f0 | grep PublicIp | wc -l”一起使用,然后将输出与预先确定的数字进行比较然后使用 python smtp 模块或 SES 触发电子邮件。
-
预定义的数字是多少?我不想硬编码任何数字。我需要提取总数。另外,是否像 ENI 总 IP + 可用 IP 地址计数(describe_subnets)给出了子网的总 IP?
-
通过上面的命令,你得到使用的公共IP,首先你可能需要单独存储或通过另一个命令提取总ip,这里是预先定义的数字,然后比较两者,这样你就可以得到总ip使用量.
-
子网掩码决定了一个子网中IP地址的数量,但保留地址减去5。例如,
/24子网将有256 - 5 = 251可用地址。
标签: amazon-web-services subnet