gpt4 book ai didi

amazon-web-services - 尝试从其中检索 EC2 实例 ID 元数据时超时

转载 作者:行者123 更新时间:2023-12-04 13:00:04 26 4
gpt4 key购买 nike

我正在启动一个 Windows 10 EC2 实例并尝试使用以下命令从 CMD 检索它的实例 ID:

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

这一直有效到昨天,但现在每次都失败,引发超时错误。

curl: (7) Failed to connect to 169.254.169.254 port 80: Timed out

我查阅了 aws 的关于检索 EC2 元数据的文档,但没有找到任何关于检索尝试的过期时间的信息。此外,我尝试从我的实例创建一个 AMI 并基于此 AMI 启动一个新实例,以尝试对可能的到期时间进行某种“刷新”,但没有奏效。

我在 IAM 角色中搜索了与检索元数据权限相关的内容,但似乎没有任何内容适合我的问题。

我也试过 here 的答案但对于我的问题,没有什么足够具体的。

可能发生了什么?这连续工作了大约两个月,突然停止工作。

修复方法

另一个 post ,关于类似的问题,得到了解决我的问题的答案。

我只是跑了 C:\ProgramData\Amazon\EC2-Windows\Launch\Scripts\InitializeInstance.ps1并且该脚本应用了新生 EC2 Windows 实例的默认规范。我仍然不知道为什么会出现这个问题,但是这个解决方案适用于在配置规范上没有任何松懈的人。

最佳答案

从您共享的解决方法来看,您无法获取实例 ID 的原因似乎是您的实例的路由配置错误。要从元数据中检索实例 ID,路由 169.254.169.254 必须指向实例的正确网关。当您尝试在与创建 AMI 的父实例不同的子网中从自定义 AMI 启动实例时,Windows Server 2016 或更高版本通常会出现此问题。

当您运行该命令时,它会调度 InitializeInstance.ps1 脚本,并在下次启动时重新配置路由。

以后,如果您看到任何此类问题,请确保 IP 169.254.169.254 指向正确的网关,您可以使用命令 ipconfig/all 和 route print 命令进行检查,以防您发现路由配置错误,您可以使用带有适当参数的路由删除和路由添加命令来使路由正确或简单地调度 InitializeInstance.ps1 脚本,这将在实例下次启动时更正路由。

请引用:https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2launch.html

关于amazon-web-services - 尝试从其中检索 EC2 实例 ID 元数据时超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59493723/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com