Configurare le impostazioni di EC2Launch v2 per le istanze Windows - Amazon Elastic Compute Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurare le impostazioni di EC2Launch v2 per le istanze Windows

Questa sezione contiene informazioni su come configurare le impostazioni per EC2Launch v2.

Modifica delle impostazioni utilizzando la finestra di dialogo delle impostazioni di EC2Launch v2

La procedura seguente descrive come utilizzare la finestra di dialogo di EC2Launch v2 per abilitare o disabilitare le impostazioni.

Nota

Se hai configurato erroneamente delle attività personalizzate nel file agent-config.yml e tenti di aprire la finestra di dialogo delle impostazioni di Amazon EC2Launch, verrà visualizzato un errore. Per un esempio di schema, consulta la sezione Esempio: agent-config.yml.

  1. Avviare l'istanza Windows e connettersi a essa.

  2. Dal menu Start, scegli Tutti i programmi, quindi passa alle impostazioni di EC2Launch. Prima di scegliere Arresta con Sysprep o Arresta senza Sysprep, assicurati di salvare tutte le modifiche che vuoi applicare quando esegui l’arresto.

    Applicazione delle impostazioni di EC2 Launch.
  3. Nella scheda Generale della finestra di dialogo Impostazioni EC2Launch puoi abilitare o disabilitare le seguenti impostazioni.

    1. Set Computer Name (Imposta il nome del computer

      Se questa impostazione viene abilitata (per impostazione predefinita è disabilitata), il nome host attuale viene confrontato con il nome host desiderato ad ogni avvio. Se i nomi host non corrispondono, il nome host viene reimpostato e il sistema si riavvia facoltativamente per acquisire il nuovo nome host. Se non viene specificato un nome host personalizzato, viene generato utilizzando, ad esempio, l'indirizzo IPv4 privato formattato esadecimal, ip-AC1F4E6. Per evitare che il nome host esistente venga modificato, non abilitare questa impostazione.

    2. Estendi volume di avvio

      Questa impostazione estende in modo dinamico Disk 0/Volume 0 per includere qualsiasi spazio non partizionato. Ciò può essere utile quando l’istanza viene avviata da un volume root di dimensioni personalizzate.

    3. Imposta account amministratore

      Se abilitata, puoi impostare gli attributi di nome utente e password per l'account amministratore creato nel computer locale. Se questa caratteristica non è abilitata, non viene creato un account amministratore nel sistema dopo Sysprep. Fornire una password in adminPassword solo se adminPasswordtype è Specify.

      I tipi di password sono definiti come segue:

      1. Random

        EC2Launch genera una password e la crittografa utilizzando la chiave dell'utente. Il sistema disattiva questa impostazione dopo l'avvio dell'istanza in modo che questa password rimanga se l'istanza viene riavviata o arrestata e avviata.

      2. Specify

        EC2Launch utilizza la password specificata in adminPassword. Se la password non soddisfa i requisiti di sistema, EC2Launch genera invece una password casuale. La password viene memorizzata in agent-config.yml come testo non crittografato e viene cancellata dopo che Sysprep ha impostato la password amministratore. EC2Launch crittografa la password utilizzando la chiave dell'utente.

      3. Do not set

        EC2launch utilizza la password specificata nel file unattend.xml. Se non specifichi una password in unattend.xml, l'account amministratore viene disabilitato.

    4. Avvia servizio SSM

      Se questa opzione è selezionata, il servizio Systems Manager è abilitato per iniziare dopo Sysprep. EC2Config v2 esegue tutte le attività descritte precedentemente, mentre SSM Agent elabora le richieste per le funzionalità di Systems Manager come Run Command e Gestione stato.

      Puoi utilizzare Run Command per aggiornare le istanze esistenti al fine di utilizzare la versione più recente del servizio EC2Launch v2 e di SSM Agent. Per ulteriori informazioni, consulta Update SSM Agent using Run Command nella Guida per l’utente di AWS Systems Manager.

    5. Ottimizza ENA

      Se selezionata, le impostazioni ENA vengono configurate per garantire che le impostazioni ENA Receive Side Scaling e Receive Queue Depth siano ottimizzate per AWS. Per ulteriori informazioni, consulta Configura l’affinità della CPU con Receive Side Scaling.

    6. Abilita SSH

      Questa impostazione abilita OpenSSH per consentire l'amministrazione remota del sistema per le versioni successive di Windows.

    7. Abilita frame jumbo

      Seleziona questa opzione per abilitare i frame jumbo. I frame jumbo possono avere effetti indesiderati sulle comunicazioni di rete, quindi assicurati di capire in che modo i frame jumbo influiscono sul tuo sistema prima di attivarli. Per ulteriori informazioni sui frame jumbo, consulta Frame jumbo (9001 MTU).

    8. Preparazione per l'imaging

      Seleziona questa impostazione se vuoi che l'istanza EC2 venga arrestate con o senza Sysprep. Quando vuoi eseguire Sysprep con EC2Launch v2, scegli Arresto con Sysprep.

  4. Nella scheda Suffisso DNS puoi selezionare se aggiungere un elenco di suffissi DNS per la risoluzione DNS dei server in esecuzione in EC2, senza specificare il nome di dominio completo. I suffissi DNS possono contenere le variabili $REGION e $AZ. All'elenco vengono aggiunti solo i suffissi che non sono già presenti.

    Applicazione delle impostazioni di EC2 Launch.
  5. Nella scheda Sfondo, puoi configurare lo sfondo dell'istanza con un'immagine di sfondo e specificare i dettagli dell'istanza per lo sfondo da visualizzare. Amazon EC2 genera i dettagli ogni volta che effettui l'accesso.

    È possibile configurare lo sfondo con i seguenti comandi.

    • Mostra i dettagli dell'istanza sullo sfondo: questa casella di controllo attiva o disattiva la visualizzazione dei dettagli dell'istanza sullo sfondo.

    • Percorso dell'immagine (.jpg): specifica il percorso dell'immagine da utilizzare come sfondo.

    • Seleziona gli attributi da visualizzare sullo sfondo: seleziona le caselle di controllo relative ai dettagli dell'istanza che desideri visualizzare sullo sfondo. Deseleziona le caselle di controllo dei dettagli dell'istanza selezionati in precedenza che desideri rimuovere dallo sfondo.

    • Visualizza i tag delle istanze sullo sfondo: seleziona una delle seguenti impostazioni per visualizzare i tag delle istanze sullo sfondo:

      • Nessuno: non visualizzare alcun tag delle istanze sullo sfondo.

      • Mostra tutti: visualizza tutti i tag delle istanze sullo sfondo.

      • Mostra filtrati: visualizza i tag delle istanze specificati sullo sfondo. Quando selezioni questa impostazione, puoi aggiungere i tag delle istanze che desideri visualizzare sullo sfondo nella casella del Filtro dei tag delle istanze.

        Nota

        È necessario abilitare i tag nei metadati per mostrare i tag sullo sfondo. Per ulteriori informazioni sui tag e metadati delle istanze, consulta Visualizza i tag per le tue EC2 istanze utilizzando i metadati delle istanze.

    Scheda Sfondo delle impostazioni di avvio di EC2.
  6. Nella scheda Volumi seleziona se vuoi inizializzare i volumi collegati all'istanza. L'abilitazione imposta le lettere di unità per eventuali volumi aggiuntivi e li estende per utilizzare lo spazio disponibile. Se si seleziona All (Tutto) vengono inizializzati tutti i volumi di archiviazione. Se selezioni Dispositivi vengono inizializzati solo i dispositivi specificati nell'elenco. Devi specificare immettere il dispositivo per ogni dispositivo da inizializzare. Utilizza i dispositivi elencati sulla console EC2, ad esempio, xvdb o /dev/nvme0n1. Nell'elenco a discesa vengono visualizzati i volumi di archiviazione collegati all'istanza. Per immettere un dispositivo non collegato all'istanza, immetterlo nel campo di testo.

    Nome, Lettera e Partizione sono campi facoltativi. Se per Partizione non viene specificato alcun valore, i volumi di archiviazione superiori a 2 TB vengono inizializzati con il tipo di partizione gpt e quelli inferiori a 2 TB vengono inizializzati con il tipo di partizione mbr. Se i dispositivi sono configurati e un dispositivo non NTFS contiene una tabella di partizione o i primi 4 KB del disco contengono dati, il disco viene ignorato e l'operazione viene registrata.

    Applicazione delle impostazioni di EC2 Launch.

Di seguito è riportato un esempio di file YAML di configurazione creato dalle impostazioni immesse nella finestra di dialogo EC2Launch.

version: 1.0 config: - stage: boot tasks: - task: extendRootPartition - stage: preReady tasks: - task: activateWindows inputs: activation: type: amazon - task: setDnsSuffix inputs: suffixes: - $REGION.ec2-utilities.amazonaws.com - task: setAdminAccount inputs: password: type: random - task: setWallpaper inputs: path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg attributes: - hostName - instanceId - privateIpAddress - publicIpAddress - instanceSize - availabilityZone - architecture - memory - network - stage: postReady tasks: - task: startSsm

Configurare EC2Launch v2 tramite la CLI

Puoi utilizzare l'interfaccia a riga di comando (CLI) per configurare le impostazioni di EC2Launch e gestire il servizio. La sezione seguente contiene le descrizioni e le informazioni sull'utilizzo dei comandi CLI che puoi usare per gestire EC2Launch v2.

collect-logs

Raccoglie i file di log per EC2launch, comprime i file e li inserisce in una directory specificata.

Esempio

ec2launch collect-logs -o C:\Mylogs.zip

Usage

ec2launch collect-logs [flags]

Flag

-h, --help

aiuto per collect-logs

-o, --output string

percorso dei file di log di output compressi

get-agent-config

Stampa agent-config.yml nel formato specificato (JSON o YAML). Se non viene specificato alcun formato, agent-config.yml viene stampato nel formato specificato in precedenza.

Esempio

ec2launch get-agent-config -f json

Usage

ec2launch get-agent-config [flags]

Flag

-h, --help

aiuto per get-agent-config

-f, --format string

formato di output del file agent-config: json, yaml

list-volumes

Elenca tutti i volumi di archiviazione collegati all'istanza, inclusi i volumi temporanei ed EBS.

Esempio

ec2launch list-volumes

Usage

ec2launch list-volumes

Flag

-h, --help

aiuto per list-volumes

reset

L'obiettivo principale di questa attività è reimpostare l'agente per la prossima esecuzione. A tale scopo, il comando reset elimina tutti i dati sullo stato dell'agente per EC2Launch v2 dalla directory EC2Launch locale (consultare Struttura della directory di EC2Launch v2). Il ripristino elimina facoltativamente i log di servizio e Sysprep.

Il comportamento degli script dipende dalla modalità in cui l'agente esegue gli script: in linea o distaccati.

In linea (impostazione predefinita)

L'agente EC2Launch v2 esegue gli script uno alla volta (detach: false). Questa è l'impostazione predefinita.

Nota

Quando lo script in linea emette un comando resetsysprep, viene eseguito immediatamente e reimposta l'agente. L'attività corrente termina, quindi l'agente si spegne senza eseguire altre attività.

Ad esempio, se l'attività che emette il comando fosse stata seguita da un'attività startSsm (inclusa per impostazione predefinita dopo l'esecuzione dei dati utente), l'attività non viene eseguita e il servizio Systems Manager non viene mai avviato.

Distaccato

L'agente EC2Launch v2 esegue gli script contemporaneamente ad altre attività (detach: true).

Nota

Quando lo script distaccato emette un comando resetsysprep, tali comandi attendono che l'agente finisca prima di procedere all'esecuzione. Le attività successive all'ExecuteScript continueranno a essere eseguite.

Esempio

ec2launch reset -c

Usage

ec2launch reset [flags]

Flag

-c, --clean

pulisce i log delle istanze prima di reset

-h, --help

aiuto per reset

run

Esecuzioni di EC2Launch v2

Esempio

ec2launch run

Usage

ec2launch run [flags]

Flag

-h, --help

aiuto per run

status

Ottiene lo stato dell'agente EC2Launch v2. Blocca facoltativamente il processo fino al completamento dell'agente. Il codice di uscita del processo determina lo stato dell'agente:

  • 0 — l'agente è stato eseguito e ha avuto successo.

  • 1 — l'agente è stato eseguito e non è andato a buon fine.

  • 2 — l'agente è ancora in esecuzione.

  • 3 — l'agente si trova in uno stato sconosciuto. Lo stato dell'agente non è in esecuzione o è stato interrotto.

  • 4 — si è verificato un errore nel tentativo di recuperare lo stato dell'agente.

  • 5 — l'agente non è in esecuzione e lo stato dell'ultima esecuzione nota è sconosciuto. Ciò può significare che:

    • sia state.json che previous-state.json sono stati eliminati.

    • previous-state.json è danneggiato.

    Questo è lo stato dell'agente dopo l'esecuzione del comando reset.

Ad esempio:

ec2launch status -b

Usage

ec2launch status [flags]

Flag

-b,--block

blocca il processo fino al termine dell'esecuzione del'aggente

-h,--help

aiuto per status

sysprep

L'obiettivo principale di questa attività è reimpostare l'agente per la prossima esecuzione. A tale scopo, il comando sysprep reimposta lo stato dell'agente, aggiorna il file unattend.xml, disabilita RDP ed esegue Sysprep.

Il comportamento degli script dipende dalla modalità in cui l'agente esegue gli script: in linea o distaccati.

In linea (impostazione predefinita)

L'agente EC2Launch v2 esegue gli script uno alla volta (detach: false). Questa è l'impostazione predefinita.

Nota

Quando lo script in linea emette un comando resetsysprep, viene eseguito immediatamente e reimposta l'agente. L'attività corrente termina, quindi l'agente si spegne senza eseguire altre attività.

Ad esempio, se l'attività che emette il comando fosse stata seguita da un'attività startSsm (inclusa per impostazione predefinita dopo l'esecuzione dei dati utente), l'attività non viene eseguita e il servizio Systems Manager non viene mai avviato.

Distaccato

L'agente EC2Launch v2 esegue gli script contemporaneamente ad altre attività (detach: true).

Nota

Quando lo script distaccato emette un comando resetsysprep, tali comandi attendono che l'agente finisca prima di procedere all'esecuzione. Le attività successive all'ExecuteScript continueranno a essere eseguite.

Ad esempio:

ec2launch sysprep

Usage

ec2launch sysprep [flags]

Flag

-c,--clean

pulisce i log delle istanze prima di sysprep

-h,--help

aiuto per Sysprep

-s,--shutdown

arresta l'istanza dopo sysprep

validate

Convalida il file agent-config C:\ProgramData\Amazon\EC2Launch\config\agent-config.yml.

Esempio

ec2launch validate

Usage

ec2launch validate [flags]

Flag

-h , --help

aiuto per validate

version

Ottiene la versione eseguibile.

Esempio

ec2launch version

Usage

ec2launch version [flags]

Flag

-h, --help

aiuto per version

wallpaper

Imposta il nuovo sfondo sul percorso dello sfondo fornito (file .jpg) e visualizza i dettagli dell'istanza selezionata.

Sintassi

ec2launch wallpaper ^ --path="C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg" ^ --all-tags ^ --attributes=hostName,instanceId,privateIpAddress,publicIpAddress,instanceSize,availabilityZone,architecture,memory,network

Input

Parametri
--allowed-tags [tag-name-1, tag-name-n]

(Facoltativo) Array JSON codificato in Base64 di nomi di tag delle istanze da visualizzare sullo sfondo. Puoi usare questo tag o --all-tags, ma non entrambi.

--attributes attribute-string-1, attribute-string-n

(Facoltativo) Un elenco separato da virgole di stringhe di attributi wallpaper per applicare le impostazioni allo sfondo.

[--path | -p] path-string

(Obbligatorio) Specifica il percorso del file dell'immagine di sfondo wallpaper.

Flag
--all-tags

(Facoltativo) Visualizza tutti i tag delle istanze sullo sfondo. Puoi usare questo tag o --allowed-tags, ma non entrambi.

[--help | -h]

Visualizza l'assistenza per il comando wallpaper.

Configurazione dell'attività di EC2Launch v2

In questa sezione sono riportati lo schema, le attività, i dettagli e gli esempi di configurazione per agent-config.yml e i dati utente.

Schema: agent-config.yml

La struttura del file agent-config.yml è riportata di seguito. Nota che un'attività non può essere ripetuta nella stessa fase. Per le proprietà delle attività, consulta le descrizioni delle attività che seguono.

Struttura del documento: agent-config.yml

JSON

{ "version": "1.1", "config": [ { "stage": "string", "tasks": [ { "task": "string", "inputs": { ... } }, ... ] }, ... ] }

YAML

version: 1.1 config: - stage: string tasks: - task: string inputs: ... ... ...

Esempio: agent-config.yml

Nell'esempio seguente vengono illustrate le impostazioni per il file di configurazione agent-config.yml.

version: 1.1 config: - stage: boot tasks: - task: extendRootPartition - stage: preReady tasks: - task: activateWindows inputs: activation: type: amazon - task: setDnsSuffix inputs: suffixes: - $REGION.ec2-utilities.amazonaws.com - task: setAdminAccount inputs: password: type: random - task: setWallpaper inputs: path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg attributes: - hostName - instanceId - privateIpAddress - publicIpAddress - instanceSize - availabilityZone - architecture - memory - network - stage: postReady tasks: - task: startSsm

Configurare gli script dei dati utente di EC2Launch v2 che vengono eseguiti durante l'avvio o il riavvio

Gli esempi JSON e YAML seguenti mostrano la struttura del documento per i dati utente. Amazon EC2 analizza ogni attività rinominata nell'array tasks specificato nel documento. Ogni attività ha il proprio set di proprietà e requisiti. Per informazioni dettagliate, consulta la Definizioni delle attività di avvio di EC2Launch v2.

Nota

Un'attività deve essere visualizzata una sola volta nell'array di attività per i dati utente.

Struttura del documento: dati utente

JSON

{ "version": "1.1", "tasks": [ { "task": "string", "inputs": { ... }, }, ... ] }

YAML

version: 1.1 tasks: - task: string inputs: ... ...

Esempio: dati utente

Per ulteriori informazioni su questi dati utente, vedere In che modo Amazon EC2 gestisce i dati degli utenti per le istanze Windows.

Il seguente esempio di documento YAML mostra uno script PowerShell che EC2Launch v2 esegue come dati utente per creare un file.

version: 1.1 tasks: - task: executeScript inputs: - frequency: always type: powershell runAs: localSystem content: |- New-Item -Path 'C:\PowerShellTest.txt' -ItemType File

È possibile utilizzare un formato XML per i dati utente compatibile con le versioni precedenti dell'agente di avvio. EC2Launch v2 esegue lo script come attività executeScript nella fase UserData. Per conformarsi al comportamento di EC2Launch v1 ed EC2Config, lo script dei dati utente viene eseguito come processo attaccato/in linea per impostazione predefinita.

Puoi aggiungere tag opzionali per personalizzare la modalità di esecuzione dello script. Ad esempio, per eseguire lo script dei dati utente al riavvio dell'istanza e una volta all'avvio dell'istanza, puoi utilizzare il seguente tag:

<persist>true</persist>

Ad esempio:

<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <persist>true</persist>

Puoi specificare uno o più argomenti PowerShell con il tag <powershellArguments>. Se non viene passato alcun argomento, EC2Launch v2 aggiunge il seguente argomento per impostazione predefinita: -ExecutionPolicy Unrestricted.

Ad esempio:

<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <powershellArguments>-ExecutionPolicy Unrestricted -NoProfile -NonInteractive</powershellArguments>

Per eseguire uno script di dati utente XML come processo distaccato, aggiungi il seguente tag ai dati utente.

<detach>true</detach>

Ad esempio:

<powershell> $file = $env:SystemRoot + "\Temp" + (Get-Date).ToString("MM-dd-yy-hh-mm") New-Item $file -ItemType file </powershell> <detach>true</detach>
Nota

Il tag di distacco non è supportato nei precedenti agenti di avvio.

Log delle modifiche: dati utente

La tabella seguente elenca le modifiche apportate ai dati utente e le confronta con la versione dell'agente EC2Launch v2 applicabile.

Versione dei dati utente Informazioni Introdotta in
1.1
  • Le attività relative ai dati utente vengono eseguite prima della fase PostReady nel file di configurazione dell'agente.

  • Esegue i dati utente prima di avviare l'agente Systems Manager (stesso comportamento di EC2Launch v1 ed EC2Config).*

EC2Launch v2 versione 2.0.1245
1.0
  • Diventerà obsoleta.

  • Le attività relative ai dati utente vengono eseguite dopo la fase PostReady nel file di configurazione dell'agente. Non è compatibile con EC2Launch v1 e versioni precedenti.

  • Influenzata da una race condition tra l'avvio dell'agente Systems Manager e le attività relative ai dati utente.

EC2Launch v2 versione 2.0.0

* Se utilizzato con il file agent-config.yml predefinito.

Codici di uscita e riavvii EC2Launch v2

È possibile utilizzare EC2Launch v2 per definire come i codici di uscita vengono gestiti dagli script. Per impostazione predefinita, il codice di uscita dell'ultimo comando eseguito in uno script viene segnalato come codice di uscita per l'intero script. Ad esempio, se uno script include tre comandi e il primo comando ha esito negativo ma quelli seguenti hanno esito positivo, lo stato di esecuzione viene segnalato come success perché il comando finale ha avuto esito positivo.

Se si desidera che uno script riavvii un'istanza, è necessario specificare exit 3010 nello script, anche quando il riavvio è l'ultimo passo dello script. exit 3010 indica a EC2Launch v2 di riavviare l'istanza e richiamare nuovamente lo script fino a quando non restituisce un codice di uscita che non è 3010 o fino a quando non viene raggiunto il numero massimo di riavvii. EC2Launch v2 consente un massimo di 5 riavvii per attività. Se si tenta di riavviare un'istanza da uno script utilizzando un meccanismo diverso, ad esempio Restart-Computer, lo stato di esecuzione dello script non sarà coerente. Ad esempio, potrebbe rimanere bloccato in un ciclo di riavvio o non eseguire il riavvio.

Se utilizzi un formato di dati utente XML compatibile con agenti meno recenti, i dati utente potrebbero essere eseguiti più volte di quanto desideri. Per ulteriori informazioni, consulta Il servizio esegue i dati utente più di una volta nella sezione di risoluzione dei problemi.

EC2Launch v2 e Sysprep

Il servizio EC2Launch v2 esegue Sysprep, uno strumento Microsoft che ti permette di creare un'AMI di Windows personalizzata che può essere riutilizzata. Quando EC2Launch v2 chiama Sysprep, utilizza i file contenuti in %ProgramData%\Amazon\EC2Launch per determinare quali operazioni eseguire. Puoi modificare questi file indirettamente utilizzando la finestra di dialogo Impostazioni EC2Launch direttamente utilizzando un editor YAML o un editor di testo. Tuttavia esistono alcune impostazioni avanzate che non sono disponibili nella finestra di dialogoImpostazioni EC2Launch, quindi è necessario modificarle direttamente.

Se crei un'AMI da un'istanza dopo l'aggiornamento delle sue impostazioni, le nuove impostazioni vengono applicate a ogni istanza lanciata dalla nuova AMI. Per informazioni sulla creazione di un'AMI, consulta Creare un'AMI supportata da Amazon EBS.