如何使用 AWS CLI 从外部获取 EC2 实例的 public DNS?
How to get the public DNS of EC2 instance from outside using AWS CLI?
我有一个实例,并计划在不久的将来有更多实例,但前提是我可以从外部世界管理它们。因此,我需要远程请求新服务器,随意启动或关闭它们。因此,由于 IP 地址每次都会更改,因此我需要一种方法来查询服务器的 public DNS 名称。而这一切都需要通过 AWS CLI 来完成。
最近几天我一直在努力寻找这些信息,我终于来了。
我的服务器在 EC2 集群之外安装了 AWS CLI。
我的 "Access Key ID" 从 IAM 页面复制并分配给此服务器上的适当变量
$ echo $AWS_ACCESS_KEY
XXXXXXXXXXXX4PEXXXXX
$ ec2-describe-instances
sanity-check: Your system clock is 302 seconds behind.
<?xml version="1.0" encoding="UTF-8"?>
<DescribeInstancesResponse xmlns="http://ec2.amazonaws.com/doc/2013-10-15/">
<requestId>53eb7530-2147-4ab6-8d6c-d9ddbdeef290</requestId>
<reservationSet/>
</DescribeInstancesResponse>
$ ec2-describe-instances i-4XXXXXX0
sanity-check: Your system clock is 302 seconds behind.
+----------------------------+---------------------------------------------+
| Code | Message |
+----------------------------+---------------------------------------------+
| InvalidInstanceID.NotFound | The instance ID 'i-4XXXXXX0' does not exist |
+----------------------------+---------------------------------------------+
密钥和实例编号都已从控制台复制并粘贴到终端window。不可能有错字。
1.can 您在服务器中安装了 NTP 并尝试您可以看到错误“”
安装 NTP:
yum install ntp
service ntpd restart
等待一段时间同步时间,然后在命令下方触发,
ec2-describe-instances i-4XXXXXX0
希望对您有所帮助:)
首先您需要正确配置 AWS CLI 并在您的 AWS ACCESS KEY 和 SECRET 中烘焙,其中包含描述实例的策略。
有关如何设置 aws-cli 的更多信息,请遵循 link http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html
正确完成后,您可以通过在查询中传递区域来列出特定区域中的 ec2 实例。例如:- 描述 us-west-2 区域中的所有 ec2 实例。
aws ec2 describe-instances --region us-west-1
您还可以使用带有管道符号的 "jq",用于解析 json 并仅获取 ec2-instance 的 public ip。
我有一个实例,并计划在不久的将来有更多实例,但前提是我可以从外部世界管理它们。因此,我需要远程请求新服务器,随意启动或关闭它们。因此,由于 IP 地址每次都会更改,因此我需要一种方法来查询服务器的 public DNS 名称。而这一切都需要通过 AWS CLI 来完成。
最近几天我一直在努力寻找这些信息,我终于来了。
我的服务器在 EC2 集群之外安装了 AWS CLI。 我的 "Access Key ID" 从 IAM 页面复制并分配给此服务器上的适当变量
$ echo $AWS_ACCESS_KEY
XXXXXXXXXXXX4PEXXXXX
$ ec2-describe-instances
sanity-check: Your system clock is 302 seconds behind.
<?xml version="1.0" encoding="UTF-8"?>
<DescribeInstancesResponse xmlns="http://ec2.amazonaws.com/doc/2013-10-15/">
<requestId>53eb7530-2147-4ab6-8d6c-d9ddbdeef290</requestId>
<reservationSet/>
</DescribeInstancesResponse>
$ ec2-describe-instances i-4XXXXXX0
sanity-check: Your system clock is 302 seconds behind.
+----------------------------+---------------------------------------------+
| Code | Message |
+----------------------------+---------------------------------------------+
| InvalidInstanceID.NotFound | The instance ID 'i-4XXXXXX0' does not exist |
+----------------------------+---------------------------------------------+
密钥和实例编号都已从控制台复制并粘贴到终端window。不可能有错字。
1.can 您在服务器中安装了 NTP 并尝试您可以看到错误“”
安装 NTP:
yum install ntp
service ntpd restart
等待一段时间同步时间,然后在命令下方触发,
ec2-describe-instances i-4XXXXXX0
希望对您有所帮助:)
首先您需要正确配置 AWS CLI 并在您的 AWS ACCESS KEY 和 SECRET 中烘焙,其中包含描述实例的策略。
有关如何设置 aws-cli 的更多信息,请遵循 link http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html
正确完成后,您可以通过在查询中传递区域来列出特定区域中的 ec2 实例。例如:- 描述 us-west-2 区域中的所有 ec2 实例。
aws ec2 describe-instances --region us-west-1
您还可以使用带有管道符号的 "jq",用于解析 json 并仅获取 ec2-instance 的 public ip。