Comment savoir quand une instance EC2 a été arrêtée?

8

J'ai des centaines d'instances dans la console Web EC2.

Certains sont arrêtés. Je peux voir qu'ils ont été créés il y a plusieurs mois ou années. Ils semblent abandonnés et oubliés pendant un certain temps, mais il est difficile de dire si les éliminer est sûr.

Par exemple, il pourrait s'agir d'une ancienne sauvegarde, quelqu'un aurait pu migrer une charge vers de nouvelles instances et conserver les anciennes pendant quelques semaines par précaution, etc.

Nous finissons par en garder la plupart car c'est le choix le plus sûr.

Nous payons toujours les volumes EBS lorsque l'instance est arrêtée (mais pas arrêtée). Le prix peut grimper au fil du temps avec de nombreuses instances inutilisées (EBS est de 140 $ par mois par To). J'aimerais donc faire un peu de nettoyage.

Je pense que si je pouvais trouver l'heure à laquelle l'instance a été fermée, ce serait un bon indicateur de son degré d'abandon.

Comment savoir quand une instance a été arrêtée pour la dernière fois?

user5994461
la source
faire des AMI des instances avant de les terminer ... les instantanés seront moins chers.
Skaperen

Réponses:

6

Utilisation de l'awscli. pip install awscli

aws ec2 describe-instances --output table --instance-id i-aef88019

Production:

|||  StateTransitionReason |  User initiated (2015-11-16 13:36:40 GMT)   |||
[...]
||||                             StateReason                            ||||
|||+---------+----------------------------------------------------------+|||
||||  Code   |  Client.UserInitiatedShutdown                            ||||
||||  Message|  Client.UserInitiatedShutdown: User initiated shutdown   ||||

Nous pouvons voir ce qui est arrivé à l'instance et à quelle heure.

Par exemple, celui-ci a été arrêté manuellement le 2015-11-16 13:36:40 GMT.

user5994461
la source
Cela n'inclut pas toujours une raison et / ou une heure. Les documents indiquent que "cela pourrait être une chaîne vide". docs.aws.amazon.com/AWSEC2/latest/APIReference/…
Matt Houser
2
Cela fonctionne si l'instance a été arrêtée dans la console Web EC2. Cela ne fonctionne pas si l'instance shutdown -h nowprovient de l'intérieur. C'est tout ce que nous pouvons obtenir jusqu'à ce qu'Amazon ajoute officiellement une méta-information "Last Shutdown" aux instances.
user5994461
1

Comme vous l'avez mentionné, ces machines ont été créées il y a de nombreuses années, je pense que vous devriez vérifier si elles utilisent l'ancien type de magasin d' instances d' appels de stockage .

D'après mon expérience, si vous devez arrêter ces machines EC2 avec le stockage d'instance, la seule option est de le terminer, mais cela entraînerait une perte de données.

Donc, ma suggestion est d'ajouter un nouvel EBS pour sauvegarder toutes les données et créer un nouvel EC2 avec les derniers paramètres ou simplement sauvegarder les données à distance. Arrêtez ensuite les anciennes instances EC2, ce qui devrait éliminer vos coûts de stockage.

Simon MC. Cheng
la source
0

Si votre objectif est d'économiser de l'argent, vous pouvez créer un instantané EBS des disques, puis supprimer les volumes.

Les instantanés EBS sont facturés à un prix inférieur aux volumes réels.

Par exemple, aux États-Unis-Est:

  • Les instantanés sont de 9,5 c / Go
  • Les volumes EBS SSD à usage général sont facturés à 10c / Go de stockage provisionné
  • Les volumes EBS magnétiques plus anciens sont facturés à 5c / Go de stockage provisionné

Cependant, les instantanés EBS ne nécessitent que de l'espace de stockage pour les blocs utilisés . Si les volumes EBS ont de l'espace inutilisé (par exemple, seulement 10 Go utilisés sur 30 Go), les instantanés EBS seront moins chers.

Si les volumes EBS sont généralement pleins, vous pouvez les instantaner puis les recréer en tant que volumes EBS Cold HDD , qui sont facturés à 2,5 c / Go de stockage provisionné .

John Rotenstein
la source