【问题标题】:How to get EC2 instance availability zone and id using php in aws?如何在aws中使用php获取EC2实例可用区和ID?
【发布时间】:2020-09-15 05:38:30
【问题描述】:

我不知道不要在亚马逊网络服务中使用 php 获取 EC2 实例可用区和实例 ID 详细信息。由于我不知道如何获取数据,所以我没有尝试任何方法。帮帮我。

我想要的东西: /信息

这正是我想要的:

在该信息页面中,我可以显示该实例的详细信息。

提前致谢

【问题讨论】:

  • 您想显示当前实例的可用区和 ID(它正在运行的那个),或者您想在 AWS 中查找一个实例并检查这些元数据是什么?
  • 我想在 index.php 页面上显示当前可用区和实例 ID。

标签: php amazon-web-services amazon-ec2


【解决方案1】:

您可以使用 meta-data api 获取当前实例值,这些值可以通过使用 HTTP 请求库(例如 GuzzleHTTP)或使用 PHP 内置的本机 cURL commands 从您的应用程序中访问。

要获取实例 ID,您需要从当前服务器请求以下 URL。

http://169.254.169.254/latest/meta-data/instance-id

要获取实例的当前可用区,您需要从当前服务器请求以下 URL

http://169.254.169.254/latest/meta-data/placement/availability-zone

假设您使用 GuzzleHTTP,它就像调用以下代码一样简单

$client = new GuzzleHttp\Client();
$response = $client->get('http://169.254.169.254/latest/meta-data/instance-id');
echo "Instance ID: " . $response->getBody();
$response = $client->get('http://169.254.169.254/latest/meta-data/placement/availability-zone');
echo "Availability Zone: " . $response->getBody();

【讨论】:

  • 谢谢。但我想在名为 index.php 的网页上显示可用区和实例 ID。
  • 只要主机是 EC2,它就可以调用这些端点,该页面无关紧要,如果您查看答案的最后一个,您将看到如何调用元数据端点之一:)
  • 没问题,祝你有美好的一天:D
猜你喜欢
  • 1970-01-01
  • 2010-10-12
  • 2010-12-23
  • 2020-12-09
  • 2020-04-09
  • 1970-01-01
  • 2020-01-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多