Creazione di un'immagine Windows® personalizzata
È possibile creare un'immagine personalizzata basata su Windows® per importare l'immagine personalizzata in IBM Cloud® Virtual Private Cloud. Quindi, si può usare l'immagine personalizzata per distribuire un server virtuale o un server bare metal nella propria infrastruttura IBM Cloud® Virtual Private Cloud.
Prima di iniziare
Puoi iniziare con un template dell'immagine dall'infrastruttura classica IBM Cloud. Per ulteriori informazioni, vedi Migrazione di un server virtuale dall'infrastruttura classica. È anche possibile creare un'immagine personalizzata di un volume di avvio collegato a un server al momento dell'importazione. Per ulteriori informazioni, vedi Informazioni sulla creazione di un'immagine dal volume. Tenete presente che le immagini personalizzate di Windows® non sono supportate per LinuxONE (architettura del processore s390x).
Tutte le immagini personalizzate devono soddisfare i seguenti requisiti
- Contenere un singolo file o volume.
- Essere dentro qcow2 o formato VHD.
- Essere abilitato per cloud-init o avviabile utilizzando ESXi kickstart.
- Le dimensioni non superano i 250 GB.
- La dimensione minima è 10 GB. Per qualsiasi immagine inferiore a 10 GB, la dimensione viene arrotondata a 10 GB.
Non puoi creare un'immagine da un volume di avvio crittografato (immagine da un volume) che non sia 100 GB.
Procedere come segue per creare un'immagine personalizzata di Windows® da distribuire nell'ambiente di infrastruttura IBM Cloud VPC. La procedura comprende le seguenti attività di livello superiore.
- Utilizzare VirtualBox per creare un'immagine di Windows® in formato VHD.
- Personalizza l'immagine con i driver virtIO e Cloudbase-init.
Prima di creare un'immagine personalizzata di Windows® , tenere presente i seguenti requisiti.
I driver Virtio - win devono essere installati. Microsoft® consiglia di ottenere i driver da un'istanza RHEL versione 8 o 9 con licenza. Red Hat utilizza driver certificati da Microsoft. La versione minima consigliata del pacchetto Red Hat virtio
- win è virtio-win-1.9.24
. Tuttavia, è preferibile utilizzare il package più recente.
L'ISO Red Hat virtio-win-1.9.24 contiene le seguenti versioni specifiche del driver.
100.84.104.19500 oem10.inf \vioprot.inf_amd64_af0659efdaba9e4b\vioprot.inf
100.90.104.21400 oem11.inf \viofs.inf_amd64_c6f785e21f3f6f80\viofs.inf
100.85.104.20200 oem12.inf \viogpudo.inf_amd64_b19dcf9947e73e5a\viogpudo.inf
100.85.104.19900 oem13.inf \vioinput.inf_amd64_4505a789e17b5f89\vioinput.inf
100.81.104.17500 oem14.inf \viorng.inf_amd64_ef304eab276a3e61\viorng.inf
100.85.104.19900 oem15.inf \vioser.inf_amd64_cb4783c018c10eba\vioser.inf
100.90.104.21500 oem2.inf \vioscsi.inf_amd64_02a46a7a223648d1\vioscsi.inf
100.90.104.21500 oem3.inf \viostor.inf_amd64_520417bbc533faba\viostor.inf
100.85.104.20700 oem4.inf \balloon.inf_amd64_afa8c93081df5458\balloon.inf
100.90.104.21400 oem5.inf \netkvm.inf_amd64_0efff05c07fcee39\netkvm.inf
100.85.104.19900 oem6.inf \pvpanic.inf_amd64_b7028360ef636f8b\pvpanic.inf
10.0.0.21000 oem9.inf \qxldod.inf_amd64_6199f9ecf2339133\qxldod.inf
1. Creazione dell'immagine personalizzata di Windows®
Per creare un'immagine Windows® personalizzata, procedere come segue.
-
È possibile scaricare la versione di valutazione degli ISO del sistema operativo Windows 2016, Windows 2019o Windows 2022.
-
Con l'utilità
qemu-img
, creare un'immagine VHD in cui installare Windows. Scaricare il programma di utilità qemu - img e estrarlo sul client laptop Windows. Nella cartella in cui hai estratto il programma di utilitàqemu-img
, crea l'immagine VHD.qemu-img.exe create -f vpc Windows-2019.vhd 100G
IBM Cloud® supporta l'importazione di immagini personalizzate con VHD o qcow2. Tuttavia, Virtual Box non supporta il formato qcow2.
-
Ottieni i driver virtio - win richiesti eseguendo il provisioning o accedendo a un server RHEL esistente in IBM Cloud VPC.
-
Sul server RHEL in IBM Cloud VPC, installa il package virtio - win immettendo il seguente comando.
yum install virtio-win
In questo esempio, il pacchetto virtio - win viene installato su RHEL versione 8. L'output restituito è simile al seguente esempio.
Installed: virtio-win-1.9.24-2.el8_5.noarch
-
Accedere all'ISO virtio - win nella directory
/usr/share/virtio-win
.cd /usr/share/virtio-win/
-
Utilizzare una copia sicura per copiare il file ISO di virtio-win, ad esempio
virtio-win-1.9.24.iso
, da utilizzare per l'immagine personalizzata di Windows®.
- Utilizzare winSCP per copiare il file ISO su un client ®.
- Utilizzare SCP per copiare il file ISO su un client Linux o macOS.
-
Montare e aprire il file ISO.
-
Copiare tutti i driver virtio rilevanti dal file
virtio-win.iso
per il rispettivo sistema operativo, inserire i driver in una cartella denominataDrivers
, quindi copiare la cartellaDrivers
nella cartella ISO del sistema operativo. -
Scarica Windows Assessment and Deployment toolkit(ADK). Per ottenere il programma di utilità
oscdimg.exe
, installare solo gli strumenti di distribuzione. -
Creare una ISO Windows avviabile che incorpori tutti i driver virtio nella cartella
Drivers
utilizzando il comandooscdimg.exe
.C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\x86\Oscdimg> oscdimg -m -bC:\..\..\Downloads\<extracted_ISO_folder>\boot\etfsboot.com -u2 C:\..\..\Downloads\extracted_ISO_folder C:\..\..\Downloads\win2019new.iso
-
-
Usare VirtualBox per creare un server virtuale con l'immagine VHD creata al punto 2 usando la ISO di Windows® avviabile creata al punto 3. Per ulteriori informazioni, consultare Oracle VM VirtualBox Manuale per l'utente.
Se si desidera utilizzare un metodo diverso da VirtualBox per creare l'immagine personalizzata, come VMware, è necessario rimuovere tutti i driver specifici di tale hypervisor dall'immagine personalizzata.
-
In Impostazioni di archiviazione, aggiungere l'ISO avviabile dell'installazione di Windows® creata al punto 3.
-
Avviare il server e iniziare l'installazione di Windows® .
-
Selezionare la Edizione (Standard / Data Center) del sistema operativo e Esperienza desktop (con Esperienza desktop o senza Esperienza desktop).
-
Selezionare Unità 0 e continuare con l'installazione.
-
Una volta completata l'installazione, arrestare il server virtuale e rimuovere l'ISO di installazione. È possibile ignorare le avvertenze relative alla rimozione dell'ISO di installazione.
-
Utilizzare il programma di aggiornamento predefinito di Windows® per scaricare e installare gli aggiornamenti di Windows. Ripetere il processo di download e installazione degli aggiornamenti fino a quando non sono disponibili aggiornamenti.
Rendere disponibili i driver virtio-win nell'immagine di ripristino
Dopo aver creato l'immagine di Windows® , assicurarsi che i driver virtio-win siano disponibili nell'immagine di ripristino. Questo passaggio consente di utilizzare l'immagine di ripristino per risolvere eventuali problemi o per utilizzare l'immagine in modalità di ripristino.
Dopo aver scaricato i driver virtio necessari vioscsi.inf
e viostor.inf
, utilizzare i seguenti passaggi per rendere i driver disponibili nell'immagine di ripristino.
-
Trovate l'immagine di ripristino usando il comando
reagentc /info
.-
Se l'immagine di ripristino si trova in una partizione di ripristino separata, utilizzare l'utilità
diskpart
per assegnare una lettera di unità e per nascondere l'unità. Questi passaggi non sono necessari se non esistono partizioni di ripristino separate. L'esempio seguente riguarda la partizione3
, con l'unitàR
, e utilizza l'impostazioneid=07
.diskpart select disk 0 list part select part 3 assign letter R set id=07 exit
-
-
Per modificare l'immagine di ripristino, utilizzare
reagentc /disable
per disabilitare la modalità di ripristino. -
Creare una directory per montare l'immagine di ripristino.
md C:\mount\winre
-
Copiare l'immagine di ripristino nella directory di montaggio.
xcopy /h R:\Recovery\WindowsRE\Winre.wim C:\mount\
-
Rendere visibile l'immagine di recupero utilizzando
attrib -s -h -r C:\mount\Winre.wim
. -
Montare il contenuto dell'immagine di ripristino utilizzando
dism /Mount-Image /ImageFile:c:\mount\Winre.wim /index:1 /MountDir:c:\mount\winre
. -
Aggiungere i driver
vioscsi
eviostor
all'immagine di ripristino. L'esempio seguente presuppone che i driver virtio si trovino sull'unità E. Selezionare la versione di Windows® corrispondente per i drivervioscsi
eviostor
.Dism /image:c:\mount\winre /Add-Driver /Driver:"E:\vioscsi\2k19\amd64\vioscsi.inf" Dism /image:c:\mount\winre /Add-Driver /Driver:"E:\viostor\2k19\amd64\viostor.inf"
-
Dopo aver aggiunto tutti i driver, si è pronti a creare l'immagine di ripristino.
Dism /Image:c:\mount\winre /Cleanup-Image /StartComponentCleanup Dism /Unmount-Image /MountDir:c:\mount\winre /Commit
-
Ottimizzare l'immagine di ripristino.
Dism /Export-Image /SourceImageFile:c:\mount\WinRE.wim /SourceIndex:1 /DestinationImageFile:c:\mount\winre-optimized.wim
-
Copiare l'immagine di ripristino nella sua posizione originale, come indicato al punto 1, con i suoi attributi originali.
xcopy C:\mount\winre-optimized.wim R:\Recovery\WindowsRE\WinEe.wim /h /r
-
Se l'immagine di ripristino si trova in una partizione di ripristino separata, utilizzare l'utilità
diskpart
per rimuovere la lettera di unità assegnata e nascondere l'unità. Questi passaggi non sono necessari se non esistono partizioni di ripristino separate. L'esempio seguente riguarda la partizione3
con l'unitàR
.diskpart select disk 0 list part select part 3 remove letter R set id=27 exit
-
-
Attivare l'immagine di ripristino utilizzando
reagentc /enable
. -
Verificare che la modalità di recupero sia abilitata utilizzando
reagentc /info
.
L'immagine viene configurata con un'immagine di ripristino che include i driver virtio necessari.
2. Personalizzazione di un server virtuale
Completare i seguenti passaggi per personalizzare il server virtuale creato con VirtualBox.
-
Installare e configurare cloudbase - init dal pacchetto di installazione Cloudbase - Init
-
Modificare il file
cloudbase-init.conf
(C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init.conf
) in modo che corrisponda ai seguenti valori. Non rimuovere nessun altro contenuto dal file.[DEFAULT] # "cloudbase-init.conf" is used for every boot config_drive_types=vfat,iso config_drive_locations=hdd,partition activate_windows=true kms_host=kms.adn.networklayer.com:1688 mtu_use_dhcp_config=false real_time_clock_utc=false bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\ debug=true log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\ log_file=cloudbase-init.log default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\ metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService, # enabled plugins - executed in order plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin, cloudbaseinit.plugins.windows.ntpclient.NTPClientPlugin, cloudbaseinit.plugins.windows.licensing.WindowsLicensingPlugin, cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin, cloudbaseinit.plugins.common.userdata.UserDataPlugin, cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
Se intendi portare la tua licenza per la tua immagine personalizzata, rimuovi le seguenti righe dal file
cloudbase-init.conf
.activate_windows=true kms_host=kms.adn.networklayer.com:1688
-
Modificare il file
cloudbase-init-unattend.conf
(C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\cloudbase-init-unattend.conf
) in modo che corrisponda ai seguenti valori. Non rimuovere nessun altro contenuto dal file.[DEFAULT] # "cloudbase-init-unattend.conf" is used during the Sysprep phase username=Administrator inject_user_password=true first_logon_behaviour=no config_drive_types=vfat config_drive_locations=hdd allow_reboot=false stop_service_on_exit=false mtu_use_dhcp_config=false bsdtar_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\bsdtar.exe mtools_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\bin\ debug=true log_dir=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\log\ log_file=cloudbase-init-unattend.log default_log_levels=comtypes=INFO,suds=INFO,iso8601=WARN,requests=WARN local_scripts_path=C:\Program Files\Cloudbase Solutions\Cloudbase-Init\LocalScripts\ metadata_services=cloudbaseinit.metadata.services.configdrive.ConfigDriveService, # enabled plugins - executed in order plugins=cloudbaseinit.plugins.common.mtu.MTUPlugin, cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin, cloudbaseinit.plugins.windows.createuser.CreateUserPlugin, cloudbaseinit.plugins.windows.extendvolumes.ExtendVolumesPlugin, cloudbaseinit.plugins.common.setuserpassword.SetUserPasswordPlugin, cloudbaseinit.plugins.common.localscripts.LocalScriptsPlugin
-
Modificare il file
Unattend.xml
(C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml
) e impostare il valorePersistAllDeviceInstalls
sufalse
. -
Eseguire
Sysprep
utilizzando il seguente comando dal prompt dei comandi.C:\Windows\System32\Sysprep\Sysprep.exe /oobe /generalize /shutdown "/unattend:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf\Unattend.xml"
-
Dopo aver eseguito sysprep, il server virtuale viene arrestato. Quindi puoi continuare con Passaggio 4: creazione di un modello di immagine del tuo server virtuale personalizzato
3. Caricamento di un'immagine personalizzata
Utilizza le seguenti informazioni per caricare una immagine personalizzata in IBM Cloud Object Storage.
Nella pagina Objects del vostro IBM Cloud® Object Storage, fate clic su Upload. È possibile utilizzare il plug-in di trasferimento ad alta velocità Aspera per caricare immagini di dimensioni superiori a 200 MB. Per ulteriori informazioni sul caricamento su IBM Cloud Object Storage, vedi Carica i dati.
Passi successivi
Quando l'immagine personalizzata di Windows® è creata e disponibile in IBM Cloud Object Storage, è possibile importare l'immagine personalizzata in VPC e inserire un'immagine di server virtuale per VPC. Assicurati di concedere l'accesso a IBM Cloud Object Storage per importare le immagini.
Se intendi utilizzare un catalogo privato per gestire le tue immagini personalizzate, devi prima importare tale immagine in IBM Cloud VPC, quindi eseguire l'onboarding dell'immagine in un catalogo privato.
Dopo aver importato l'immagine personalizzata, puoi utilizzarla per distribuire un server nella tua infrastruttura IBM Cloud® Virtual Private Cloud.
Dopo aver creato un nuovo server virtuale dall'immagine importata, arrestare e avviare il server virtuale prima di accedervi:
- In IBM Cloud console, fare clic su Menu di navigazione
> Infrastrutture
> Calcolo > Istanze server virtuali.
- Nella pagina Istanze server virtuale, fare clic sull'icona Azioni
.