GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Configure el servidor de virtualización sin cabeza usando KVM en Ubuntu 18.04 LTS

Ya cubrimos la configuración de Oracle VirtualBox en Ubuntu 18.04 servidor sin cabeza. En este tutorial, discutiremos cómo configurar un servidor de virtualización sin cabeza usando KVM y cómo administrar las máquinas invitadas desde un cliente remoto. Como ya sabrá, KVM (K basado en ernel v m virtual achine) es una virtualización completa de código abierto para Linux. Con KVM, podemos convertir fácilmente cualquier servidor Linux en un entorno de virtualización completo en minutos e implementar diferentes tipos de máquinas virtuales como GNU/Linux, *BSD, Windows, etc.

Descargar - Libro electrónico gratuito:"6 cosas que Ubuntu hace mejor que Windows"

Configurar el servidor de virtualización sin cabeza usando KVM en Ubuntu

Probé esta guía en el servidor Ubuntu 18.04 LTS, sin embargo, este tutorial funcionará en otras distribuciones de Linux como Debian, CentOS, RHEL y Scientific Linux. Este método será perfectamente adecuado para aquellos que quieran configurar un entorno de virtualización simple en un servidor Linux que no tiene ningún entorno gráfico.

Para el propósito de esta guía, usaré dos sistemas.

servidor de virtualización KVM:

  • SO del host - Servidor mínimo Ubuntu 18.04 LTS (sin GUI)
  • Dirección IP del sistema operativo host :192.168.225.22/24
  • SO invitado (Que vamos a alojar en Ubuntu 18.04):Servidor Ubuntu 16.04 LTS

Cliente de escritorio remoto:

  • SO -Arco Linux

Instalar KVM

Primero, verifiquemos si nuestro sistema es compatible con la virtualización de hardware. Para hacerlo, ejecute el siguiente comando desde la Terminal:

$ egrep -c '(vmx|svm)' /proc/cpuinfo

Si el resultado es cero (0) , el sistema no admite la virtualización de hardware o la virtualización está deshabilitada en la Bios. Vaya a su BIOS y busque la opción de virtualización y habilítela.

si el resultado es 1 o más , el sistema admitirá la virtualización de hardware. Sin embargo, aún debe habilitar la opción de virtualización en Bios antes de ejecutar los comandos anteriores.

Alternativamente, puede usar el siguiente comando para verificarlo. Primero debe instalar kvm como se describe a continuación, para usar este comando.

$ kvm-ok

Salida de muestra:

INFO: /dev/kvm exists
KVM acceleration can be used

Si recibe el siguiente error, aún puede ejecutar máquinas invitadas en KVM, pero el rendimiento será muy bajo.

INFO: Your CPU does not support KVM extensions
INFO: For more detailed results, you should run this as root
HINT: sudo /usr/sbin/kvm-ok

Además, hay otras formas de averiguar si su CPU es compatible con la virtualización o no. Consulte la siguiente guía para obtener más detalles.

  • Cómo averiguar si una CPU es compatible con la tecnología de virtualización (VT)

A continuación, instale KVM y otros paquetes necesarios para configurar un entorno de virtualización en Linux.

En Ubuntu y otros sistemas basados ​​en DEB, ejecute:

$ sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker

Una vez instalado KVM, inicie el servicio libvertd (si aún no se ha iniciado):

$ sudo systemctl enable libvirtd
$ sudo systemctl start libvirtd

Crear máquinas virtuales

Todos los archivos de la máquina virtual y otros archivos relacionados se almacenarán en /var/lib/libvirt/ . La ruta predeterminada de las imágenes ISO es /var/lib/libvirt/boot/ .

Primero, veamos si hay alguna máquina virtual. Para ver la lista de máquinas virtuales disponibles, ejecute:

$ sudo virsh list --all

Salida de muestra:

Id Name State
----------------------------------------------------

Como puede ver arriba, no hay ninguna máquina virtual disponible en este momento.

Ahora, creemos uno.

Por ejemplo, creemos una máquina virtual Ubuntu 16.04 con 512 MB de RAM, 1 núcleo de CPU, 8 GB de disco duro.

$ sudo virt-install --name Ubuntu-16.04 --ram=512 --vcpus=1 --cpu host --hvm --disk path=/var/lib/libvirt/images/ubuntu-16.04-vm1,size=8 --cdrom /var/lib/libvirt/boot/ubuntu-16.04-server-amd64.iso --graphics vnc

Asegúrese de tener una imagen ISO de Ubuntu 16.04 en la ruta /var/lib/libvirt/boot/ o cualquier otra ruta que haya dado en el comando anterior.

Salida de muestra:

WARNING Graphics requested but DISPLAY is not set. Not running virt-viewer.
WARNING No console to launch for the guest, defaulting to --wait -1

Starting install...
Creating domain... | 0 B 00:00:01 
Domain installation still in progress. Waiting for installation to complete.
Domain has shutdown. Continuing.
Domain creation completed.
Restarting guest.

Desglosemos el comando anterior y veamos qué hace cada opción.

  • --nombre :Esta opción define el nombre del nombre virtual. En nuestro caso, el nombre de la VM es Ubuntu-16.04 .
  • --ram=512 :asigna 512 MB de RAM a la máquina virtual.
  • -vcpus=1 :indica la cantidad de núcleos de CPU en la máquina virtual.
  • --host de la CPU :optimiza las propiedades de la CPU para la VM al exponer la configuración de la CPU del host al invitado.
  • --hvm :Solicite la virtualización completa del hardware.
  • --ruta del disco :La ubicación para guardar el disco duro de la VM y su tamaño. En nuestro ejemplo, he asignado un tamaño de disco duro de 8 GB.
  • --cdrom :La ubicación de la imagen ISO del instalador. Tenga en cuenta que debe tener la imagen ISO real en esta ubicación.
  • --gráficos vnc :permite el acceso VNC a la máquina virtual desde un cliente remoto.

Acceda a las máquinas virtuales mediante el cliente VNC

Ahora, vaya al sistema de escritorio remoto. SSH al servidor Ubuntu (servidor de virtualización) como se muestra a continuación.

$ ssh [email protected]

Aquí, sk es el nombre de usuario de mi servidor Ubuntu y 192.168.225.22 es su dirección IP.

Ejecute el siguiente comando para averiguar el número de puerto VNC. Necesitamos esto para acceder a la máquina virtual desde un sistema remoto.

$ sudo virsh dumpxml Ubuntu-16.04 | grep vnc

Salida de muestra:

<graphics type='vnc' port='5900' autoport='yes' listen='127.0.0.1'>

Anote el número de puerto 5900 . Instale cualquier aplicación de cliente VNC. Para esta guía, usaré TigerVnc. TigerVNC está disponible en los repositorios predeterminados de Arch Linux. Para instalarlo en sistemas basados ​​en Arch, ejecute:

$ sudo pacman -S tigervnc

Escriba el siguiente comando de reenvío de puerto SSH desde su sistema cliente remoto que tiene instalada la aplicación cliente VNC.

$ ssh [email protected] -L 5900:127.0.0.1:5900

Nuevamente, 192.168.225.22 es la dirección IP de mi servidor Ubuntu (servidor de virtualización).

Luego, abra el cliente VNC desde su Arch Linux (cliente).

Escriba localhost:5900 en el campo del servidor VNC y haga clic en Conectar botón.

Luego, comience a instalar la VM de Ubuntu como lo hace en el sistema físico.

Del mismo modo, puede configurar tantas como máquinas virtuales según las especificaciones del hardware del servidor.

Alternativamente, puede usar virt-viewer utilidad para instalar el sistema operativo en las máquinas invitadas. virt-viewer está disponible en la mayoría de los repositorios predeterminados de la distribución de Linux. Después de instalar virt-viewer, ejecute el siguiente comando para establecer el acceso VNC a la VM.

$ sudo virt-viewer --connect=qemu+ssh://192.168.225.22/system --name Ubuntu-16.04

Administrar máquinas virtuales

Administrar máquinas virtuales desde la línea de comandos usando la interfaz de usuario de administración de virsh es muy interesante y divertido. Los comandos son muy fáciles de recordar. Veamos algunos ejemplos.

Para ver la lista de máquinas virtuales en ejecución, ejecute:

$ sudo virsh list

O,

$ sudo virsh list --all

Salida de muestra:

 Id Name State
----------------------------------------------------
 2 Ubuntu-16.04 running

Para iniciar una máquina virtual, ejecute:

$ sudo virsh start Ubuntu-16.04

Alternativamente, puede usar la identificación de VM para iniciarlo.

Como puede ver en el resultado anterior, la identificación de la máquina virtual Ubuntu 16.04 es 2. Entonces, para iniciarla, solo especifique su identificación como se muestra a continuación.

$ sudo virsh start 2

Para reiniciar una VM, ejecute:

$ sudo virsh reboot Ubuntu-16.04

Salida de muestra:

Domain Ubuntu-16.04 is being rebooted

Para pausar una VM en ejecución, ejecute:

$ sudo virsh suspend Ubuntu-16.04

Salida de muestra:

Domain Ubuntu-16.04 suspended

Para reanudar la VM suspendida, ejecute:

$ sudo virsh resume Ubuntu-16.04

Salida de muestra:

Domain Ubuntu-16.04 resumed

Para apagar una VM, ejecute:

$ sudo virsh shutdown Ubuntu-16.04

Salida de muestra:

Domain Ubuntu-16.04 is being shutdown

Para eliminar por completo una VM, ejecute:

$ sudo virsh undefine Ubuntu-16.04
$ sudo virsh destroy Ubuntu-16.04

Salida de muestra:

Domain Ubuntu-16.04 destroyed

Para obtener más opciones, te recomiendo que consultes las páginas del manual.

$ man virsh

Eso es todo por ahora amigos. Empiece a jugar con su nuevo entorno de virtualización. La virtualización de KVM se optará por fines de investigación y desarrollo y de prueba, entre otros. Si tiene suficiente hardware, puede usarlo para grandes entornos de producción.

Lectura relacionada:

  • Instalar y configurar KVM en Ubuntu 20.04 servidor sin cabeza

Recurso:

  • sitio web de KVM

Ubuntu
  1. Cómo configurar el servidor de almacenamiento iSCSI en Ubuntu 18.04 LTS

  2. Cómo configurar el servidor Rsyslog en Ubuntu 18.04 LTS

  3. 4 pasos para configurar el repositorio local en Ubuntu usando APT-mirror

  4. Configuración del entorno de virtualización del servidor con Proxmox VE

  5. Configurar el servidor Urbackup en Ubuntu 20.04

Cómo configurar bloques de servidor Nginx en Ubuntu 18.04 LTS

Cómo instalar Oracle VirtualBox en el servidor sin cabeza Ubuntu 18.04.2 LTS

Cómo configurar la última versión de MySQL en Ubuntu 20.04 LTS

Cómo instalar Jellyfin Media Server en Ubuntu 20.04 LTS Server/Desktop

Instale y configure Plex Media Server en Ubuntu 22.04 LTS

Cómo configurar el servidor y el cliente NTP en Ubuntu 20.04 LTS