Démarrage EC2 - Comment savoir quand Windows est prêt?

10

Je travaille avec Amazon EC2 et j'ai quelques AMI Windows soutenues avec EBS. Lorsque je lance une nouvelle instance à partir d'un instantané EBS, le service EC2Config prépare pour moi la machine Windows. Je sais quand EC2Config est terminé car je peux vérifier la sortie de la console de l'instance - une fois qu'il dit "Windows est prêt", je sais que je vais bien.

Ce que je recherche, c'est un moyen de dire que "Windows est prêt" à partir du système d'exploitation lui-même. Je pense que l'URL de métadonnées accessible à partir du système d'exploitation me le dirait, mais je ne trouve aucune valeur appropriée.

http://169.254.169.254/latest/meta-data/

Mon objectif est d'exécuter des scripts de configuration une fois que "Windows est prêt". Certaines de mes tâches de configuration doivent s'assurer que la machine est entièrement configurée avant de démarrer - en particulier si EC2Config renomme l'ordinateur et redémarre. Je pourrais écrire quelque chose en utilisant les outils EC2 ou C # ... mais cela m'obligerait à utiliser mes clés AWS sur mes AMI (ce que je ne veux pas faire). Idéalement, je voudrais regarder quelque chose sur la machine elle-même pour savoir quand je peux commencer la configuration - quelque chose comme une entrée EventLog, regarder un fichier texte, vérifier l'URL des métadonnées, etc.

Question secondaire: je pourrais utiliser un bon article sur exactement ce que le processus de regroupement / dégroupage fait pour les machines EBS.

Dan
la source

Réponses:

14

EC2Config est configuré par défaut pour renommer l'hôte au premier démarrage. Renommer l'hôte sur Windows nécessite un redémarrage et, par conséquent, chaque instance redémarre une fois après le premier démarrage. Vous pouvez désactiver le changement de nom de l'hôte si vous n'utilisez pas le DNS interne pour l'instance. Plus de détails ici:

Service de configuration Windows: http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/appendix-windows-config.html

Le service EC2Config possède également son propre fichier journal dans l'instance:

C: \ Program Files \ Amazon \ Ec2ConfigService \ Logs \ Ec2ConfigLog.txt

Et ce fichier devrait avoir les détails pertinents du service EC2Config que vous voyez sur la sortie de la console Amazon. Voici un extrait de l'une de mes instances:

===== Démarrage d'Ec2RebootInstance dans un nouveau thread =======
Ec2InitializeDrives: Disque trouvé: \. \ PHYSICALDRIVE0
Vérification des volumes actuels pour tout changement de nom de périphérique
C: est monté avec la
poignée de port COM d'ouverture de nom de volume pour écrire dans le console
Ec2RebootInstance: attente de la fin de tous les threads
Ec2InitializeDrives: initialisation terminée.
Fermeture du plugin ... Ec2RebootInstance: vérification si un thread a demandé un redémarrage
Ec2RebootInstance: Windows est prêt à être utilisé L'
envoi de fenêtres d'événements est prêt à être utilisé par tout le monde

Ec2RebootInstance: surveillance des demandes de redémarrage.

Ameer Deen
la source
Parfait - c'est exactement ce dont j'avais besoin. Je vous remercie.
Dan
Salut Dan, si cela a fonctionné pour vous, cela vous dérangerait de voter pour la réponse comme étant utile :)? Je suis nouveau sur ce site mais je pense que le vote devrait augmenter de zéro lorsque vous le faites.
Ameer Deen
D'où vient cette ligne «L'envoi de fenêtres d'événements est prêt à être utilisé par tout le monde»? Ce n'est pas dans mes journaux et j'aimerais cet événement!
davemyron