Tutoriales y Manuales
Entradas Mensuales
-
►
2023
(Total:
644
)
- ► septiembre (Total: 65 )
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
▼
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
▼
febrero
(Total:
47
)
-
Instalar y configurar IDS/IPS Suricata en una Rasp...
-
Apple se ve obligada a agregar puntuaje de reparab...
-
Vulnerabilidad crítica en vCenter de VMWare
-
Anuncian un portátil modular para facilitar su re...
-
La Universidad de Oxford sufre un ciberataque en u...
-
Las contraseñas más utilizadas en España
-
Disponible nueva versión de Kali Linux 2021.1 (com...
-
Empresas de Lleida victimas de un ataque del Ranso...
-
Descubren Silver Sparrow: un malware afecta a 30.0...
-
Alertan ataques de suplantación de identidad en cu...
-
Píxel de rastreo en los e-mails se ha convertido e...
-
Granjas de minado: minar criptomonedas hace desapa...
-
Programas para ver y comprobar hardware de tu PC: ...
-
Kia Motors America sufre un ataque de ransomware, ...
-
Estructura archivos PDF con malware - Análisis y p...
-
La Policía cierra una red IPTV ilegal con 20.000 c...
-
Google Presenta Preview de Android 12
-
Nomenclatura procesadores CPU Amd Ryzen e Intel
-
Francia impulsará la ciberdefensa tras los ataques...
-
Interfaz de red eth0 a enp0s3 - nombres de interfa...
-
Grave vulnerabilidad en App ShareIT de Softonic
-
Mozilla analiza la privacidad de las app de citas
-
¿Qué es una vCPU? Núcleos Vs Hilos
-
Fallo en Telegram permitía recuperar mensajes auto...
-
Proxmox VE: herramienta virtualización basada en D...
-
¿Vas a comprar un monitor? Diferencias entre panel...
-
Commando VM 2.0: máquina virtual en Windows para p...
-
Así hackearon con TeamViewer una planta de agua pa...
-
Filtran 3.270 millones de direcciones de correos e...
-
KVM – Virtualización en el núcleo de Linux
-
Podman: contenedores docker de la mano de RedHat
-
Alertan graves vulnerabilidades en la pila TCP/IP ...
-
Fiabilidad de una unidad SSD - Lecturas - Escritur...
-
Instalar y configurar RaspBerry Pi 4 B : opciones,...
-
Nueva vulnerabilidad activa para Google Chrome (y ...
-
Mejores programas para medir la velocidad de tu SS...
-
Primeros pasos con contenedores Docker y gestión g...
-
Tipos de memorias NAND SSD: SLC, MLC, TLC, QLC
-
Introducción y comandos Android Debug Bridge (adb)
-
Instalar y configurar HoneyPot DShield (basado en ...
-
Las 10 vulnerabilidades más explotadas y las más g...
-
Instalar Kali Linux en una RaspBerry Pi 4
-
Cuidado con los mods que descargas para Cyberpunk ...
-
Mobile Security Framework (MobSF): Herramienta aná...
-
Virtualización: Mejores programas para trabajar co...
-
Vulnerabilidad crítica en la librería libgcrypt de...
-
Instalar Honeypot T-Pot en una máquina virtual
-
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
DeepNude es una aplicación que utiliza inteligencia artificial y redes neuronales para eliminar la ropa de imágenes de mujeres y recrear de...
-
Usuarios de Air Europa han recibido un correo de la empresa avisando de que la aerolínea ha sufrido un ciberataque que ha supuesto el rob...
-
La barra de estado aparece en la parte supe rior de cada pantalla. Muestra los íconos que indican que has recibido notificaciones (a la izq...
KVM – Virtualización en el núcleo de Linux
KVM está estrechamente relacionado con el software de emulación QEMU. Este último suele ofrecer funciones de virtualización de hardware, mientras que Linux KVM se encarga de gestionar la asignación de recursos a los sistemas invitados. Por eso, es habitual toparse también con el término KVM/QEMU. Puesto que KVM es un componente esencial de Linux, no puede integrarse en dispositivos Windows. Sin embargo, Windows sí puede ejecutarse mediante la solución de virtualización, al igual que la mayoría de sistemas Unix, como Linux, Solaris y BSD. KVM está incluido por defecto en la mayoría de distribuciones Linux, pero debe ser activado primero.
Virtualización de hardware
Con el término virtualización de hardware se hace referencia a tecnologías que ponen a disposición componentes de hardware a través de un software con independencia de su soporte físico. El ejemplo clásico de la virtualización de hardware es la máquina virtual (MV).
Una máquina virtual es un ordenador virtual que se comporta como uno físico, tanto en lo que respecta al hardware como al sistema operativo. Las máquinas virtuales funcionan como sistemas alojados virtuales en uno o varios sistemas físicos llamados equipos anfitriones o host.En la virtualización de hardware es un hipervisor el que crea la capa de abstracción entre la base física y el sistema virtual
KVM – Virtualización en el núcleo de Linux
En el contexto empresarial y cuando se usan servidores profesionales, la virtualización ya es imprescindible. Gracias a esta tecnología, pueden ejecutarse varios sistemas operativos invitados en un mismo ordenador físico, lo cual tiene muchas ventajas.
KVM (Kernel-based Virtual Machine) es un modulo de virtualización para el núcleo de Linux, que le permite a este hacer las veces de un hipervisor, permitiendo así virtualizar sistemas operativos variados como Linux, BSD, Solaris, Windows, Haiku, MacOS, entre muchos otros.
Inicialmente creado para correr sobre arquitectura x86, ha sido portado para correr sobre arquitecturas adicionales como ARM, AI-64, PowerPC, etc.
En la actualidad se consolida como una de las opciones de virtualización más destacadas del mercado, compitiendo fuertemente con alternativas como Xen o VirtualBox. (KVM vs VirtualBox)
¿Qué es la KVM de Linux?
La llamada Kernel-based Virtual Machine (KVM) fue presentada por la compañía Qumranet en el año 2000 y a principios de 2007 ya había sido incluida en el kernel de Linux 2.6.20. El año siguiente, RedHat, distribuidor de Linux, adquirió Qumranet. Para poder seguir desarrollando esta tecnología, RedHat fundó, junto con IBM, el proyecto Open Virtualization Alliance (OVA), en el que participaron empresas como Suse, Intel y HP.
KVM está estrechamente relacionado con el software de emulación QEMU. Este último suele ofrecer funciones de virtualización de hardware, mientras que Linux KVM se encarga de gestionar la asignación de recursos a los sistemas invitados. Por eso, es habitual toparse también con el término KVM/QEMU. Puesto que KVM es un componente esencial de Linux, no puede integrarse en dispositivos Windows. Sin embargo, Windows sí puede ejecutarse mediante la solución de virtualización, al igual que la mayoría de sistemas Unix, como Linux, Solaris y BSD. KVM está incluido por defecto en la mayoría de distribuciones Linux, pero debe ser activado primero.
El funcionamiento de Linux KVM al detalle
Para entender cómo funciona esta máquina virtual, es necesario conocer en primer lugar las virtualización. La virtualización es la ejecución de uno o varios sistemas operativos completos (sistemas invitados) en un mismo dispositivo anfitrión (host). El ordenador anfitrión requiere entonces servicios de hardware adicionales: estos pueden, o bien emularse mediante software, o bien estar ubicados en otros dispositivos físicos y ser controlados mediante un hipervisor, es decir, una capa de gestión y traducción entre el hardware real y el virtual. Según el tipo de virtualización, puede ser necesario traducir los requerimientos para el hardware real o puede bastar con la asignación de las acciones necesarias como, por ejemplo, un cálculo en el procesador.
Existen los siguientes tipos de virtualización:
- Virtualización completa: el hardware es emulado en su totalidad mediante software. De este modo, no es necesaria la interacción con el hardware real, lo cual permite prescindir de los drivers correspondientes. En comparación con el resto, es la variante más lenta.
- Paravirtualización: el sistema invitado interactúa directamente con el hipervisor y necesita para ello drivers especializados.
- Paravirtualización asistida por hardware: la asistencia mediante hardware está integrada ya en el procesador, con lo que aumenta la eficiencia y se reduce el esfuerzo de adaptación que han de hacer los sistemas invitados. Los procesadores modernos de Intel (Intel-VT-x) y AMD (AMD-V) ofrecen esta función, aunque quizá necesite activarse en BIOS/UEFI.
Además, existen dos tipos de hipervisores:
- Tipo 1 (bare metal): el hipervisor se ejecuta directamente en el hardware utilizado, sin estar integrado en un sistema operativo.
- Tipo 2 (hosted): el hipervisor está integrado en el sistema operativo anfitrión y se activa desde él.
Linux KVM pertenece al segundo tipo de supervisores y utiliza la paravirtualización asistida por hardware. Lo que lo hace especial, sin embargo, es que está integrado directamente en el kernel.
¿Qué componentes forman la Kernel-based Virtual Machine?
La KVM en su conjunto está formada por varios elementos:
- (libvirt-daemon-system - libvirt)
- virt-manager - una GUI para libvirt)
- Extensión del kernel: contiene la extensión propiamente dicha, kernel.ko. Se trata de la capa de traducción entre el hardware real y el virtual. Además, incluye los módulos kvm-amd y kvm-intel, adaptados a las características de los procesadores.
- Libvirt: es la interfaz de programación (API) para comunicarse con las máquinas virtuales, que a través de ella pueden ser controladas y gestionadas. Libvirt ofrece, además, herramientas como una línea de comandos denominada virsh y la interfaz gráfica Virtual Machine Manager.
- QEMU: se trata, principalmente, de un programa autónomo para emular ordenadores y gestionar máquinas virtuales. Linux KVM utiliza esta función para emular hardware y mejora así la velocidad mediante paravirtualización. Muchas distribuciones incluyen ambos componentes en un mismo paquete de instalación.
- Kvmtool: una alternativa a QEMU que requiere menos recursos, pero que aún no ha podido desbancar a su contrincante.
- VirtIO drivers: drivers especiales para sistemas invitados que se ajustan a los requerimientos del hipervisor y hacen posible la paravirtualización.
¿Qué es QEMU?
QEMU es un emulador de máquinas y virtualizador genérico open source. Cuando se usa como emulador de máquinas, QEMU puede ejecutar sistemas operativos y programas compilados para una arquitectura (por ejemplo un sistema ARM) en una máquina diferente (por ejemplo una PC), tal como lo demostré en el artículo Emular Raspberry Pi con QEMU y KVM en CentOS 6. Al utilizar traducción dinámica, alcanza muy buena performance.
Cuando se utiliza como virtualizador, QEMU alcanza casi la performance nativa ya que ejecuta el código guest directamente en el CPU host. QEMU soporta virtualización cuando se ejecuta bajo el hipervisor Xen o a través del módulo del kernel KVM en Linux. Cuando se usa con KVM, QEMU puede virtualizar sistemas guest x86, PowerPC y S390, entre otros.
QEMU aprovecha KVM cuando ejecuta una arquitectura guest que coincide con la arquitectura host. Por ejemplo, cuando se utiliza qemu-system-x86 sobre un procesador x86 compatible, se aprovecha la aceleración de KVM (beneficiando tanto al sistema guest como al host), ya que el código guest se ejecuta directamente en el host (sin traducción).
Anteriormente, KVM mantenía su propio fork de QEMU llamado «qemu-kvm» para soportar virtualización por hardware en arquitecturas x86. Actualmente está deprecated ya que QEMU ha incorporado la funcionalidad necesaria (ver http://wiki.qemu.org/KVM).
¿Qué es libvirt?
libvirt (The virtualization API) es un conjunto de herramientas para interactuar con las capacidades de virtualización de las versiones recientes de Linux (y otros sistemas operativos), liberado bajo la licencia «GNU Lesser General Public License».
libvirt soporta un gran conjunto de tecnologías entre las que se destacan:
- KVM/QEMU
- Xen (en Linux y Solaris)
- LXC
- OpenVZ
- El kernel paravirtualizado User Mode Linux
- VirtualBox
- VMware ESX y GSX
- VMware Workstation y Player
- Microsoft Hyper-V
- IBM PowerVM
- El hipervisor Parallels
- Redes virtuales usando bridging, NAT, VEPA y VN-LINK
- Almacenamiento en discos IDE/SCSI/USB, FibreChannel, LVM, iSCSI y NFS
libvirt permite administrar hosts de forma remota utilizando encriptación TLS y certificados x509; autenticación con Kerberos y SASL; control de acceso local mediante PolicyKit; Zeroconf utilizando Avahi; administración de máquinas virtuales, redes y almacenamiento; y una API cliente portable para Linux, Solaris y Windows.
Instalando KVM
Para dar inicio con el proceso, lo primero que debemos hacer es verificar que nuestro procesador soporta las instrucciones necesarias para virtualizar con KVM. Para hacer esto ejecutamos el siguiente comando:
egrep -c '(svm|vmx)' /proc/cpuinfo
Si al ejecutar el anterior comando obtenemos un resultado igual o superior a 1, quiere decir que nuestro CPU es capaz de soportar las instrucciones y tecnología necesaria para virtualizar.
Dado lo anterior procedemos a instalar los paquetes necesarios por medio del siguiente comando:
sudo apt-get install qemu-kvm libvirt-bin bridge-utils virt-manager
Una vez instalados los paquetes podemos verificar que el proceso de instalación ha sido exitoso de la siguiente manera:
sudo kvm-ok
Si el proceso se ha efectuado de manera correcta, deberíamos obtener la siguiente salida:
INFO: /dev/kvm exists KVM acceleration can be used
En lo personal, recomiendo en este punto reiniciar el sistema para asegurar que todos los demonios y subsistemas estén corriendo adecuadamente.
A continuación creamos un usuario con los permisos necesarios para poder instalar y manipular maquinas virtuales en nuestro sistema. Para lograrlo simplemente ejecutamos el siguiente comando:
sudo adduser [nombre de usuario] libvirt
Después debes añade tu usuario a los grupos kvm y libvirtd:
adduser `id -un` kvm
adduser `id -un` libvirtd
Ahora estamos listos para verificar la instalación, para hacerlo simplemente ejecutamos lo siguiente:
virsh -c qemu:///system list
Una excelente y completísima Guía Oficial de RedHat
Alternativas a la KVM de Linux
En el ámbito del software de código abierto y con funciones similares, XEN es la alternativa más importante. Se trata de una herramienta de virtualización que también está estrechamente relacionada con Linux, pero no se integra en el kernel.
Por su parte, en el mercado comercial, el consolidado fabricante VMWare ofrece alternativas de paravirtualización con sus servidores ESXi y de virtualización completa con su workstation. Para los usuarios particulares, además, VMWare Player es gratuito.
Virtualbox es otra alternativa de virtualización completa que puede utilizarse en todos los sistemas operativos habituales.
Microsoft también tiene una herramienta de paravirtualización para Windows: el sistema Hyper-V, que funciona de manera similar a la KVM de Linux. Dispone de un servidor Hyper-V de Windows dedicado y funciona de forma integrada en los sistemas operativos del servidor. Hiper-V también está incluido en las versiones Windows 10 Professional y Enterprise.
Fuente:
https://www.ionos.es/digitalguide/servidores/know-how/que-es-kvm/
0 comentarios :
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.