首页 > 解决方案 > 如何通过向 aws cli 提供城市名称来检索特定的 aws 区域?

问题描述

我正在编写一个小的 python 函数来了解aws region我们的 AWS EIP。当我使用ipinfoipinfo.io 等服务时,我确实得到了以下详细信息:

~ ➤ curl ipinfo.io/18.138.84.13/json
{
  "ip": "18.138.84.13",
  "hostname": "ec2-18-138-84-13.ap-southeast-1.compute.amazonaws.com",
  "city": "Singapore",
  "region": "Singapore",
  "country": "SG",
  "loc": "1.2897,103.8501",
  "org": "AS16509 Amazon.com, Inc.",
  "postal": "048508",
  "timezone": "Asia/Singapore",
  "readme": "https://ipinfo.io/missingauth"
}%
~ ➤

从这些信息中,我得到了除region_name. 当然,我可以修剪主机名 URL 以 grep 区域名称ap-southeast-1,但这不是最佳的。

有没有什么方法可以boto3使用aws cli类似的参数来访问 aws API,region=Singapore作为响应,我得到了ap-southeast-1.

或者,如果有任何 aws api,我可以通过将输入作为 EIP 直接点击它,它会返回我的详细信息,包括region_name. 我需要region_name在我的脚本中进一步使用来自动化工作。

标签: amazon-web-servicesamazon-ec2

解决方案


在 AWS 中,IP 地址是动态分配的,它们不受区域限制,eip 池将自动为您提供可用的 IP 地址。我建议忽略基于 IP 地址的区域。


推荐阅读