2017-07-24 8 views
2

Bien qu'il semble y avoir plusieurs façons de générer et de filtrer certaines commandes AWSCLI dans cette liste, est-ce que quelqu'un a un moyen simple et facile de lister tous les types d'instance EC2 pour une région spécifique ?Lister tous les types d'instance EC2 dans une région ou AZ

Ou peut-être que cette liste est publiée dans un fichier .json dans un compartiment quelque part, géré par AWS?

Je cherche simplement pour ce type de sortie:

t1.micro 
t2.nano 
t2.micro 
t2.small 
... 

Répondre

3

Eh bien, il semble qu'au moins une façon programmatique à faire est d'interroger l'API de prix AWS:

#!/bin/bash 

curl https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonEC2/current/index.json | jq -r '.products[].attributes["instanceType"]' | sort -u | grep '\.' 

Un point essentiel pour cela est ici, en cas de modifications mineures futures: https://gist.github.com/nmagee/b096e6fadf9ac336da7ffdada43f656a

Ce qui manque, c'est le regroupement/la spécification par Région AWS, ce qui peut être une distinction importante - toutes les régions n'ont pas toutes les offres de type d'instance.

+1

Vous pouvez obtenir [listes de prix régionaux] (https://aws.amazon.com/blogs/aws/aws-pres-liste-api-update-regional-price-lists/) qui peuvent afficher les types d'instance. Cependant, cela ne ** descendra pas au niveau AZ. Lorsque les Régions ajoutent de nouveaux AZ, les nouvelles AZ ne prennent souvent pas en charge les types d'instance de génération antérieure. –

1

En autant que je sache, cette liste ne sont pas disponibles et ne peut être trouvée à partir aws cli.

Même lors de l'exécution du aws ec2 run-instances, les types d'instances disponibles des listes de paramètres instance-type et fait référence à aws docs

Others ont analysé les données et fait disponibles.

+0

Merci Frédéric. J'ai toujours aimé cette page ec2instances.info, et ils remarquent au bas de la page qu'ils sont en train de gratter ça sur les pages web AWS. On dirait que quelque chose que vous devriez être en mesure de saisir dans le code si? –