Résoudre les problèmes liés à une instance Windows défaillante à l’aide d’EC2Rescue et du gestionnaire de systèmes
AWS Support vous fournit un document Run Command Systems Manager afin de servir d’interface avec votre instance Systems Manager pour exécuter EC2Rescue for Windows Server. Le document Exécuter la commande s’appelle AWSSupport-RunEC2RescueForWindowsTool
.
Le document Exécuter la commande Systems Manager effectue les tâches suivantes :
-
Il télécharge et vérifie EC2Rescue for Windows Server.
-
Il importe un module PowerShell pour faciliter votre interaction avec l’outil.
-
Il exécute EC2RescueCmd avec la commande et les paramètres fournis.
Le document Exécuter la commande Systems Manager accepte trois paramètres :
-
Command — Action EC2Rescue for Windows Server. Les valeurs autorisées actuelles sont :
-
ResetAccess — Permet de définir que le mot de passe d’administrateur local ne doit pas expirer. Le mot de passe administrateur local de l’instance actuelle sera réinitialisé et le mot de passe généré de manière aléatoire sera stocké de manière sécurisée dans le Parameter Store en tant que
/EC2Rescue/Password/<INSTANCE_ID>
. Si vous sélectionnez cette action sans fournir de paramètres, les mots de passe sont chiffrés automatiquement avec la clé KMS par défaut. Vous pouvez aussi spécifier l’ID d’une clé KMS dans Paramètres pour chiffrer le mot de passe avec votre propre clé. -
CollectLogs — Exécute EC2Rescue for Windows Server avec l’action
/collect:all
. Si vous sélectionnez cette action,Parameters
doit inclure le nom d’un compartiment Amazon S3 dans lequel les journaux seront chargés. -
FixAll — Exécute EC2Rescue for Windows Server avec l’action
/rescue:all
. Si vous sélectionnez cette action,Parameters
doit inclure le nom du périphérique de stockage en mode bloc à corriger.
-
-
Parameters (Paramètres) — Paramètres PowerShell à transmettre pour la commande spécifiée.
Note
Pour que l’action ResetAccess fonctionne, votre instance Amazon EC2 doit être dotée de la politique suivante attachée pour écrire le mot de passe chiffré dans Parameter Store. Attendez quelques minutes avant de tenter de réinitialiser le mot de passe d’une instance après avoir attaché cette politique au rôle IAM associé.
À l’aide de l’clé KMS par défaut :
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": [ "arn:aws:ssm:
region
:account_id
:parameter/EC2Rescue/Passwords/<instanceid>
" ] } ] }
À l’aide d’une clé KMS personnalisée :
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:PutParameter" ], "Resource": [ "arn:aws:ssm:
region
:account_id
:parameter/EC2Rescue/Passwords/<instanceid>
" ] }, { "Effect": "Allow", "Action": [ "kms:Encrypt" ], "Resource": [ "arn:aws:kms:region
:account_id
:key/<kmskeyid>
" ] } ] }
La procédure suivante décrit comment afficher le JSON pour ce document dans la console Amazon EC2.
Pur afficher le JSON pour le document Exécuter la commande Systems Manager
-
Ouvrez la console AWS Systems Manager à l’adresse https://console.aws.amazon.com/systems-manager/
. -
Dans le panneau de navigation, développez Shared Services (Services partagés) et choisissez Documents.
-
Dans la barre de recherche, définissez Propriétaire sur M’appartenant ou appartenant à Amazon et définissez Document name prefix (Préfixe du nom du document) sur
AWSSupport-RunEC2RescueForWindowsTool
. -
Sélectionnez le document
AWSSupport-RunEC2RescueForWindowsTool
, choisissez Contents (Contenu), puis affichez le JSON.
Exemples
Voici quelques exemples d’utilisation du document Run Command Systems Manager pour exécuter EC2Rescue pour Windows Server à l’aide de la AWS CLI. Pour plus d’informations sur l’envoi de commandes avec la AWS CLI, consultez le manuel AWS CLI Référence des commandes.
Tentative de correction de tous les problèmes identifiés sur un volume racine hors connexion
Essayez de corriger tous les problèmes identifiés sur un volume racine hors connexion attaché à une instance Amazon EC2 Windows :
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue offline volume xvdf
" --parameters "Command=FixAll, Parameters='xvdf
'" --output text
Collectez les journaux à partir de l’instance Amazon EC2 Windows actuelle
Collectez tous les journaux à partir de l’instance Amazon EC2 Windows en ligne actuelle et chargez-les dans un compartiment Amazon S3 :
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online log collection to S3
" --parameters "Command=CollectLogs, Parameters='amzn-s3-demo-bucket
'" --output text
Collectez les journaux à partir d’un volume d’instance Amazon EC2 Windows hors connexion
Collecter tous les journaux à partir d’un volume hors connexion vers une instance Amazon EC2 Windows et les charger dans Amazon S3 avec une URL pré-signée :
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue offline log collection to S3
" --parameters "Command=CollectLogs, Parameters=\"-Offline -BlockDeviceNamexvdf
-S3PreSignedUrl 'YOURS3PRESIGNEDURL
'\"" --output text
Réinitialisez le mot de passe administrateur local
Les exemples suivants illustrent les méthodes vous permettant de réinitialiser le mot de passe administrateur local. La sortie fournit un lien vers Parameter Store, dans lequel vous pouvez trouver le mot de passe sécurisé généré de manière aléatoire que vous pouvez utiliser ensuite pour RDP dans votre instance Windows Amazon EC2 en tant qu’administrateur local.
Réinitialiser le mot de passe administrateur local d’une instance en ligne à l’aide de la AWS KMS key par défaut alias/aws/ssm :
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online password reset
" --parameters "Command=ResetAccess" --output text
Réinitialiser le mot de passe administrateur local d’une instance en ligne à l’aide d’une clé KMS :
aws ssm send-command --instance-ids "
i-0cb2b964d3e14fd9f
" --document-name "AWSSupport-RunEC2RescueForWindowsTool" --comment "EC2Rescue online password reset
" --parameters "Command=ResetAccess, Parameters=a133dc3c-a2g4-4fc6-a873-6c0720104bf0
" --output text
Note
Dans cet exemple, l’clé KMS est a133dc3c-a2g4-4fc6-a873-6c0720104bf0
.