2

Je crée une nouvelle instance pour mes opsworks pile et veulent attendre qu'il soit complètement démarré dans l'état « en ligne », et je pensais queEst-il possible d'utiliser l'AWS CLI pour attendre qu'une instance soit «en ligne» et se termine avec les étapes d'installation/configuration d'opsworks?

aws ec2 wait instance-running 

ferait tout cela, mais il semble que ce que attend pour que l'instance soit démarrée, pas complètement terminée avec l'installation/configuration.

Est-il possible d'attendre qu'il soit complètement amorcé avec l'AWS CLI avec quelque chose que j'ai peut-être oublié? Merci d'avance.

Répondre

2

Malheureusement, il n'existe aucune commande AWS CLI pour OpsWorks permettant cette action. Cependant, cela ne vous laissera pas de chance, vous pouvez exécuter la commande describe sur repeat jusqu'à ce que le statut soit dans l'état en ligne. Le seul problème que vous pouvez rencontrer avec cette méthode est l'exécution des limites de l'API. Vous devez donc inclure une fonction de veille pour limiter le nombre d'appels.

Ceci est proche de ce que vous pourriez utiliser, je n'ai pas eu le temps de le tester exactement.

while [$STATUS != 'Status:Online'; do 
    STATUS=`aws opsworks --region us-east-1 describe-instances --instance-id 8c2673b9-3fe5-420d-9cfa-78d875ee7687 | grep "Status" | sed 's/\"//g'` 
    sleep -m 1 
done 

Pour votre future référence:

Voici tous les AWS OpsWorks commandes CLI: http://docs.aws.amazon.com/cli/latest/reference/opsworks/index.html

Voici la commande spécifique dont je parlais: http://docs.aws.amazon.com/cli/latest/reference/opsworks/describe-instances.html

Permettez-moi sais Si je peux fournir quelques précisions!

+0

Merci! Cela devrait fonctionner assez bien pour moi pour le moment! –