Creare file di risposte di specializzazione del sistema operativo
In preparazione alla distribuzione di macchine virtuali schermate, potrebbe essere necessario creare un file di risposte di specializzazione del sistema operativo. In Windows questo file è comunemente noto come file "unattend.xml". La funzione New-ShieldingDataAnswerFile di Windows PowerShell consente di eseguire questa operazione. È quindi possibile usare il file di risposte quando si creano macchine virtuali schermate da un modello usando System Center Virtual Machine Manager o qualsiasi altro controller di infrastruttura.
Per linee guida generali per i file di installazione automatica per le macchine virtuali schermate, vedere Creare un file di risposte.
Download della funzione New-ShieldingDataAnswerFile
È possibile ottenere la funzione New-ShieldingDataAnswerFile da PowerShell Gallery. Se il computer ha connettività Internet, è possibile installarlo da PowerShell con il comando seguente:
Install-Module GuardedFabricTools -Repository PSGallery -MinimumVersion 1.0.0
L'output unattend.xml
può essere inserito in un pacchetto nei dati di schermatura, insieme ad elementi aggiuntivi, in modo che possa essere usato per creare macchine virtuali schermate dai modelli.
Le sezioni seguenti illustrano come usare i parametri della funzione per un file unattend.xml
contenente varie opzioni:
- File di risposte di base per Windows
- File di risposte di Windows con aggiunta al dominio
- File di risposte di Windows con indirizzi IPv4 statici
- File di risposte di Windows con impostazioni locali personalizzate
- File di risposte di base per Linux
File di risposte di base per Windows
I comandi seguenti creano un file di risposte di Windows che imposta semplicemente la password dell'account amministratore e il nome host. Le schede di rete della macchina virtuale useranno DHCP per ottenere gli indirizzi IP e la macchina virtuale non verrà aggiunta a un dominio di Active Directory. Quando viene richiesto di immettere credenziali di amministratore, specificare il nome utente e la password desiderati. Usare "Administrator" per il nome utente se si vuole configurare l'account amministratore predefinito.
$adminCred = Get-Credential -Message "Local administrator account"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred
File di risposte di Windows con aggiunta al dominio
I comandi seguenti creano un file di risposte di Windows che aggiunge la macchina virtuale schermata a un dominio di Active Directory. Le schede di rete della macchina virtuale useranno DHCP per ottenere gli indirizzi IP.
La prima richiesta di credenziali richiederà le informazioni sull'account amministratore locale. Usare "Administrator" per il nome utente se si vuole configurare l'account amministratore predefinito.
La seconda richiesta di credenziali richiederà le credenziali che hanno il diritto di aggiungere il computer al dominio di Active Directory.
Assicurarsi di modificare il valore del parametro "-DomainName" impostando il nome di dominio completo del dominio di Active Directory.
$adminCred = Get-Credential -Message "Local administrator account"
$domainCred = Get-Credential -Message "Domain join credentials"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -DomainName 'my.contoso.com' -DomainJoinCredentials $domainCred
File di risposte di Windows con indirizzi IPv4 statici
I comandi seguenti creano un file di risposte di Windows che usa indirizzi IP statici forniti in fase di distribuzione dal gestore dell'infrastruttura, ad esempio System Center Virtual Machine Manager.
Virtual Machine Manager fornisce tre componenti all'indirizzo IP statico usando un pool IP: indirizzo IPv4, indirizzo IPv6, indirizzo gateway e indirizzo DNS. Se si vogliono includere campi aggiuntivi o si necessita di una configurazione di rete personalizzata, sarà necessario modificare manualmente il file di risposte prodotto dallo script.
Gli screenshot seguenti mostrano i pool IP che è possibile configurare in Virtual Machine Manager. Questi pool sono necessari se si vuole usare l'indirizzo IP statico.
La funzione supporta attualmente un solo server DNS. Le impostazioni DNS avranno un aspetto analogo al seguente:
Di seguito è riportato il riepilogo per la creazione del pool di indirizzi IP statici. In breve, è necessario avere una sola route di rete, un gateway e un server DNS e specificare l'indirizzo IP.
È necessario configurare la scheda di rete per la macchina virtuale. Lo screenshot seguente mostra dove impostare la configurazione e come passare all'indirizzo IP statico.
È quindi possibile usare il parametro -StaticIPPool
per includere gli elementi IP statici nel file di risposte. I parametri @IPAddr-1@
, @NextHop-1-1@
e @DNSAddr-1-1@
nel file di risposte verranno quindi sostituiti con i valori reali specificati in Virtual Machine Manager in fase di distribuzione.
$adminCred = Get-Credential -Message "Local administrator account"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -StaticIPPool IPv4Address
File di risposte di Windows con impostazioni locali personalizzate
I comandi seguenti creano un file di risposte di Windows con impostazioni locali personalizzate.
Quando viene richiesto di immettere credenziali di amministratore, specificare il nome utente e la password desiderati. Usare "Administrator" per il nome utente se si vuole configurare l'account amministratore predefinito.
$adminCred = Get-Credential -Message "Local administrator account"
$domainCred = Get-Credential -Message "Domain join credentials"
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -AdminCredentials $adminCred -Locale es-ES
File di risposte di base per Linux
A partire da Windows Server versione 1709, è possibile eseguire determinati sistemi operativi guest Linux in macchine virtuali schermate. Se si usa l'agente Linux di System Center Virtual Machine Manager per specializzare tali macchine virtuali, il cmdlet New-ShieldingDataAnswerFile può creare file di risposte compatibili.
In un file di risposte per Linux si includeranno in genere la password radice, la chiave SSH radice e, facoltativamente, le informazioni del pool di indirizzi IP statici. Sostituire il percorso della metà pubblica della chiave SSH prima di eseguire lo script seguente.
$rootPassword = Read-Host -Prompt "Root password" -AsSecureString
New-ShieldingDataAnswerFile -Path '.\ShieldedVMAnswerFile.xml' -RootPassword $rootPassword -RootSshKey '~\.ssh\id_rsa.pub'