GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo agregar memoria, vCPU, disco duro a una máquina virtual Linux KVM

En nuestro artículo anterior de la serie Linux KVM, explicamos cómo instalar Linux KVM y crear una VM invitada.

Pero, una vez que haya creado una VM invitada, debe saber cómo realizar algunas de las actividades de mantenimiento de rutina en la VM.

Este tutorial explicará cómo realizar las siguientes actividades de máquina virtual KVM de Linux:

  1. Añadir memoria a la máquina virtual
  2. Agregar vCPU a la máquina virtual
  3. Agregar disco a la máquina virtual
  4. Guardar configuración de máquina virtual
  5. Eliminar una máquina virtual

1. Agregar memoria a la máquina virtual

Para agregar memoria adicional a su VM, debe hacer lo siguiente:

  • Apague su máquina virtual
  • Edite el archivo de la VM y aumente el valor de la memoria máxima asignada a esta VM
  • Reiniciar la máquina virtual
  • Use virsh setmem para configurar la memoria hasta la memoria máxima asignada para esta máquina virtual.

En este ejemplo, aumentemos la memoria de la VM de myRHELVM1 de 2 GB a 4 GB.

Primero, apague la VM usando virsh shutdown como se muestra a continuación:

# virsh shutdown myRHELVM1
Domain myRHELVM1 is being shutdown

A continuación, edite la VM usando virsh edit:

# virsh edit myRHELVM1

Busque la línea de abajo y cambie el valor de la memoria a lo siguiente. En mi ejemplo, antes era 2097152:

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

Tenga en cuenta que el valor anterior está en KB. Después de realizar el cambio, guarde y salga:

# virsh edit myRHELVM1
Domain myRHELVM1 XML configuration edited.

Reinicie la máquina virtual con el archivo de configuración actualizado. Ahora verá que la memoria máxima aumentó de 2G a 4G.

Ahora puede modificar dinámicamente la memoria de la máquina virtual hasta el límite máximo de 4G.

Cree el archivo XML de dominio usando virsh create

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

Ver la memoria disponible para este dominio. Como puede ver a continuación, aunque la memoria máxima disponible es de 4 GB, este dominio solo tiene 2 GB (memoria usada).

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

Configure la memoria para este dominio en 4 GB usando virsh setmem como se muestra a continuación:

# virsh setmem myRHELVM1 4194304

Ahora, lo siguiente indica que hemos asignado 4 GB (memoria usada) a este dominio.

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

2. Agregar VCPU a la máquina virtual

Para aumentar la CPU virtual que se asigna a la VM, edite virsh y cambie el parámetro vcpu como se explica a continuación.

En este ejemplo, aumentemos la memoria de la VM de myRHELVM1 de 2 GB a 4 GB.

Primero, apague la VM usando virsh shutdown como se muestra a continuación:

# virsh shutdown myRHELVM1
Domain myRHELVM1 is being shutdown

A continuación, edite la VM usando virsh edit:

# virsh edit myRHELVM1

Busque la línea de abajo y cambie el valor de vcpu a lo siguiente. En mi ejemplo, antes era 2.

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

Cree el archivo XML de dominio usando virsh create

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

Vea las CPU virtuales asignadas a este dominio como se muestra a continuación. Esto indica que hemos aumentado la vCPU de 2 a 4.

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

3. Agregar disco a la máquina virtual

En este ejemplo, solo tenemos dos discos virtuales (vda1 y vda2) en esta 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

Hay dos pasos involucrados en la creación y conexión de un nuevo dispositivo de almacenamiento a la máquina virtual invitada Linux KVM:

  • Primero, cree una imagen de disco virtual
  • Adjunte la imagen del disco virtual a la máquina virtual

Vamos a crear un disco virtual más y adjuntarlo a nuestra máquina virtual. Para esto, primero necesitamos crear un archivo de imagen de disco usando el comando qemu-img create como se muestra a continuación.

En el siguiente ejemplo, estamos creando una imagen de disco virtual con un tamaño de 7 GB. Las imágenes de disco normalmente se encuentran en el directorio /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

Para adjuntar la imagen de disco recién creada, use el comando virsh added-disk como se muestra a continuación:

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

El comando virsh added-disk anterior tiene los siguientes parámetros:

  • myRHELVM1 El nombre de la máquina virtual
  • –source La ruta completa de la imagen de disco de origen. Este es el que creamos usando el comando qemu-image arriba. es decir:myRHELVM1-disk2.img
  • –target Este es el punto de montaje del dispositivo. En este ejemplo, queremos adjuntar la imagen de disco dada como /dev/vdb. Tenga en cuenta que realmente no necesitamos especificar /dev. Es suficiente si solo especifica vdb.
  • –persistent indica que el disco que se conectó a la VM será persistente.

Como puede ver a continuación, el nuevo /dev/vdb ya está disponible en la máquina virtual.

# 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

Ahora, puede particionar el dispositivo /dev/vdb y crear varias particiones /dev/vdb1, /dev/vdb2, etc., y montarlo en la máquina virtual. Use fdisk para crear las particiones como explicamos anteriormente.

De manera similar, para desconectar un disco de la VM invitada, puede usar el siguiente comando. Pero tenga cuidado de especificar el vd* correcto; de lo contrario, podría terminar eliminando el dispositivo incorrecto.

# virsh detach-disk myRHELVM1 vdb
Disk detached successfully

4. Guardar la configuración de la máquina virtual

Si realiza muchos cambios en su VM, se recomienda que guarde las configuraciones.

Utilice el archivo virsh dumpxml para realizar una copia de seguridad y guardar la información de configuración de su VM como se muestra a continuación.

# virsh dumpxml myRHELVM1 > myrhelvm1.xml

# ls myrhelvm1.xml
myrhelvm1.xml

Una vez que tenga el archivo de configuración en formato XML, siempre puede volver a crear su máquina virtual invitada a partir de este archivo XML, usando el comando virsh create como se muestra a continuación:

virsh create myrhelvm1.xml

5. Eliminar máquina virtual KVM

Si ha creado varias máquinas virtuales con fines de prueba y desea eliminarlas, debe realizar los siguientes tres pasos:

  • Apague la máquina virtual
  • Destruir la máquina virtual (y anular su definición)
  • Eliminar el archivo de imagen de disco

En este ejemplo, eliminemos myRHELVM2 VM. Primero, apague esta máquina virtual:

# virsh shutdown myRHELVM2
Domain myRHELVM2 is being shutdown

A continuación, destruya esta máquina virtual como se muestra a continuación:

# virsh destroy myRHELVM2
Domain myRHELVM2 destroyed

Además de destruirlo, también debe anular la definición de la VM como se muestra a continuación:

# virsh undefine myRHELVM2
Domain myRHELVM2 has been undefined

Finalmente, elimine cualquier archivo de imagen de disco que haya creado para esta máquina virtual del directorio /var/lib/libvirt/images:
Ahora puede eliminar el archivo de imagen de disco en /var/lib/libvirt/images

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

Linux
  1. Cómo particionar un disco en Linux

  2. Cómo eliminar máquinas virtuales basadas en KVM en Redhat Linux

  3. Cómo agregar un disco nuevo a un servidor Linux existente

  4. Cómo comprobar si un sistema Linux es una máquina física o virtual

  5. Linux KVM en un Virtualbox

Cómo encontrar la dirección IP de una máquina virtual KVM

Cómo encontrar la velocidad de transferencia de datos del disco duro en Linux

Cómo exportar e importar máquinas virtuales KVM en Linux

Cómo clonar una máquina virtual en VirtualBox

Cómo verificar bloques defectuosos o sectores defectuosos en el disco duro en Linux

¿Cómo montar un archivo de disco duro virtual (VHD) en Ubuntu Linux?