【问题标题】:Get current instance id within EB worker - BOTO Python在 EB 工作人员中获取当前实例 ID - BOTO Python
【发布时间】:2015-08-11 19:06:28
【问题描述】:

在 AWS 上的 EB 工作人员中,我想确定代码正在运行的实例。 我正在使用 Boto 和 Python。 我知道我可以列出所有实例,但我怎么知道这个工作人员正在运行的实例? 谢谢!

【问题讨论】:

    标签: python amazon-web-services amazon-elastic-beanstalk boto


    【解决方案1】:

    使用或依赖于 boto 无济于事。更简单的方法是依赖EC2 Meta-Data

    您可以从您的实例执行 curl 或 http-get 到 URL - http://169.254.169.254/latest/meta-data/ 并获取数据。

    要获取实例 ID - 执行 curl 到 http://169.254.169.254/latest/meta-data/instance-id

    您可以从 Meta-Data 获得的其他详细信息是

    ami-id
    ami-launch-index
    ami-manifest-path
    block-device-mapping/
    hostname
    instance-action
    instance-id
    instance-type
    kernel-id
    local-hostname
    local-ipv4
    mac
    network/
    placement/
    public-hostname
    public-ipv4
    public-keys/
    reservation-id
    security-groups
    services/
    

    更多信息 - http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html

    【讨论】:

    • Boto 可能仍然有用。 boto.utils 模块提供了一个名为get_instance_metadata 的函数,用于从元数据服务中检索数据。如果服务器最初没有响应,它还会处理重试。
    猜你喜欢
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多