首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用AWS从外部获取EC2实例的公共IP地址

使用AWS从外部获取EC2实例的公共IP地址
EN

Unix & Linux用户
提问于 2016-03-03 21:34:58
回答 1查看 16.8K关注 0票数 7

我正试图利用亚马逊的弹性,并将实例放到网上,并停止使用AWS cli。但正如你所知,每次你离线一个系统,让它复活,它就会有一个新的IP地址。我在位于其他地方的Centos 6服务器上安装了AWS-cli包。我已经研究这个问题好几天了,但是找不到一个可以工作的命令,我可以从我的Centos盒中发出这个命令,并在亚马逊EC2上获取实例的IP地址。EC2实例已启动并正在运行。

我发现的最相关的信息是

代码语言:javascript
复制
aws ec2 describe-instances

但是,我从这个命令中得到的只是一个类似于用法语法输出的东西。我还发现(并迅速丢失)一个开关--query,后面跟着一组关键字来提取这些信息。但是这个命令给了我一个回应,说--query不是一个公认的论点。我检查了这个命令的Amazon引用,它似乎只接受--filter参数,并且示例远远没有帮助。

有人知道如何做到这一点吗?

编辑更多关于我在周末发现的问题。在尝试从实例获取公共DNS信息之前,我需要一种连接到此实例的方法。无论我做什么,我都无法获得关于我所拥有的实例的信息:

代码语言:javascript
复制
$ ec2-describe-instances i-b78a096f
sanity-check: Your system clock is 50 seconds behind.
+----------------------------+---------------------------------------------+
|            Code            |                   Message                   |
+----------------------------+---------------------------------------------+
| InvalidInstanceID.NotFound | The instance ID 'i-b78a096f' does not exist |
+----------------------------+---------------------------------------------+

我知道我的AWS_ACCESS_KEYAWS_SECRET_KEY变量被正确地分配给它们的变量名。实例id已从AWS管理控制台复制和粘贴。为了进行测试,我编写了一个新实例,并对它测试了相同的命令,没有不同的结果。尽管当我运行ec2-describe-regions命令时,我可以看到对我来说没有问题的区域列表。我现在很傻。

EN

回答 1

Unix & Linux用户

发布于 2016-03-09 11:16:57

您可以使用start-instancesstop-instances命令启动/停止实例,如下所示-

代码语言:javascript
复制
aws ec2 stop-instances --instance-ids i-b78a096f
aws ec2 start-instances --instance-ids i-b78a096f

您将看到没有在命令行中指定区域名称,因为AWS cli<user_home_directory>/.aws/config文件中读取区域信息。这个文件看上去如下-

代码语言:javascript
复制
[default]
output = json
region = us-east-1

此文件中区域属性的大多数可能值与实例所在的区域不同。所以你打电话去的区域和你认为应该去的区域不一样。我看不出有什么别的理由不起作用。

为了检查区域AWS的值,只需从命令行调用aws configure即可。它将询问您有关aws密钥,秘密,区域和响应格式。同时,如果不指定任何值,它将显示它将使用的值。

我在这样的场景中使用AWS cli,在这种情况下,从命令行管理AWS要快得多。不过,我已经创建了一个开源工具,用于同时可视化许多AWS资源,您可能会发现-

代码语言:javascript
复制
https://github.com/pistonportal/custom-turbine/wiki/Running-and-operating-Turbine-app 

例如,您可以在此工具中打开VPC Designer,查看VPC所涵盖的所有可用性区域,哪些子网位于哪个可用性区域,哪些VM位于哪个子网中。这要么需要在AWS控制台中多次单击,要么根本不可能。

它目前无法启动/停止一个实例,但这将在今后几天内提供。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/267478

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档