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à.
Definizioni delle attività per le attività di avvio EC2Launch v2
Ogni attività eseguita da EC2Launch v2 durante l'avvio o l'avvio ha il proprio set di proprietà e requisiti. I dettagli delle attività includono le impostazioni relative alla frequenza di esecuzione di un'operazione: una volta o sempre, la fase del processo di avvio dell'agente in cui viene eseguita, la sintassi e YAML gli esempi di documenti. Per ulteriori informazioni, consulta i dettagli dell'attività mostrati in questo riferimento.
EC2Launchv2 Attività
activateWindows
Attiva Windows su un set di server. AWS KMS L'attivazione viene ignorata se l'istanza viene rilevata come Bring-Your-Own -License (). BYOL
Frequency - una volta
AllowedStages — [PreReady]
Inputs —
activation
: (mappa)
type
: (stringa) tipo di attivazione da utilizzare, impostato su amazon
Esempio
task: activateWindows inputs: activation: type: amazon
enableJumboFrames
Abilita i Jumbo Frame, che aumentano l'unità di trasmissione massima (MTU) dell'adattatore di rete. Per ulteriori informazioni, consulta Frame jumbo (9001MTU).
Frequency - sempre
AllowedStages — [PostReady, UserData]
Inputs - nessuno
Esempio
task: enableJumboFrames
enableOpenSsh
Abilita Windows Open SSH e aggiunge la chiave pubblica dell'istanza alla cartella delle chiavi autorizzate.
Frequency - una volta
AllowedStages — [PreReady, UserData]
Inputs - nessuno
Esempio
L'esempio seguente mostra come abilitare Open SSH su un'istanza e aggiungere la chiave pubblica dell'istanza alla cartella delle chiavi autorizzate. Questa configurazione funziona solo su istanze che eseguono Windows Server 2019 e versioni successive.
task: enableOpenSsh
executeProgram
Esegue uno script con argomenti opzionali e una frequenza specificata.
Fasi: è possibile eseguire l'attività executeProgram
durante le fasiPreReady
, PostReady
e UserData
.
Frequenza: configurabile, vedere Input.
- Input
-
Questa sezione contiene uno o più programmi per l'executeProgramoperazione da eseguire (input). Ogni input può includere le seguenti impostazioni configurabili:
- frequenza (stringa)
-
(Obbligatorio) Specifica esattamente uno dei seguenti valori:
-
once
-
always
-
- path (stringa)
-
(Obbligatorio) Il percorso del file per l'eseguibile da eseguire.
- argomenti (elenco di stringhe)
-
(Facoltativo) Un elenco di argomenti separati da virgole da fornire al programma come input.
- runAs (stringa)
-
(Obbligatorio) Deve essere impostato su
localSystem
- Output
-
Tutte le attività scrivono le voci del file di registro nel file
agent.log
. L'output aggiuntivo dell'attivitàexecuteProgram
viene archiviato separatamente in una cartella denominata dinamicamente, come segue:%LocalAppData%\Temp\
EC2Launch#########
\outputfilename.tmp
Il percorso esatto dei file di output è incluso nel file
agent.log
, ad esempio:Program file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\ExecuteProgramInputs.tmp Output file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Output.tmp Error file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Err.tmp
File di output per l'attività
executeProgram
ExecuteProgramInputs.tmp
-
Contiene il percorso dell'eseguibile e tutti i parametri di input che l'attività
executeProgram
passa durante l'esecuzione. Output.tmp
-
Contiene l'output di runtime del programma eseguito dall'attività
executeProgram
. Err.tmp
-
Contiene messaggi di errore di runtime provenienti dal programma eseguito dall'attività
executeProgram
.
- Esempi
-
Gli esempi seguenti mostrano come eseguire un file eseguibile da una directory locale su un'istanza con l'attività
executeProgram
.Esempio 1: Configurazione dell'eseguibile con un argomento
Questo esempio mostra un'attività
executeProgram
che esegue un eseguibile di installazione in modalità silenziosa.task: executeProgram inputs: - frequency: always path: C:\Users\Administrator\Desktop\setup.exe arguments: ['-quiet']
Esempio 2: VLC eseguibile con due argomenti
Questo esempio mostra un'
executeProgram
attività che esegue un file VLC eseguibile con due argomenti passati come parametri di input.task: executeProgram inputs: - frequency: always path: C:\vlc-3.0.11-win64.exe arguments: ['/L=1033','/S'] runAs: localSystem
executeScript
Esegue uno script con argomenti opzionali e una frequenza specificata. 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
. Si tratta dell'impostazione di default.Nota
Quando lo script in linea emette un comando reset o sysprep, 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 reset o sysprep, tali comandi attendono che l'agente finisca prima di procedere all'esecuzione. Le attività successive al will executeScript continueranno a essere eseguite.
Fasi: è possibile eseguire l'attività executeScript
durante le fasiPreReady
, PostReady
e UserData
.
Frequenza: configurabile, vedere Input.
- Input
-
Questa sezione contiene uno o più script per l'executeScriptattività da eseguire (input). Ogni input può includere le seguenti impostazioni configurabili:
- frequenza (stringa)
-
(Obbligatorio) Specifica esattamente uno dei seguenti valori:
-
once
-
always
-
- Tipo: stringa
-
(Obbligatorio) Specifica esattamente uno dei seguenti valori:
-
batch
-
powershell
-
- argomenti (elenco di stringhe)
-
(Facoltativo) Un elenco di argomenti di stringa da passare alla shell (non allo PowerShell script). Questo parametro non è supportato per le attività eseguite su
type: batch
. Se non viene passato alcun argomento, EC2Launch v2 aggiunge il seguente argomento per impostazione predefinita:-ExecutionPolicy Unrestricted
. - contenuto (stringa)
-
(Obbligatorio) Contenuto dello script.
- runAs (stringa)
-
(Obbligatorio) Specificare esattamente uno dei seguenti valori:
-
admin
-
localSystem
-
- staccare (booleano)
-
(Facoltativo) Per impostazione predefinita, l'agente EC2Launch v2 esegue gli script uno alla volta ().
detach: false
Per eseguire lo script in concomitanza con altre attività, impostate il valore sutrue
(detach: true
).Nota
I codici di uscita dello script (tra cui
3010
) non hanno effetto quandodetach
è impostato sutrue
.
- Output
-
Tutte le attività scrivono le voci del file di registro nel file
agent.log
. L'output aggiuntivo dello script eseguito dall'attivitàexecuteScript
viene archiviato separatamente in una cartella denominata dinamicamente, come segue:%LocalAppData%\Temp\
EC2Launch#########
\outputfilename.ext
Il percorso esatto dei file di output è incluso nel file
agent.log
, ad esempio:Program file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\UserScript.ps1 Output file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Output.tmp Error file is created at: C:\Windows\system32\config\systemprofile\AppData\Local\Temp\EC2Launch123456789\Err.tmp
File di output per l'attività
executeScript
UserScript.
ext
-
Contiene lo script eseguito dall'attività
executeScript
. L'estensione del file dipende dal tipo di script specificato nel parametrotype
per l'attivitàexecuteScript
, come segue:-
Se il tipo è
batch
, l'estensione del file è.bat
. -
Se il tipo è
powershell
, l'estensione del file è.ps1
.
-
Output.tmp
-
Contiene l'output di runtime dello script eseguito dall'attività
executeScript
. Err.tmp
-
Contiene messaggi di errore di runtime provenienti dallo script eseguito dall'attività
executeScript
.
- Esempi
-
Gli esempi seguenti mostrano come eseguire uno script in linea con l'attività
executeScript
.Esempio 1: file di testo di output Ciao
Questo esempio mostra un'
executeScript
attività che esegue PowerShell uno script per creare un file di testo «Hello world» sull'unità.C:
task: executeScript inputs: - frequency: always type: powershell runAs: admin content: |- New-Item -Path 'C:\PowerShellTest.txt' -ItemType File Set-Content 'C:\PowerShellTest.txt' "Hello world"
Esempio 2: eseguire due script
Questo esempio mostra che l'attività
executeScript
può eseguire più di uno script e il tipo di script non deve necessariamente corrispondere.Il primo script (
type: powershell
) scrive un riepilogo dei processi attualmente in esecuzione sull'istanza in un file di testo che si trova sull'unitàC:
.Il secondo script (
batch
) scrive le informazioni di sistema nel fileOutput.tmp
.task: executeScript inputs: - frequency: always type: powershell content: | Get-Process | Out-File -FilePath C:\Process.txt runAs: localSystem - frequency: always type: batch content: | systeminfo
Esempio 3: configurazione di sistema idempotente con riavvii
Questo esempio mostra un'attività
executeScript
che esegue uno script idempotente per eseguire la seguente configurazione di sistema con un riavvio tra ogni fase:-
Impostare il nome del computer.
-
Aggiungere il computer al dominio
-
Abilitare Telnet.
Lo script garantisce che ogni operazione venga eseguita una sola volta. Ciò impedisce un ciclo di riavvio e rende lo script idempotente.
task: executeScript inputs: - frequency: always type: powershell runAs: localSystem content: |- $name = $env:ComputerName if ($name -ne $desiredName) { Rename-Computer -NewName $desiredName exit 3010 } $domain = Get-ADDomain if ($domain -ne $desiredDomain) { Add-Computer -DomainName $desiredDomain exit 3010 } $telnet = Get-WindowsFeature -Name Telnet-Client if (-not $telnet.Installed) { Install-WindowsFeature -Name "Telnet-Client" exit 3010 }
-
extendRootPartition
Estende il volume root per utilizzare tutto lo spazio disponibile sul disco.
Frequency - una volta
AllowedStages — [Boot]
Inputs - nessuno
Esempio
task: extendRootPartition
initializeVolume
Inizializza i volumi vuoti che sono collegati all'istanza in modo che vengano attivati e partizionati. L'agente di avvio salta l'inizializzazione se rileva che il volume non è vuoto. Un volume è considerato vuoto se i primi 4 KiB del volume sono vuoti o se non dispone di un layout di unità riconoscibile da Windows
Il parametro di input letter
viene sempre applicato quando viene eseguita questa attività, indipendentemente dal fatto che l'unità sia già inizializzata.
L'attività initializeVolume
effettua le seguenti operazioni.
-
Imposta gli attributi del disco
offline
ereadonly
su false. -
Creare una partizione. Se non è specificato alcun tipo di partizione nel parametro di input
partition
, si applicano le seguenti impostazioni predefinite:-
Se la dimensione del disco è inferiore a 2 TB, imposta il tipo di partizione su
mbr
. -
Se la dimensione del disco è pari o superiore a 2 TB, imposta il tipo di partizione su .
gpt
.
-
-
Formatta il volume comeNTFS.
-
Imposta l'etichetta del volume, come indicato di seguito:
-
Utilizza il valore del parametro di input
name
, se specificato. -
Se il volume è temporaneo e non è stato specificato alcun nome, imposta l'etichetta del volume su
Temporary Storage Z
.
-
-
Se il volume è effimero (SSDo HDD non AmazonEBS), crea un
Important.txt
file nella radice del volume con il seguente contenuto:This is an 'Instance Store' disk and is provided at no additional charge. *This disk offers increased performance since it is local to the host *The number of Instance Store disks available to an instance vary by instance type *DATA ON THIS DRIVE WILL BE LOST IN CASES OF IMPAIRMENT OR STOPPING THE INSTANCE. PLEASE ENSURE THAT ANY IMPORTANT DATA IS BACKED UP FREQUENTLY For more information, please refer to: Instance Store, archiviazione a blocchi temporanea per EC2 istanze.
-
Imposta la lettera dell'unità sul valore specificato nel parametro di input
letter
.
Fasi: è possibile eseguire l'attività initializeVolume
durante le fasi PostReady
e UserData
.
Frequenza: sempre.
- Input
-
È possibile configurare i parametri di runtime come segue:
- dispositivi (elenco di mappe)
-
(Condizionale) Configurazione per ogni dispositivo inizializzato dall'agente di avvio. Questo parametro è obbligatorio quando il parametro di input
initialize
è impostato sudevices
.-
dispositivo (stringa, obbligatorio): identifica il dispositivo durante la creazione dell'istanza. Ad esempio,
xvdb
,xvdf
o\dev\nvme0n1
. -
lettera (stringa, facoltativo): un carattere. La lettera dell'unità da assegnare.
-
nome (stringa, facoltativo): il nome del volume da assegnare.
-
partizione (stringa, facoltativo): specifica uno dei seguenti valori per il tipo di partizione da creare o consenti all'agente di avvio di utilizzare le impostazioni predefinite in base alla dimensione del volume:
-
mbr
-
gpt
-
-
- inizializza (stringa)
-
(Obbligatorio) Specificare esattamente uno dei seguenti valori:
-
all
-
devices
-
- Esempi
-
Gli esempi seguenti mostrano esempi di configurazioni di input per l'attività
initializeVolume
.Esempio 1: inizializzazione di due volumi su un'istanza
Questo esempio mostra un'attività
initializeVolume
che inizializza due volumi secondari su un'istanza. Il dispositivo denominatoDataVolume2
nell'esempio è effimero.task: initializeVolume inputs: initialize: devices devices: - device: xvdb name: DataVolume1 letter: D partition: mbr - device: /dev/nvme0n1 name: DataVolume2 letter: E partition: gpt
Esempio 2: inizializza i EBS volumi collegati a un'istanza
Questo esempio mostra un'initializeVolume
attività che inizializza tutti i EBS volumi vuoti collegati all'istanza.
task: initializeVolume inputs: initialize: all
optimizeEna
Ottimizza ENA le impostazioni in base al tipo di istanza corrente; potrebbe riavviare l'istanza.
Frequency - sempre
AllowedStages — [PostReady, UserData]
Inputs - nessuno
Esempio
task: optimizeEna
setAdminAccount
Imposta gli attributi per l'account amministratore predefinito creato nel computer locale.
Frequency - una volta
AllowedStages — [PreReady]
Inputs —
name
: (stringa) nome dell'account amministratore
password
: (mappa)
type
: (stringa) strategia per impostare la password come static
, random
o doNothing
data
: (stringa) archivia i dati se il campo type
è statico
Esempio
task: setAdminAccount inputs: name: Administrator password: type: random
setDnsSuffix
Aggiunge DNS suffissi all'elenco dei suffissi di ricerca. All'elenco vengono aggiunti solo i suffissi che non esistono già. Per ulteriori informazioni su come gli agenti di avvio DNS impostano i suffissi, consulta. Configura DNS Suffix for EC2 Windows Launch Agents
Frequency - sempre
AllowedStages — [PreReady]
Inputs —
suffixes
: (elenco di stringhe) elenco di uno o più DNS suffissi validi; le variabili di sostituzione valide sono e $REGION
$AZ
Esempio
task: setDnsSuffix inputs: suffixes: - $REGION.ec2-utilities.amazonaws.com
setHostName
Imposta il nome host del computer su una stringa personalizzata o, se non hostName
è specificato, sull'indirizzo privato. IPv4
Frequency - sempre
AllowedStages — [PostReady, UserData]
Inputs —
hostName
: (stringa) nome host facoltativo, che deve essere formattato come segue.
-
Deve essere uguale o inferiore a 15 caratteri
-
Deve contenere solo caratteri alfanumerici (a-z, A-Z, 0-9) e trattino (-).
-
Non deve essere costituito interamente da caratteri numerici.
reboot
: (booleano) indica se è consentito un riavvio quando viene modificato il nome host
Esempio
task: setHostName inputs: reboot: true
setWallpaper
Crea il file di scorciatoia setwallpaper.lnk
nella cartella di startup di ciascun utente esistente, eccetto Default User
. Questo file di scorciatoia viene eseguito quando l'utente accede per la prima volta dopo l'avvio dell'istanza. Imposta l'istanza con uno sfondo personalizzato che visualizzi gli attributi dell'istanza.
Il percorso del file di scorciatoia è:
$env:SystemDrive/Users/<user>/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/setwallpaper.lnk
Nota
La rimozione dell'attività setWallpaper
non elimina questo file di scorciatoia. Per ulteriori informazioni, consulta Il processo setWallpaper non è abilitato ma lo sfondo viene ripristinato al riavvio.
Fasi: puoi configurare lo sfondo durante le fasi PreReady
e UserData
.
Frequenza: always
Configurazione dello sfondo
È possibile configurare lo sfondo con le seguenti impostazioni.
- Input
-
Parametri di input che fornisci e attributi che puoi impostare per configurare lo sfondo:
- attributi (elenco di stringhe)
-
(Facoltativo) Puoi aggiungere uno o più dei seguenti attributi allo sfondo:
-
architecture
-
availabilityZone
-
hostName
-
instanceId
-
instanceSize
-
memory
-
network
-
privateIpAddress
-
publicIpAddress
-
- instanceTags
-
(Facoltativo) Per questa impostazione puoi utilizzare esattamente una delle seguenti opzioni.
-
AllTags(stringa) — Aggiunge tutti i tag di istanza allo sfondo.
instanceTags: AllTags
-
instanceTags(elenco di stringhe) — Specificate un elenco di nomi di tag di istanza da aggiungere allo sfondo. Per esempio:
instanceTags: - Tag 1 - Tag 2
-
- path (stringa)
-
(Obbligatorio) Il percorso del nome del file immagine in formato.jpg locale da utilizzare per l'immagine di sfondo.
Esempio
L'esempio seguente mostra gli input di configurazione dello sfondo che impostano il percorso del file per l'immagine di sfondo dello sfondo, insieme ai tag delle istanze denominati Tag 1
e Tag 2
e agli attributi che includono il nome dell'host, l'ID dell'istanza e gli indirizzi IP privati e pubblici dell'istanza.
task: setWallpaper inputs: path: C:\ProgramData\Amazon\EC2Launch\wallpaper\Ec2Wallpaper.jpg attributes: - hostName - instanceId - privateIpAddress - publicIpAddress instanceTags: - Tag 1 - Tag 2
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.
startSsm
Avvia il servizio Systems Manager (SSM) dopo Sysprep.
Frequency - sempre
AllowedStages — [PostReady, UserData]
Inputs - nessuno
Esempio
task: startSsm
sysprep
Reimposta lo stato del servizio, aggiornaunattend.xml
, disabilita RDP ed esegue Sysprep. Questa attività viene eseguita solo dopo che tutte le altre attività sono state completate.
Frequency - una volta
AllowedStages — [UserData]
Inputs —
clean
: (booleano) pulisce i log delle istanze prima di eseguire Sysprep
shutdown
: (booleano) chiude l'istanza dopo l'esecuzione di Sysprep
Esempio
task: sysprep inputs: clean: true shutdown: true
writeFile
Scrive un file in una destinazione.
Frequency - vedi Inputs
AllowedStages — [PostReady, UserData]
Inputs —
frequency
: (stringa) once
o always
destination
: (stringa) percorso in cui scrivere il contenuto
content
: (stringa) testo da scrivere nella destinazione
Esempio
task: writeFile inputs: - frequency: once destination: C:\Users\Administrator\Desktop\booted.txt content: Windows Has Booted