Création d'une AMI à l'aide de Windows Sysprep avec Config EC2 - Amazon Elastic Compute Cloud

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.

Création d'une AMI à l'aide de Windows Sysprep avec Config EC2

Lorsque vous créez une image à partir d'une instance sur laquelle le service EC2 Config est installé, EC2 Config exécute des tâches spécifiques au fur et à mesure de la préparation de l'image. Cela inclut l'utilisation de Windows Sysprep. Pour de plus amples informations, veuillez consulter Phases de Windows Sysprep.

Actions Windows Sysprep

Windows Sysprep et le service EC2 Config exécutent les actions suivantes lors de la préparation d'une image.

  1. Lorsque vous sélectionnez Arrêter avec Sysprep dans la boîte de dialogue Propriétés du EC2 service, le système exécute la commande ec2config.exe -sysprep.

  2. Le service EC2 Config lit le contenu du BundleConfig.xml fichier. Ce fichier se trouve dans le répertoire suivant par défaut : C:\Program Files\Amazon\Ec2ConfigService\Settings.

    Le fichier BundleConfig.xml contient les paramètres suivants. Vous pouvez modifier les paramètres suivants :

    • AutoSysprep: indique s'il faut utiliser Windows Sysprep automatiquement. Il n'est pas nécessaire de modifier cette valeur si vous exécutez Windows Sysprep à partir de la boîte de dialogue Propriétés du EC2 service. La valeur par défaut est No.

    • Set RDPCertificate : définit un certificat auto-signé pour le serveur Remote Desktop. Cela vous permet d’utiliser en toute sécurité le protocole RDP (Remote Desktop Protocol) pour vous connecter à l’instance. Modifiez la valeur sur Yes si de nouvelles instances doivent utiliser un certificat. Ce paramètre n’est pas utilisé avec les instances Windows Server 2012 car ces systèmes d’exploitation peuvent générer leurs propres certificats. La valeur par défaut est No.

    • SetPasswordAfterSysprep: définit un mot de passe aléatoire sur une instance récemment lancée, la chiffre avec la clé de lancement de l'utilisateur et transmet le mot de passe chiffré à la console. Modifiez la valeur sur No si de nouvelles instances ne doivent pas être définies sur un mot de passe chiffré aléatoire. La valeur par défaut est Yes.

    • PreSysprepRunCmd: emplacement de la commande à exécuter. La commande se trouve dans le répertoire suivant, par défaut : C:\Program Files\Amazon\Ec2ConfigService\Scripts\BeforeSysprep.cmd

  3. Le système exécute BeforeSysprep.cmd. Cette commande crée une clé de registre comme suit :

    reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f

    La clé de registre désactive les connexions RDP jusqu’à ce qu’elles soient réactivées. La désactivation des connexions RDP est une mesure de sécurité nécessaire car, lors de la première session de démarrage après l’exécution de Windows Sysprep, il y a une courte période pendant laquelle RDP autorise les connexions et le mot de passe de l’administrateur est vide.

  4. Le service EC2 Config appelle Windows Sysprep en exécutant la commande suivante :

    sysprep.exe /unattend: "C:\Program Files\Amazon\Ec2ConfigService\sysprep2008.xml" /oobe /generalize /shutdown

Phase de généralisation

  • L’outil supprime les informations et les configurations spécifiques à l’image, comme le nom de l’ordinateur et le SID. Si l’instance est membre d’un domaine, elle est supprimée du domaine. Le fichier de réponses sysprep2008.xml inclut les paramètres suivants qui affectent cette phase :

    • PersistAllDeviceInstalls: ce paramètre empêche le programme d'installation de Windows de supprimer et de reconfigurer des appareils, ce qui accélère le processus de préparation des images, car Amazon a AMIs besoin de certains pilotes pour fonctionner et la redétection de ces pilotes prendrait du temps.

    • DoNotCleanUpNonPresentDevices: ce paramètre conserve les informations Plug-and-Play pour les appareils actuellement absents.

  • Windows Sysprep arrête le système d’exploitation pendant qu’il se prépare à créer l’AMI. Le système lance une nouvelle instance ou démarre l’instance originale.

Phase de spécialisation

Le système génère la configuration requise spécifique au système d’exploitation, comme un nom d’ordinateur et un SID. Le système exécute également les actions suivantes en fonction des configurations que vous spécifiez dans le fichier de réponses sysprep2008.xml.

  • CopyProfile: Windows Sysprep peut être configuré pour supprimer tous les profils utilisateur, y compris le profil administrateur intégré. Ce paramètre conserve le compte d’administrateur intégré afin que les personnalisations que vous effectuez sur ce compte soient transmises à la nouvelle image. La valeur par défaut est True.

    CopyProfileremplace le profil par défaut par le profil d'administrateur local existant. Tous les comptes connectés après l’exécution de Windows Sysprep recevront une copie de ce profil et de son contenu lors de la première connexion.

    Si vous ne disposez pas de personnalisations de profil utilisateur spécifiques que vous souhaitez reporter à la nouvelle image, définissez ce paramètre sur False. Windows Sysprep supprime tous les profils d’utilisateur, ce qui permet de gagner du temps et de l’espace disque.

  • TimeZone: le fuseau horaire est défini sur le temps universel coordonné (UTC) par défaut.

  • Synchronous command with order 1 : le système exécute la commande suivante qui active le compte d’administrateur et spécifie l’exigence d’un mot de passe.

    net user Administrator /ACTIVE:YES /LOGONPASSWORDCHG:NO /EXPIRES:NEVER /PASSWORDREQ:YES

  • Synchronous command with order 2 : le système brouille le mot de passe administrateur. Cette mesure de sécurité est conçue pour empêcher l’instance d’être accessible après la fin de Windows Sysprep si vous n’avez pas activé le paramètre ec2setpassword.

    Administrateur C:\Program Files \ Amazon \ Ec2 ConfigService \ ScramblePassword .exe » -u

  • Synchronous command with order 3 : le système exécute la commande suivante :

    C:\Program Files \ Amazon \ Ec2 \ Scripts ConfigService \ .cmd SysprepSpecializePhase

    Cette commande ajoute la clé de registre suivante qui réactive le RDP :

    reg add « HKEY_LOCAL_MACHINE \ SYSTEM \ Control CurrentControlSet \ Terminal Server » /v FDeny /t REG_DWORD /d 0 /f TSConnections

Phase OOBE

  1. À l'aide du fichier de réponses du service EC2 Config, le système spécifie les configurations suivantes :

    • < InputLocale InputLocale >fr-FR</ >

    • < SystemLocale SystemLocale >fr-FR</ >

    • < UILanguage UILanguage >fr-FR</ >

    • < UserLocale UserLocale >fr-FR</ >

    • <Masquer EULAPage >Vrai</Masquer > EULAPage

    • < HideWirelessSetupIn OOBE>True</ HideWirelessSetupIn OOBE>

    • < NetworkLocation NetworkLocation >Autres</ >

    • < ProtectYour PC>3</ PC> ProtectYour

    • < BluetoothTaskbarIconEnabled BluetoothTaskbarIconEnabled >fauss</ >

    • < TimeZone TimeZone >UTC</ >

    • < RegisteredOrganization RegisteredOrganization >Amazon.com</ >

    • < RegisteredOwner RegisteredOwner >Amazon</ >

    Note

    Pendant les phases de généralisation et de spécialisation, le service EC2 Config surveille l'état du système d'exploitation. Si EC2 Config détecte que le système d'exploitation est en phase Sysprep, il publie le message suivant dans le journal système :

    EC2ConfigMonitorState: 0 Windows est en cours de configuration. SysprepState=IMAGE_STATE_UNDEPLOYABLE

  2. Une fois la phase OOBE terminée, le système exécute SetupComplete.cmd à partir de l’emplacement suivant : C:\Windows\Setup\Scripts\SetupComplete.cmd. Dans Amazon public, AMIs avant avril 2015, ce fichier était vide et n'exécutait rien sur l'image. En public AMIs daté d'après avril 2015, le fichier inclut la valeur suivante :call "C:\Program Files\Amazon\Ec2ConfigService\Scripts\PostSysprep.cmd".

  3. Le système exécute PostSysprep.cmd, qui effectue les opérations suivantes :

    • Permet de définir que le mot de passe d’administrateur local ne doit pas expirer. Si le mot de passe expirait, les administrateurs ne pourraient pas se connecter.

    • Définit le nom de la MSSQLServer machine (si elle est installée) afin qu'il soit synchronisé avec l'AMI.

Étapes post-actions Sysprep

Une fois Windows Sysprep terminé, les services EC2 Config envoient le message suivant à la sortie de la console :

Windows sysprep configuration complete.
			Message: Sysprep Start
			Message: Sysprep End

EC2Config exécute ensuite les actions suivantes :

  1. Permet de lire le contenu du fichier config.xml et de répertorier tous les plugins activés.

  2. Permet d’exécuter simultanément tous les plugins avant que Windows soit prêt.

    • Eco 2 SetPassword

    • Eco 2 SetComputerName

    • Eco 2 InitializeDrives

    • Eco 2 EventLog

    • Ec2ConfigureRDP

    • Sortie EC2 RDPCert

    • Eco 2 SetDriveLetter

    • Eco 2 WindowsActivate

    • Eco 2 DynamicBootVolumeSize

  3. Une fois terminé, il envoie un message « Windows is ready » aux journaux systèmes de l’instance.

  4. Permet d’exécuter simultanément tous les plugins une fois que Windows est prêt.

    • Amazon CloudWatch Logs

    • UserData

    • AWS Systems Manager (Systems Manager)

Pour plus d’informations sur les plugins Windows, consultez Utilisez le service EC2 Config pour effectuer des tâches lors du lancement de l'instance du système d'exploitation Windows EC2 existant.

Exécutez Windows Sysprep avec le service Config EC2

Utilisez la procédure suivante pour créer une AMI standardisée à l'aide de Windows Sysprep et du service ConfigEC2.

  1. Dans la EC2 console Amazon, recherchez ou créez une AMI que vous souhaitez dupliquer.

  2. Lancez et connectez-vous à votre instance Windows.

  3. Personnalisez-la.

  4. Spécifiez les paramètres de configuration dans le fichier de réponses du service EC2 Config :

    C:\Program Files\Amazon\Ec2ConfigService\sysprep2008.xml

  5. Dans le menu Démarrer de Windows, sélectionnez Tous les programmes, puis EC2ConfigServiceParamètres.

  6. Choisissez l’onglet Image dans la boîte de dialogue Ec2 Service Properties. Pour plus d’informations sur les options et les paramètres de la boîte de dialogue Ec2 Service Properties, consultez Propriétés du service EC2.

  7. Sélectionnez une option pour le mot de passe administrateur, puis sélectionnez Arrêter avec Sysprep ou Arrêter sans Sysprep. EC2Config modifie les fichiers de paramètres en fonction de l'option de mot de passe que vous avez sélectionnée.

    • Aléatoire : EC2 Config génère un mot de passe, le chiffre avec la clé de l'utilisateur et affiche le mot de passe chiffré sur la console. Nous désactivons ce paramètre après le premier lancement afin que ce mot de passe persiste si l’instance est redémarrée, arrêtée ou démarrée.

    • Specify : le mot de passe est stocké dans le fichier de réponse de Windows Sysprep sous une forme non chiffrée (texte clair). Lors de l’exécution suivante de Windows Sysprep, le mot de passe de l’administrateur est défini. Si vous arrêtez maintenant, le mot de passe est défini immédiatement. Lorsque le service redémarre, le mot de passe d’administrateur est supprimé. Il est important de vous rappeler ce mot de passe, car vous ne pourrez pas le récupérer ultérieurement.

    • Continuer à exister : le mot de passe existant pour le compte administrateur ne change pas lorsque Windows Sysprep est exécuté ou que EC2 Config est redémarré. Il est important de vous rappeler ce mot de passe, car vous ne pourrez pas le récupérer ultérieurement.

  8. Choisissez OK.

Lorsque vous êtes invité à confirmer que vous souhaitez exécuter Windows Sysprep et arrêter l’instance, cliquez sur Yes (Oui). Vous remarquerez que EC2 Config exécute Windows Sysprep. Ensuite, vous êtes déconnecté de l’instance, et l’instance est arrêtée. Si vous consultez la page Instances dans la EC2 console Amazon, l'état de l'instance passe de Running àStopping, puis enfin àStopped. A ce stade, vous pouvez créer une AMI en toute sécurité à partir de cette instance.

Vous pouvez invoquer manuellement l’outil Windows Sysprep à partir de la ligne de commande en utilisant la commande suivante :

"%programfiles%\amazon\ec2configservice\"ec2config.exe -sysprep""
Note

Les guillemets doubles dans la commande ne sont pas obligatoires si votre shell CMD se trouve déjà dans le répertoire C:\Program Files \ Amazon \ EC2 ConfigService \.

Toutefois, vous devez vérifier que les options de fichier XML spécifiées dans le dossier Ec2ConfigService\Settings sont correctes. Sinon, vous risquez de ne pas pouvoir vous connecter à l’instance. Pour plus d’informations sur les fichiers de paramètres, consultez EC2Fichiers de paramètres de configuration. Pour obtenir un exemple de configuration et d’exécution de Windows Sysprep à partir de la ligne de commande, consultez Ec2ConfigService\Scripts\InstallUpdates.ps1.