amazon-web-services - ec2-describe-instance-status Client.InvalidInstanceID.NotFound 但我知道实例存在

标签 amazon-web-services amazon-ec2 amazon-elb aws-cli

我已经设置了一些亚马逊 AWS CLI 工具(EC2、Auto Scaling、Monitoring 和 ELB)。这些工具设置正确并且工作完美。我的环境变量都设置好了,与这个 Q 相关的变量是:

export EC2_REGION=eu-west-1
export EC2_URL=https://ec2.$EC2_REGION.amazonaws.com
export AWS_ELB_URL=https://elasticloadbalancing.$EC2_REGION.amazonaws.com

当我跑 ec2-describe-instance-status i-XXXXXXXX对于我的任何实例,我得到:
Client.InvalidInstanceID.NotFound: The instance ID 'i-XXXXXXXX' does not exist

我知道实例 ID 存在,我将它从 AWS Web 控制台复制出来,它位于 eu-west-1 区域,并且我的 env vars 设置为该区域。

对于我的一生,我无法弄清楚为什么它找不到我的实例。有什么明显的我做错了吗?

更新:由于某种原因,重新创建 x509 cert/pk 解决了这个问题。

最佳答案

我有同样的问题。这是因为我没有为我的命令定义一个区域。我假设它会列出所有区域的所有实例,但它默认为 us-west-1我在那里没有任何实例。
为了描述我在爱尔兰的机器,我使用以下内容:ec2-describe-instances --region eu-west-1 注意:我正在其他地方定义我的 AWS 访问 key 和 secret 。
为了避免这个问题,我现在通过 environment variable 设置了我的区域。在我的 linux 和 windows 机器上:EC2_URL=https://ec2.eu-west-1.amazonaws.com这样我就不必在命令行上明确说明。
2014 年 5 月更新 您还可以通过将以下几行添加到 ~/.aws/config 来设置区域主文件夹中的文件(未在 Windows 上测试)。这是我现在首选的方法,尤其是在我的 VM 和容器上:

[default]
region = eu-west-1
有关更多信息,请参阅 offical docs here.
2021 年 5 月更新
由于我现在跨多个区域工作,因此我使用隐式和临时环境变量来定义该命令的区域和 不是 在我的 .aws/config 中有一个默认值这可能很危险。这也使 bash 脚本编写更容易,因为我可以为整个脚本/实用程序定义它。它打字多一点,但更安全,更灵活和透明,例如:
AWS_DEFAULT_REGION=eu-central-1 aws ec2 describe-instances

# or for a script/utility
AWS_DEFAULT_REGION=us-east-1 ./tagInstances.sh

关于amazon-web-services - ec2-describe-instance-status Client.InvalidInstanceID.NotFound 但我知道实例存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15969649/

相关文章:

amazon-web-services - EBS 与 EFS 读写延迟

amazon-web-services - 修改Cloudformation中的现有资源

amazon-web-services - 如何在不知道包含文件夹的情况下在 Amazon S3 存储桶中查找文件

amazon-web-services - AWS lambda nodejs 在使用 X-RAY 时显示错误

amazon-ec2 - AWS - 停止负载均衡器

amazon-web-services - 将 Amazon EC2 与 Hover.com 结合使用

configuration - 将环境属性与弹性 beantalk 配置文件中的文件一起使用

amazon-web-services - AWS CodeDeploy 服务上的“没有主机成功”错误

ajax - 一个人可以使用 ELB 应用程序负载均衡器(位于 Solr 前面)添加 CORS header 吗?

amazon-web-services - 向 Amazon AWS ELB 响应添加自定义 header