繁体   English   中英

如何使用AWS CLI从外部获取EC2实例的公共DNS?

[英]How to get the public DNS of EC2 instance from outside using AWS CLI?

我有一个实例,并计划在不久的将来有更多实例,但前提是我可以从外部世界进行管理。 因此,我需要远程请求新服务器,启动或随意关闭它们。 因此,由于IP地址每次都会更改,因此我需要一种查询服务器的公共DNS名称的方法。 所有这些都需要通过AWS CLI来完成。

在过去的几天里,我一直在努力寻找这些信息,最后我来到了这里。

我的服务器在EC2集群之外,已安装AWS CLI。 我从IAM页面复制了“访问密钥ID”,并将其分配给此服务器上的适当变量

$ 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 |
+----------------------------+---------------------------------------------+

密钥和实例号都已从控制台复制并粘贴到终端窗口中。 他们中的任何一个都不可能有错字。

1.您能否在服务器中安装NTP并尝试查看错误“”

安装NTP:
yum install ntp
service ntpd restart

等待一段时间以同步时间,然后在命令下方触发,
ec2-describe-instances i-4XXXXXX0

希望对您有所帮助:)

首先,您需要正确配置AWS CLI,并放入具有描述实例策略的AWS ACCESS KEY和SECRET中。

有关如何设置aws-cli的更多信息,请访问链接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的公共ip。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM