【问题标题】:How to get ec2 instance details with price details using aws cli如何使用 aws cli 获取带有价格详细信息的 ec2 实例详细信息
【发布时间】:2017-03-03 06:56:11
【问题描述】:

如何获取带有实例价格详细信息的 ec2 实例详细信息(如名称、ID、类型、区域、数量、平台、按需/预留)。

在 cli 中使用 aws api 并将其写入为 csv 文件。

提前致谢。

【问题讨论】:

    标签: amazon-web-services amazon-ec2


    【解决方案1】:

    我建议您使用 ansibleec2-inventory 这样做。

    Ansible 将能够使用以下请求获取所有这些信息:

    那么你可以拥有这样的平台,例如:

    ansible -i ec2.py -m debug -a "var=ec2_platform"  all
    

    您必须在 yaml 中创建一个脚本来获取您需要的信息并将它们写入 csv 文件。

    我不知道有什么简单的方法可以获取 amazon-ec2 服务器的确切价格,需要考虑很多参数,操作系统、磁盘空间、服务器类型、是否保留,等等……

    但我使用上面告诉你的内容做了一个很好的近似。

    下面是使用 ansible 和 ec2 进行动态库存的解释: http://docs.ansible.com/ansible/intro_dynamic_inventory.html

    希望对您有所帮助!

    【讨论】:

    • 谢谢@Hanoo。但是在当前情况下,如果我只获得特定实例的保留/按需价格,我无法使用 ansible 来获取这些数据和定价,那么这对我来说很好。
    【解决方案2】:

    如果您的目标不是自动执行服务器的分配,您可以从这个 URL 获得一个快照: https://aws.amazon.com/fr/ec2/pricing/on-demand/

    您需要知道: 服务器类型(例如:m3.large) 预订类型(预订或按需) 操作系统类型(linux、windows、RHEL、...) 小时覆盖率(这取决于您是否在夜间关闭服务器,否则......)

    那么你将获得一个很好的近似值。

    如果您想了解更多详细信息,则必须查看您的网络和数据活动。而且这也不是那么容易计算的……

    另一种方法是进入您的定价菜单,查看您的数据,以了解您在过去一个月支付的费用。但是,如果您想估算新服务器的奖金,这将不起作用。

    希望对您有所帮助。

    【讨论】:

      【解决方案3】:

      类似于我在这里的回答:get ec2 pricing programmatically?

      您可以执行类似以下的操作:

      aws pricing get-products --service-code AmazonEC2 --filters "Type=TERM_MATCH,Field=instanceType,Value=m5.xlarge" "Type=TERM_MATCH,Field=location,Value=US East (N. Virginia)" --region us-east-1 | jq -rc '.PriceList[]' | jq -r '[ .product.attributes.servicecode, .product.attributes.location, .product.attributes.instancesku?, .product.attributes.instanceType, .product.attributes.usagetype, .product.attributes.operatingSystem, .product.attributes.memory, .product.attributes.physicalProcessor, .product.attributes.processorArchitecture, .product.attributes.vcpu, .product.attributes.currentGeneration, .terms.OnDemand[].priceDimensions[].unit, .terms.OnDemand[].priceDimensions[].pricePerUnit.USD, .terms.OnDemand[].priceDimensions[].description] | @csv'
      

      【讨论】:

      • 这很棒。请注意,如果您使用不同的默认输出格式,则必须添加 --output json
      猜你喜欢
      • 2017-07-28
      • 2018-10-29
      • 2023-01-23
      • 1970-01-01
      • 2012-06-02
      • 2017-12-26
      • 2014-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多