Búsqueda de sitios web

Cómo instalar KVM en CentOS/RHEL 8


La máquina virtual basada en kernel (KVM para abreviar) es una solución de virtualización estándar de facto y de código abierto que está estrechamente integrada en Linux. Es un módulo de kernel cargable que convierte a Linux en un hipervisor de tipo 1 (bare-metal) que crea una plataforma operativa virtual utilizada para ejecutar máquinas virtuales (VM).

En KVM, cada VM es un proceso de Linux programado y administrado por el kernel y tiene hardware virtualizado privado (es decir, CPU, tarjeta de red, disco, etc.). También admite virtualización anidada, que le permite ejecutar una VM dentro de otra VM.

Algunas de sus características clave incluyen soporte para una amplia gama de plataformas de hardware compatibles con Linux (hardware x86 con extensiones de virtualización (Intel VT o AMD-V)), proporciona seguridad y aislamiento mejorados de VM utilizando SELinux. y virtualización segura (sVirt), hereda las funciones de administración de memoria del kernel y admite migración tanto fuera de línea como en tiempo real (migración de una máquina virtual en ejecución entre hosts físicos).

En este artículo, aprenderá cómo instalar la virtualización KVM, crear y administrar máquinas virtuales en CentOS 8 y RHEL 8 Linux.

Requisitos previos

  1. Una nueva instalación del servidor CentOS 8
  2. Una nueva instalación del servidor RHEL 8
  3. Una suscripción a RedHat habilitada en el servidor RHEL 8

Además, asegúrese de que su plataforma de hardware admita la virtualización ejecutando el siguiente comando.

grep -e 'vmx' /proc/cpuinfo		#Intel systems
grep -e 'svm' /proc/cpuinfo		#AMD systems

Además, confirme que los módulos KVM estén cargados en el kernel (deberían estarlo de forma predeterminada).

lsmod | grep kvm

A continuación se muestra un resultado de muestra del sistema de prueba basado en Intel:

En una serie anterior de guías de KVM, mostramos cómo crear máquinas virtuales en Linux usando KVM (máquina virtual basada en kernel), donde demostramos cómo crear y administrar máquinas virtuales usando la herramienta GUI virt-manager (que ahora está en desuso según la documentación de RHEL 8). Para esta guía, adoptaremos un enfoque diferente: utilizaremos la consola web Cockpit.

Paso 1: Configurar la consola web Cockpit en CentOS 8

1. cockpit es una interfaz basada en web fácil de usar, integrada y extensible para administrar un servidor Linux en un navegador web. Le permite realizar tareas del sistema, como configurar redes, administrar almacenamiento, crear máquinas virtuales e inspeccionar registros con un mouse. Utiliza los privilegios y los inicios de sesión de usuario normales de su sistema, pero también se admiten otros métodos de autenticación.

Viene preinstalado y habilitado en los sistemas CentOS 8 y RHEL 8 recién instalados. Si no lo tiene instalado, instálelo usando el siguiente comando dnf. La extensión cockpit-machines debe instalarse para administrar máquinas virtuales basadas en Libvirt.

dnf install cockpit cockpit-machines

2. Cuando se complete la instalación del paquete, inicie el socket de la cabina, habilítelo para que se inicie automáticamente al iniciar el sistema y verifique su estado para confirmar que está en funcionamiento.

systemctl start cockpit.socket
systemctl enable cockpit.socket
systemctl status cockpit.socket

3. A continuación, agregue el servicio cockpit en el firewall del sistema que está habilitado de forma predeterminada, usando el comando firewall-cmd y vuelva a cargar la configuración del firewall para aplicar los nuevos cambios.

firewall-cmd --add-service=cockpit --permanent
firewall-cmd --reload

4. Para acceder a la consola web de la cabina, abra un navegador web y utilice la siguiente URL para navegar.

https://FQDN:9090/
OR
https://SERVER_IP:9090/

El cockpit utiliza un certificado autofirmado para habilitar HTTPS; simplemente continúe con la conexión cuando reciba una advertencia del navegador. En la página de inicio de sesión, utilice las credenciales de su cuenta de usuario del servidor.

Paso 2: Instalación de virtualización KVM CentOS 8

5. A continuación, instale el módulo de virtualización y otros paquetes de virtualización de la siguiente manera. El paquete virt-install proporciona una herramienta para instalar máquinas virtuales desde la interfaz de línea de comandos y se utiliza un virt-viewer para ver las máquinas virtuales.

dnf module install virt 
dnf install virt-install virt-viewer

6. A continuación, ejecute el comando virt-host-validate para validar si la máquina host está configurada para ejecutar controladores de hipervisor libvirt.

virt-host-validate

7. A continuación, inicie el demonio libvirtd (libvirtd) y habilítelo para que se inicie automáticamente en cada inicio. Luego verifique su estado para confirmar que esté en funcionamiento.


systemctl start libvirtd.service
systemctl enable libvirtd.service
systemctl status libvirtd.service

Paso 3: configurar el puente de red (conmutador de red virtual) a través de Cockpit

8. Ahora cree un puente de red (conmutador de red virtual) para integrar máquinas virtuales a la misma red que el host. De forma predeterminada, una vez que se inicia el demonio libvirtd, activa la interfaz de red predeterminada virbr0 que representa el conmutador de red virtual que opera en modo NAT.

Para esta guía, crearemos una interfaz de red en modo puente llamada br0. Esto permitirá que las máquinas virtuales sean accesibles en las redes host.

Desde la interfaz principal de la cabina, haga clic en Redes, luego haga clic en Agregar puente como se indica en la siguiente captura de pantalla.

9. En la ventana emergente, ingrese el nombre del puente y seleccione los esclavos del puente o los dispositivos de puerto (por ejemplo, enp2s0 que representa la interfaz Ethernet) como se muestra en la siguiente captura de pantalla. Luego haga clic en Aplicar.

10. Ahora, cuando mires la lista de Interfaces, el nuevo puente debería aparecer allí y, después de unos segundos, la interfaz Ethernet debería desactivarse (eliminarse).

Paso 4: Crear y administrar máquinas virtuales a través de la consola web Cockpit

11. Desde la interfaz principal de cockpit, haga clic en la opción Máquinas virtuales como se resalta en la siguiente captura de pantalla. Desde la página Máquinas virtuales, haga clic en Crear VM.

12. Aparecerá una ventana con opciones para crear una nueva VM. Ingrese la conexión, el nombre (por ejemplo, ubuntu18.04), el tipo de fuente de instalación (en el sistema de prueba, hemos almacenado imágenes ISO en el grupo de almacenamiento, es decir, /var/lib/libvirt/ images/), Fuente de instalación, Almacenamiento, Tamaño, Memoria como se muestra en la siguiente imagen. El proveedor del sistema operativo y el sistema operativo deben seleccionarse automáticamente después de ingresar la fuente de instalación.

También marque la opción para iniciar inmediatamente la VM y luego haga clic en Crear.

13. Después de hacer clic en Crear en el paso anterior, la VM debería iniciarse automáticamente y debería iniciarse utilizando la imagen ISO proporcionada. Proceda a instalar el sistema operativo invitado (Ubuntu 18.04 en nuestro caso).

Si hace clic en Interfaces de red de la VM, la fuente de red debe indicar la interfaz de red puente recién creada.

Y durante la instalación, en el paso de configurar una interfaz de red, debería poder notar que la interfaz Ethernet de la máquina virtual recibe una dirección IP del servidor DHCP del host. red.

Tenga en cuenta que necesita instalar el paquete OpenSSH para acceder al sistema operativo invitado a través de SSH desde cualquier máquina en la red host, como se describe en la última sección.

14. Cuando se complete la instalación del sistema operativo invitado, reinicie la VM, luego vaya a Discos y desconecte/retire el dispositivo cdrom debajo de los discos de la VM. . Luego haga clic en Ejecutar para iniciar la VM.

15. Ahora, en Consolas, puede iniciar sesión en el sistema operativo invitado utilizando una cuenta de usuario que creó durante la instalación del sistema operativo.

Paso 5: acceder al sistema operativo invitado de una máquina virtual a través de SSH

16. Para acceder al sistema operativo invitado recién instalado desde la red del host a través de SSH, ejecute el siguiente comando (reemplace 10.42.0.197 con la dirección IP de su invitado).

ssh [email 

17. Para apagar, reiniciar o eliminar una VM, haga clic en ella en la lista de VM y luego use los botones resaltados en la siguiente captura de pantalla.

¡Eso es todo por ahora! En esta guía, mostramos cómo instalar paquetes de virtualización KVM y crear y administrar máquinas virtuales a través de la consola web de la cabina. Para obtener más detalles, consulte: Introducción a la virtualización en RHEL 8.