【发布时间】:2017-03-03 06:56:11
【问题描述】:
如何获取带有实例价格详细信息的 ec2 实例详细信息(如名称、ID、类型、区域、数量、平台、按需/预留)。
在 cli 中使用 aws api 并将其写入为 csv 文件。
提前致谢。
【问题讨论】:
标签: amazon-web-services amazon-ec2
如何获取带有实例价格详细信息的 ec2 实例详细信息(如名称、ID、类型、区域、数量、平台、按需/预留)。
在 cli 中使用 aws api 并将其写入为 csv 文件。
提前致谢。
【问题讨论】:
标签: amazon-web-services amazon-ec2
我建议您使用 ansible 和 ec2-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
希望对您有所帮助!
【讨论】:
如果您的目标不是自动执行服务器的分配,您可以从这个 URL 获得一个快照: https://aws.amazon.com/fr/ec2/pricing/on-demand/
您需要知道: 服务器类型(例如:m3.large) 预订类型(预订或按需) 操作系统类型(linux、windows、RHEL、...) 小时覆盖率(这取决于您是否在夜间关闭服务器,否则......)
那么你将获得一个很好的近似值。
如果您想了解更多详细信息,则必须查看您的网络和数据活动。而且这也不是那么容易计算的……
另一种方法是进入您的定价菜单,查看您的数据,以了解您在过去一个月支付的费用。但是,如果您想估算新服务器的奖金,这将不起作用。
希望对您有所帮助。
【讨论】:
类似于我在这里的回答: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。