Questo documento mostra come creare una macchina virtuale (VM) Windows che esegue l'avvio da un file ISO utilizzando VM Runtime su GDC. Quando la VM si avvia, devi completare manualmente la routine di configurazione di Windows.
Puoi anche creare una VM Windows da un'immagine disco preparata utilizzando un'origine HTTP o da Cloud Storage.
Prima di iniziare
Per completare questo documento, devi avere accesso alle seguenti risorse:
- Accesso a un cluster Google Distributed Cloud versione 1.12.0 (
anthosBareMetalVersion: 1.12.0) o successive. Puoi utilizzare qualsiasi tipo di cluster in grado di eseguire carichi di lavoro. Se necessario, prova Google Distributed Cloud su Compute Engine o consulta la panoramica della creazione del cluster. - Lo strumento client
virtctlinstallato come plug-in perkubectl. Se necessario, installa lo strumento client virtctl.
Crea un disco virtuale per l'immagine ISO
Per creare correttamente una VM Windows, segui i passaggi e le sezioni di questo documento in ordine.
Per eseguire l'avvio da un'immagine ISO di Windows, crea prima un VirtualMachineDisk con diskType impostato su cdrom. Utilizza l'ISO di Windows come origine per questo disco.
Crea un manifest
VirtualMachineDisk, ad esempiowindows-iso.yaml, nell'editor che preferisci:nano windows-iso.yamlCopia e incolla il seguente manifest YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachineDisk metadata: name: windows-iso spec: source: http: url: IMG_URL size: 10Gi diskType: cdromSostituisci
IMG_URLcon il percorso HTTP all'ISO di Windows. Puoi anche creare e utilizzare le credenziali per importare un ISO da Cloud Storage.Salva e chiudi il manifest nell'editor.
Crea
VirtualMachineDiskutilizzandokubectl:kubectl apply -f windows-iso.yaml
Crea un disco dei driver della VM
Per eseguire correttamente l'avvio da un ISO di Windows e completare la procedura di installazione, la
VM deve avere accesso ai
virtio driver. Per fornire i driver virtio alla VM, completa i seguenti passaggi:
Crea un manifest
VirtualMachineDisk, ad esempiovirtio-driver.yaml, nell'editor che preferisci:nano virtio-driver.yamlCopia e incolla il seguente manifest YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachineDisk metadata: name: virtio-driver spec: size: 1Gi source: registry: url: docker://quay.io/kubevirt/virtio-container-disk:latest diskType: cdromQuesto manifest estrae i driver
virtiopiù recenti da un repository Docker pubblico e impostadiskTypesucdrom. La VM utilizza questo disco durante la procedura di installazione.Salva e chiudi il manifest nell'editor.
Crea
VirtualMachineDiskutilizzandokubectl:kubectl apply -f virtio-driver.yaml
Crea una VM Windows
Crea una VM che esegue l'avvio da VirtualMachineDisk ISO di Windows e collega il disco dei driver virtio:
Crea un manifest che definisca un
VirtualMachineDiskper il volume di avvio e unVirtualMachine, ad esempiowindows-vm.yaml, nell'editor che preferisci:nano windows-vm.yamlCopia e incolla il seguente manifest YAML:
apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachineDisk metadata: name: VM_NAME-boot-dv spec: size: 100Gi --- apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachine metadata: name: VM_NAME spec: osType: Windows disks: - virtualMachineDiskName: VM_NAME-boot-dv boot: true - virtualMachineDiskName: windows-iso - virtualMachineDiskName: virtio-driver compute: cpu: vcpus: 2 memory: capacity: 4Gi interfaces: - name: eth0 networkName: pod-networkSostituisci
VM_NAMEcon il nome che vuoi assegnare alla VM.Questo manifest crea un volume di avvio di 100 Gibibyte (GiB). Poiché questo volume di avvio è vuoto al primo avvio della VM, la VM esegue l'avvio da ISO come dispositivo CD-ROM per avviare la routine di configurazione. Anche i driver
virtiosono collegati per completare la procedura di installazione.Salva e chiudi il manifest nell'editor.
Crea
VirtualMachineDiskeVirtualMachineutilizzandokubectl:kubectl apply -f windows-vm.yaml
Connettiti alla VM Windows e completa l'installazione del sistema operativo
La VM si avvia ed esegue l'avvio dall'ISO di Windows nella sezione precedente. Connettiti alla VM e completa la procedura di installazione di Windows e configura la VM:
Connettiti alla VM Windows:
kubectl virt vnc VM_NAMESostituisci
VM_NAMEcon il nome della VM Windows.Quando richiesto, inserisci le credenziali utente del sistema operativo guest Windows per la VM.
Per ulteriori informazioni sull'utilizzo di
kubectl virt vncper connetterti alla VM, consulta Connettiti direttamente utilizzando VNC.Nella configurazione di Windows, scegli di eseguire un'installazione personalizzata.
Seleziona Carica driver, vai alla directory viostor sul
virtiodisco, quindi seleziona la directory che corrisponde alla versione di Windows che vuoi installare.Per ulteriori informazioni, consulta Driver
virtiodi KubeVirt Windows.Ora che i driver di archiviazione e di rete di
virtiosono disponibili, completa il resto della procedura di installazione di Windows.Ti consigliamo di abilitare Remote Desktop Protocol in modo da poterti connettere direttamente alla VM dopo l'installazione.
Scollega l'immagine ISO e il disco dei driver
Al termine dell'installazione di Windows, rimuovi il disco dei driver virtio e l'immagine ISO di Windows dalla VM:
Arresta la VM Windows:
kubectl virt stop VM_NAMESostituisci
VM_NAMEcon il nome della VM Windows.Utilizza
kubectlper modificare la VM:kubectl edit gvm VM_NAMESostituisci
VM_NAMEcon il nome della VM Windows.Nell'editor, aggiorna la sezione
spec.disksper rimuovere i dischi ISO evirtiodi Windows, come mostrato nell'esempio seguente. L'unico disco ancora collegato alla VM deve essere ilVM_NAME-boot-dv:apiVersion: vm.cluster.gke.io/v1 kind: VirtualMachine metadata: name: windows-vm spec: osType: Windows disks: - virtualMachineDiskName: windows-vm-boot-dv boot: true interfaces: ...Salva e chiudi il manifest della VM.
Avvia la VM Windows:
kubectl virt start VM_NAMESostituisci
VM_NAMEcon il nome della VM Windows.Controlla lo
STATUSdella VM:kubectl get gvm VM_NAMESostituisci
VM_NAMEcon il nome della VM Windows.Assicurati che la VM sia nello stato
Running. Se la VM non è nello statoRunning, controlla il manifest della risorsaVirtualMachineper assicurarti di aver rimosso solo il disco ISO evirtiodi Windows. Verifica che l'host disponga di risorse di calcolo sufficienti per avviare la VM.