以编程方式从 EC2 实例确定可用区

Dor*_*dus 1 amazon-ec2 amazon-web-services availability-zone

正在运行的 EC2 实例是否可以在不使用 AWS API 的情况下确定它正在运行的可用区?也许有办法让 EC2 在环境变量或类似变量中传递此信息?

我只是希望在不添加对 AWS 客户端库的依赖的情况下构建少量的 AZ 意识。

Mar*_*cin 6

是的,您可以使用实例元数据。例如,

az=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone)
echo ${az}
Run Code Online (Sandbox Code Playgroud)

输出示例:

us-east-1e
Run Code Online (Sandbox Code Playgroud)

根据您的编程语言,您可以执行相同的操作。对于 python,您可以使用例如requests库或本机 python 库来调用 url。