【问题标题】:Is it possible to determine the aws instance of my app using js/node aws-sdk?是否可以使用 js/node aws-sdk 确定我的应用程序的 aws 实例?
【发布时间】:2015-11-12 16:57:41
【问题描述】:

我正在创建一个通过启动/复制实例来自动扩展的应用。如果实例重复。我希望我的 js 代码确定启动的实例。我正在使用 AWS JavaScript 开发工具包

【问题讨论】:

    标签: javascript node.js amazon-web-services amazon-ec2 sdk


    【解决方案1】:

    您是否正在尝试获取有关运行您的应用程序的 EC2 实例的信息?如果是这样,您可以从 EC2 实例上运行的 Node.js 应用程序向 http://169.254.169.254/latest/meta-data/ 发送 HTTP 请求。

    http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html#instancedata-data-retrieval

    您不使用 Auto Scaling 组来扩展您的应用程序是否有原因?可能比自己实现缩放更容易。

    http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/WhatIsAutoScaling.html

    【讨论】:

    • 您好,先生!谢谢回答! “您是否正在尝试获取有关您的应用程序正在其上运行的 EC2 实例的信息?”是的,特别是我的应用程序当前使用的实例 ID。我对 AWS 很陌生,目前正在研究它,所以我没有太多想法。准确地说,我有一个包含子应用程序的应用程序。每个子应用程序都存储在单独的实例中,这些实例连接到不同的 twitter 帐户(使用 firehose api)。如果一个实例已满,我需要创建一个新实例来连接到 twitter api。
    • 对不起,如果我的英语说得不好!无论如何再次感谢!
    【解决方案2】:

    我已经知道如何使用 nodejs 获取我的实例 ID

    `request({
        method: "GET",
        url: 'http://169.254.169.254/latest/meta-data/public-ipv4'
    } ,function(err, data){
        if(err){
            cb(err, null);
        }else{
            var public_ip = data.body;
            cb(null, public_ip);
        }
    });`
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-19
      • 2019-04-20
      • 2016-12-18
      • 2017-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多