GNU/Linux >> Linux Esercitazione >  >> Linux

Come aggiungere memoria, vCPU, disco rigido alla macchina virtuale KVM Linux

Nel nostro precedente articolo della serie Linux KVM, abbiamo spiegato come installare Linux KVM e creare una Guest VM.

Tuttavia, una volta creata una VM Guest, devi sapere come eseguire alcune delle attività di manutenzione ordinaria sulla VM.

Questo tutorial spiegherà come eseguire le seguenti attività della macchina virtuale KVM Linux:

  1. Aggiungi memoria alla VM
  2. Aggiungi vCPU alla VM
  3. Aggiungi disco alla macchina virtuale
  4. Salva configurazione VM
  5. Elimina una VM

1. Aggiungi memoria alla macchina virtuale

Per aggiungere ulteriore memoria alla tua VM, dovresti fare quanto segue:

  • Spegni la tua VM
  • Modifica il file VM e aumenta il valore della memoria massima allocata a questa VM
  • Riavvia la VM
  • Utilizza virsh setmem per impostare la memoria fino alla memoria massima allocata per questa VM.

In questo esempio, aumentiamo la memoria della VM di myRHELVM1 da 2 GB a 4 GB.

Innanzitutto, spegni la macchina virtuale utilizzando l'arresto di virsh come mostrato di seguito:

# virsh shutdown myRHELVM1
Domain myRHELVM1 is being shutdown

Quindi, modifica la VM usando virsh edit:

# virsh edit myRHELVM1

Cerca la riga sottostante e modifica il valore della memoria come segue. Nel mio esempio, prima era 2097152:

<memory unit='KiB'>4194304</memory>

Si prega di notare che il valore sopra è in KB. Dopo aver apportato la modifica, salva ed esci:

# virsh edit myRHELVM1
Domain myRHELVM1 XML configuration edited.

Riavvia la macchina virtuale con il file di configurazione aggiornato. Ora vedrai la memoria massima aumentata da 2G a 4G.

Ora puoi modificare dinamicamente la memoria della VM fino al limite di 4G max.

Crea il file XML del dominio utilizzando virsh create

# virsh create /etc/libvirt/qemu/myRHELVM1.xml
Domain myRHELVM1 created from /etc/libvirt/qemu/myRHELVM1.xml

Visualizza la memoria disponibile per questo dominio. Come puoi vedere di seguito, anche se la memoria massima disponibile è 4 GB, questo dominio ha solo 2 GB (memoria utilizzata).

# virsh dominfo myRHELVM1 | grep memory
Max memory:     4194304 KiB
Used memory:    2097152 KiB

Imposta la memoria per questo dominio su 4 GB utilizzando virsh setmem come mostrato di seguito:

# virsh setmem myRHELVM1 4194304

Ora, quanto segue indica che abbiamo allocato 4 GB (memoria utilizzata) a questo dominio.

# virsh dominfo myRHELVM1 | grep memory
Max memory:     4194304 KiB
Used memory:    4194304 KiB

2. Aggiungi VCPU alla VM

Per aumentare la CPU virtuale allocata alla VM, esegui virsh edit e cambia il parametro vcpu come spiegato di seguito.

In questo esempio, aumentiamo la memoria della VM di myRHELVM1 da 2 GB a 4 GB.

Innanzitutto, spegni la macchina virtuale utilizzando l'arresto di virsh come mostrato di seguito:

# virsh shutdown myRHELVM1
Domain myRHELVM1 is being shutdown

Quindi, modifica la VM usando virsh edit:

# virsh edit myRHELVM1

Cerca la riga sottostante e modifica il valore per vcpu come segue. Nel mio esempio, prima era 2.

<vcpu placement='static'>4</vcpu>

Crea il file XML del dominio utilizzando virsh create

# virsh create /etc/libvirt/qemu/myRHELVM1.xml
Domain myRHELVM1 created from /etc/libvirt/qemu/myRHELVM1.xml

Visualizza le CPU virtuali allocate a questo dominio come mostrato di seguito. Ciò indica che abbiamo aumentato la vCPU da 2 a 4.

# virsh dominfo myRHELVM1 | grep -i cpu
CPU(s):         4
CPU time:       21.0s

3. Aggiungi disco alla macchina virtuale

In questo esempio, abbiamo solo due dischi virtuali (vda1 e vda2) su questa VM.

# fdisk -l | grep vd
Disk /dev/vda: 10.7 GB, 10737418240 bytes
/dev/vda1   *           3        1018      512000   83  Linux
/dev/vda2            1018       20806     9972736   8e  Linux LVM

Sono necessari due passaggi per la creazione e il collegamento di un nuovo dispositivo di archiviazione alla VM guest KVM Linux:

  • In primo luogo, crea un'immagine disco virtuale
  • Allega l'immagine del disco virtuale alla VM

Creiamo un altro disco virtuale e colleghiamolo alla nostra VM. Per questo, dobbiamo prima creare un file immagine del disco usando il comando qemu-img create come mostrato di seguito.

Nell'esempio seguente, stiamo creando un'immagine del disco virtuale con una dimensione di 7 GB. Le immagini del disco si trovano in genere nella directory /var/lib/libvirt/images/.

# cd /var/lib/libvirt/images/

# qemu-img create -f raw myRHELVM1-disk2.img 7G
Formatting 'myRHELVM1-disk2.img', fmt=raw size=7516192768

Per allegare l'immagine del disco appena creata, usa il comando virsh attach-disk come mostrato di seguito:

# virsh attach-disk myRHELVM1 --source /var/lib/libvirt/images/myRHELVM1-disk2.img --target vdb --persistent
Disk attached successfully

Il comando virsh attach-disk sopra ha i seguenti parametri:

  • myRHELVM1 Il nome della VM
  • –source Il percorso completo dell'immagine del disco di origine. Questo è quello che abbiamo creato usando il comando qemu-image sopra. cioè:myRHELVM1-disk2.img
  • –target Questo è il punto di montaggio del dispositivo. In questo esempio, vogliamo allegare l'immagine del disco data come /dev/vdb. Tieni presente che non abbiamo davvero bisogno di specificare /dev. Basta specificare vdb.
  • –persistent indica che il disco collegato alla VM sarà persistente.

Come puoi vedere di seguito, il nuovo /dev/vdb è ora disponibile sulla VM.

# fdisk -l | grep vd
Disk /dev/vda: 10.7 GB, 10737418240 bytes
/dev/vda1   *           3        1018      512000   83  Linux
/dev/vda2            1018       20806     9972736   8e  Linux LVM
Disk /dev/vdb: 7516 MB, 7516192768 bytes

Ora puoi partizionare il dispositivo /dev/vdb e creare più partizioni /dev/vdb1, /dev/vdb2, ecc. e montarlo sulla VM. Usa fdisk per creare le partizioni come spiegato in precedenza.

Allo stesso modo per staccare un disco dalla macchina virtuale guest, puoi usare il comando seguente. Ma fai attenzione a specificare il vd corretto* altrimenti potresti finire per rimuovere il dispositivo sbagliato.

# virsh detach-disk myRHELVM1 vdb
Disk detached successfully

4. Salva configurazione macchina virtuale

Se apporti molte modifiche alla tua VM, ti consigliamo di salvare le configurazioni.

Usa il file virsh dumpxml per eseguire un backup e salvare le informazioni di configurazione della tua VM come mostrato di seguito.

# virsh dumpxml myRHELVM1 > myrhelvm1.xml

# ls myrhelvm1.xml
myrhelvm1.xml

Una volta che hai il file di configurazione in formato XML, puoi sempre ricreare la tua VM guest da questo file XML, usando il comando virsh create come mostrato di seguito:

virsh create myrhelvm1.xml

5. Elimina la macchina virtuale KVM

Se hai creato più VM a scopo di test e desideri eliminarle, dovresti eseguire i tre passaggi seguenti:

  • Spegni la VM
  • Distruggi la VM (e annulla la definizione)
  • Rimuovi il file immagine disco

In questo esempio, eliminiamo myRHELVM2 VM. Innanzitutto, spegni questa VM:

# virsh shutdown myRHELVM2
Domain myRHELVM2 is being shutdown

Quindi, elimina questa VM come mostrato di seguito:

# virsh destroy myRHELVM2
Domain myRHELVM2 destroyed

Oltre a distruggerlo, dovresti anche annullare la definizione della VM come mostrato di seguito:

# virsh undefine myRHELVM2
Domain myRHELVM2 has been undefined

Infine, rimuovi qualsiasi file di immagine del disco che hai creato per questa VM dalla directory /var/lib/libvirt/images:
Ora puoi rimuovere il file img del disco in /var/lib/libvirt/images

rm /var/lib/libvirt/images/myRHELVM2-disk1.img
rm /var/lib/libvirt/images/myRHELVM2-disk2.img

Linux
  1. Come partizionare un disco in Linux

  2. Come rimuovere le macchine virtuali basate su KVM su Redhat Linux

  3. Come aggiungere un nuovo disco a un server Linux esistente

  4. Avvia un sistema operativo nativo su un disco rigido come una macchina virtuale

  5. Linux KVM su una Virtualbox

Come trovare l'indirizzo IP di una macchina virtuale KVM

Come trovare la velocità di trasferimento dei dati del disco rigido in Linux

Come esportare e importare macchine virtuali KVM in Linux

Come clonare la macchina virtuale in VirtualBox

Come controllare i blocchi danneggiati o i settori danneggiati sul disco rigido in Linux

Come montare il file del disco rigido virtuale (VHD) in Ubuntu Linux?