AWS Systems ManagerChange Managern'est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. Pour plus d'informations, consultez AWS Systems ManagerChange Managerla section Modification de la disponibilité.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Mettre à jour une AMI Windows Server
Le runbook AWS-UpdateWindowsAmi vous permet d'automatiser les tâches de maintenance d'images sur vos Amazon Machine Image (AMI) Windows Amazon sans devoir créer le flux de travail en JSON ou YAML. Ce runbook est pris en charge pour Windows Server 2008 R2 ou une version ultérieure. Vous pouvez utiliser le runbook AWS-UpdateWindowsAmi pour effectuer les types de tâche suivants.
-
Installez toutes les mises à jour Windows et mettez à niveau les logiciels Amazon (comportement par défaut).
-
Installez toutes les mises à jour Windows spécifiques et mettez à niveau les logiciels Amazon.
-
Personnalisez une AMI en utilisant vos scripts.
Avant de commencer
Avant de commencer à travailler avec des runbooks, configurez des rôles pour Automation afin d'ajouter une politique iam:PassRole qui référence l'ARN du profil d'instance auquel vous souhaitez octroyer l'accès. Vous pouvez éventuellement configurer Amazon EventBridge for Automation, un outil dans AWS Systems Manager. Pour de plus amples informations, veuillez consulter Configuration d'Automation. Cette procédure pas à pas nécessite également que vous spécifiiez le nom d'un profil d'instance AWS Identity and Access Management (IAM). Pour de plus amples informations sur la création d’un profil d’instance IAM, consultez Configurer des autorisations d’instance requises pour Systems Manager.
Note
Les mises à jour de AWS Systems Manager SSM Agent sont généralement déployées dans différentes régions, à des heures différentes. Lorsque vous personnalisez ou mettez à jour une AMI, utilisez uniquement le code source AMIs publié pour la région dans laquelle vous travaillez. Vous aurez ainsi l'assurance de travailler avec le dernier agent SSM Agent publié pour cette région, et vous éviterez des problèmes de compatibilité.
Le runbook AWS-UpdateWindowsAmi accepte les paramètres d'entrée suivants.
| Paramètre | Type | Description |
|---|---|---|
|
SourceAmiId |
Chaîne |
(Obligatoire) L'ID d'AMI source. Vous pouvez référencer automatiquement le dernier ID d'AMI Windows Server à l'aide d'un paramètre Systems Manager public Parameter Store. Pour plus d'informations, consultez la section Requête pour obtenir la dernière version de Windows AMI IDs utilisant AWS Systems ManagerParameter Store |
|
SubnetId |
Chaîne |
(Facultatif) Le sous-réseau dans lequel vous souhaitez lancer l'instance temporaire. Vous devez spécifier une valeur pour ce paramètre si vous avez supprimé votre VPC par défaut. |
|
IamInstanceProfileName |
Chaîne |
(Obligatoire) Le nom du rôle de profil d’instance IAM que vous avez créé dans Configurer des autorisations d’instance requises pour Systems Manager. Le rôle de profil d'instance autorise Automation à effectuer des actions sur vos instances, comme l'exécution de commandes, ou le démarrage ou l'arrêt de services. Le runbook utilise uniquement le nom du rôle de profil d'instance. |
|
AutomationAssumeRole |
Chaîne |
(Obligatoire) Le nom du rôle de service IAM que vous avez créé dans Configuration d'Automation. Le rôle de service (également appelé rôle de responsable) accorde à Automation l'autorisation d'assumer votre rôle IAM et d'exécuter des actions en votre nom. Par exemple, le rôle de service autorise Automation à créer une nouvelle AMI lors de l'exécution de l'action |
|
TargetAmiName |
Chaîne |
(Facultatif) Nom de la nouvelle AMI une fois celle-ci créée. Le nom par défaut est une chaîne générée par le système qui inclut l'ID de l'AMI source, et les date et heure de création. |
|
InstanceType |
Chaîne |
(Facultatif) Type d'instance à lancer en tant qu'hôte d'espace de travail. Les types d'instances varient selon la région. La type par défaut est t2.medium. |
|
PreUpdateScript |
Chaîne |
(Facultatif) Un script à exécuter avant la mise à jour de l'AMI. Saisissez un script dans le runbook ou lors de l'exécution en tant que paramètre. |
|
PostUpdateScript |
Chaîne |
(Facultatif) Un script à exécuter après la mise à jour de l'AMI. Saisissez un script dans le runbook ou lors de l'exécution en tant que paramètre. |
|
IncludeKbs |
Chaîne |
(Facultatif) Spécifiez un ou plusieurs articles de la base de connaissances Microsoft (KB) IDs à inclure. Vous pouvez en installer plusieurs IDs en utilisant des valeurs séparées par des virgules. Formats valides : KB9876543 ou 9876543. |
|
ExcludeKbs |
Chaîne |
(Facultatif) Spécifiez un ou plusieurs articles de la Base de connaissances Microsoft (KB) IDs à exclure. Vous pouvez en exclure plusieurs à IDs l'aide de valeurs séparées par des virgules. Formats valides : KB9876543 ou 9876543. |
|
Catégories |
Chaîne |
(Facultatif) Spécifiez une ou plusieurs catégories de mise à jour. Vous pouvez filtrer les catégories en utilisant des valeurs séparées par une virgule. Options : Mise à jour critique, Mise à jour de la sécurité, Mise à jour de la définition, Report de mise à jour, Service Pack, Outil, Mise à jour, ou Pilote. Parmi les formats valides, on compte une seule entrée comme : Critical Update. Ou, vous pouvez spécifier une liste avec des éléments séparés par des virgules : Mise à jour critique, Mise à jour de la sécurité, Mise à jour de la définition. |
|
SeverityLevels |
Chaîne |
(Facultatif) Spécifiez un ou plusieurs niveaux de sécurité MSRC associés à une mise à jour. Vous pouvez filtrer les niveaux de sécurité en utilisant des valeurs séparées par une virgule. Options : Critique, Important, Faible, Modéré ou Non précisé. Parmi les formats valides, on compte une seule entrée comme : Critique. Ou, vous pouvez spécifier une liste avec des éléments séparés par des virgules : Critique, Important, Faible. |
Étapes d'Automation
Le runbook AWS-UpdateWindowsAmi inclut les étapes suivantes par défaut.
- Étape 1 : launchInstance (action
aws:runInstances) -
Cette étape lance une instance avec un rôle de profil d'instance IAM à partir du
SourceAmiIDspécifié. - Étape 2 : runPreUpdate Script (
aws:runCommandaction) -
Cette étape vous permet de spécifier un script comme chaîne exécutée avant l'installation des mises à jour.
- Étape 3 : mettre à jour EC2 Config (
aws:runCommandaction) -
Cette étape utilise le
AWS-InstallPowerShellModulerunbook pour télécharger un PowerShell module AWS public. Systems Manager vérifie l'intégrité du module via un hachage SHA-256. Systems Manager vérifie ensuite le système d'exploitation pour déterminer s'il convient de mettre à jour EC2 Config ou EC2 Launch. EC2Config s'exécute sous Windows Server 2008 R2 via Windows Server 2012 R2. EC2Launch s'exécute sous Windows Server 2016. - Étape 4 : mise à jour SSMAgent (
aws:runCommandaction) -
Cette étape met à jour SSM Agent à l'aide du runbook
AWS-UpdateSSMAgent. - Étape 5 : mise à jour AWSPVDriver (
aws:runCommandaction) -
Cette étape met à jour les pilotes AWS PV à l'aide du
AWS-ConfigureAWSPackagerunbook. - Étape 6 : updateAwsEna NetworkDriver (
aws:runCommandaction) -
Cette étape met à jour les pilotes réseau AWS ENA à l'aide du
AWS-ConfigureAWSPackagerunbook. - Étape 7 : installWindowsUpdates (
aws:runCommandaction) -
Cette étape installe les mises à jour Windows à l'aide du runbook
AWS-InstallWindowsUpdates. Par défaut, Systems Manager recherche et installe l'ensemble des mises à jour manquantes. Vous pouvez modifier le comportement par défaut en spécifiant l'un des paramètres suivants :IncludeKbs,ExcludeKbs,Categories, ouSeverityLevels. - Étape 8 : runPostUpdate Script (
aws:runCommandaction) -
Cette étape vous permet de spécifier un script comme chaîne qui est exécutée après l'installation des mises à jour.
- Étape 9 : runSysprepGeneralize (
aws:runCommandaction) -
Cette étape utilise le
AWS-InstallPowerShellModulerunbook pour télécharger un PowerShell module AWS public. Systems Manager vérifie l'intégrité du module via un hachage SHA-256. Systems Manager exécute ensuite sysprep à l'aide de méthodes AWS prises en charge pour EC2 Launch (Windows Server 2016) ou EC2 Config (Windows Server 2008 R2 à 2012 R2). - Étape 10 : stopInstance (action
aws:changeInstanceState) -
Cette étape arrête toutes les instances mises à jour.
- Étape 11 : createImage (action
aws:createImage) -
Cette étape crée une nouvelle AMI avec un nom descriptif qui la relie à l'ID source et l'heure de création. Par exemple : « AMI générée par EC2 Automation le {{global:Date_Time}} à partir de {{}SourceAmiId} » où DATE_TIME et sourceID représentent les variables d'automatisation.
- Étape 12 : TerminateInstance (
aws:changeInstanceStateaction) -
Cette étape nettoie l'automatisation en mettant hors service l'instance en cours d'exécution.
- Sortie
-
Cette section vous permet de désigner les sorties de différentes étapes ou valeurs de n'importe quel paramètre comme sortie d'Automation. Par défaut, la sortie est l'ID des AMI Windows mises à jour créées par l'automatisation.
Note
Par défaut, lorsqu'Automation exécute le runbook AWS-UpdateWindowsAmi et crée une instance temporaire, le système utilise le VPC par défaut (172.30.0.0/16). Si vous avez supprimé le VPC par défaut, vous recevrez l'erreur suivante :
VPC non défini 400
Pour régler ce problème, vous devez réaliser une copie du runbook AWS-UpdateWindowsAmi et spécifier un ID de sous-réseau. Pour de plus amples informations, veuillez consulter VPC non défini 400.
Pour créer une AMI Windows corrigée à l'aide d'Automation
Installez et configurez le AWS Command Line Interface (AWS CLI), si ce n'est pas déjà fait.
Pour de plus amples informations, consultez Installation ou mise à jour de la version la plus récente de l' AWS CLI.
-
Exécutez la commande suivante pour exécuter le runbook
AWS-UpdateWindowsAmi. Remplacez chaqueexample resource placeholderpar vos propres informations. L'exemple de commande ci-dessous utilise un Amazon récent EC2 AMI pour minimiser le nombre de correctifs à appliquer. Si vous exécutez cette commande plus d'une fois, vous devez spécifier une valeur unique pourtargetAMIname. Les noms des AMI doivent être uniques.aws ssm start-automation-execution \ --document-name="AWS-UpdateWindowsAmi" \ --parameters SourceAmiId='AMI ID',IamInstanceProfileName='IAM instance profile',AutomationAssumeRole='arn:aws:iam::{{global:ACCOUNT_ID}}:role/AutomationServiceRole'La commande renvoie un ID d'exécution. Copiez cet ID dans le Presse-papiers. Vous utiliserez cet ID pour afficher le statut de l'automatisation.
{ "AutomationExecutionId": "
automation execution ID" } -
Pour visualiser l'automatisation à l'aide de AWS CLI, exécutez la commande suivante :
aws ssm describe-automation-executions -
Pour afficher les détails de la progression de l'automatisation, exécutez la commande suivante.
aws ssm get-automation-execution --automation-execution-idautomation execution ID
Note
En fonction du nombre de correctifs appliqués, le processus de mise à jour corrective Windows exécuté dans cet exemple d'automatisation peut prendre 30 minutes ou plus pour se terminer.