GNU/Linux >> Tutoriales Linux >  >> Linux

6 tecnologías de virtualización de código abierto para conocer en 2020

Virtualization Tools, mejor conocido como Virt Tools, es una colección de seis herramientas de virtualización de código abierto creadas por varios colaboradores para hacer del mundo de la virtualización un lugar mejor.

Algunas de las herramientas, como KVM y QEMU, pueden ser familiares para los entusiastas de Linux, pero herramientas como libvirt y libguestfs probablemente lo sean menos.

En caso de que prefieras aprender viendo videos que leyendo, creé una versión en video de este artículo, a la que puedes acceder en YouTube.

Antes de recorrer las herramientas, es una buena idea conocer alguna terminología de virtualización esencial. Derivé muchas de estas definiciones de Wikipedia, con páginas vinculadas en la tabla.

Esta tabla resume cada herramienta Virt, incluida la información de la licencia y los enlaces al sitio web y el código fuente de cada herramienta. Gran parte de esta información proviene del sitio web de Virt Tools y del sitio de cada herramienta.

Plazo Definición
Virtualización En computación, la virtualización se refiere al acto de crear una versión virtual (en lugar de física) de algo, incluidas plataformas de hardware de computadora virtual, dispositivos de almacenamiento y recursos de red informática.
Emulador Un emulador es un hardware o software que permite que un sistema informático (llamado host) se comporte como otro sistema informático (llamado invitado).
Máquina virtual (VM) También conocidas como "máquinas invitadas", son emulaciones de computadoras de hardware físico reales.
Anfitriones En la virtualización de hardware, una computadora en la que un hipervisor ejecuta una o más máquinas virtuales.
Hipervisor Este es software, firmware o hardware de computadora que crea y ejecuta máquinas virtuales.
Núcleo Este es un programa de computadora en el núcleo del sistema operativo de una computadora con control completo sobre todo en el sistema.
Demonio Este es un programa de computadora que se ejecuta como un proceso en segundo plano, en lugar de estar bajo el control directo de un usuario interactivo.

Administrador virtual basado en kernel (KVM)

KVM es una solución de virtualización completa para Linux en hardware que contiene extensiones de virtualización. KVM proporciona la virtualización de hardware para una amplia variedad de sistemas operativos invitados, incluidos Linux, Windows, macOS, ReactOS y Haiku. Con KVM, puede ejecutar varias máquinas virtuales en imágenes de Linux o Windows sin modificar. Cada VM tiene hardware virtualizado privado:una tarjeta de red, un disco, un adaptador de gráficos, etc.

La mayoría de las veces, no interactuará directamente con KVM. En su lugar, debe usar QEMU, virt-manager u otra herramienta de administración de virtualización para aprovechar KVM.

Puede encontrar la documentación completa en el sitio web de KVM, así como acceder a su código fuente.

Emulador rápido (QEMU)

QEMU es un virtualizador y emulador de máquinas genérico y de código abierto. Cuando se usa como emulador, QEMU puede ejecutar sistemas operativos y programas hechos para una máquina (por ejemplo, una placa ARM) en una máquina diferente (por ejemplo, su propia PC x86_64). Cuando se utiliza como virtualizador, QEMU logra un rendimiento casi nativo mediante la ejecución del código invitado directamente en la CPU del host mediante KVM.

QEMU es compatible con múltiples sistemas operativos y su proceso de instalación es tan fácil como ejecutar algunos comandos simples; aquí puedes ver cómo instalar QEMU en macOS con Homebrew.

Después de la instalación, aprenda a usarlo leyendo su documentación, y también puede acceder a su código fuente.

Libvirt

Libvirt es una biblioteca y un demonio que proporciona una API estable de código abierto para administrar hosts de virtualización. Se dirige a múltiples hipervisores, incluidos QEMU, KVM, LXC, Xen, OpenVZ, VMWare ESX, VirtualBox y más.

Otro aspecto interesante de libvirt es que KubeVirt, un proyecto de código abierto para crear y administrar máquinas virtuales dentro de la plataforma Kubernetes, utiliza en gran medida Libvirt. (Cubriré KubeVirt en un artículo futuro). Libvirt es un proyecto interesante para explorar, y puede encontrar una gran cantidad de información en su sitio web oficial, así como descargar su código fuente.

Libguestfs

Libguestfs es un conjunto de herramientas para acceder y modificar imágenes de disco de VM. Puede usarlo para ver y editar archivos dentro de los invitados; cambios de secuencias de comandos en las máquinas virtuales; monitoreo de estadísticas de disco usado/libre; crear invitados, máquinas físicas a virtuales (P2V) o virtuales a virtuales (V2V); realizar copias de seguridad; clonación de máquinas virtuales; creación de máquinas virtuales; formateo de discos; cambiar el tamaño de los discos; y mucho más. Lo he estado usando recientemente mientras trabajaba en un proyecto basado en KubeVirt llamado OpenShift Virtualization, sobre el que puede obtener más información en mi video tutorial.

El sitio web oficial de Libguestfs contiene una extensa documentación sobre cómo usar cada comando, y también puede descargar su código fuente en GitHub.

Virt-manager

Virt-manager es una interfaz de usuario de escritorio para administrar máquinas virtuales a través de libvirt. Se dirige principalmente a máquinas virtuales KVM, pero también administra Xen y LXC. También incluye la herramienta de aprovisionamiento de línea de comandos virt-install. Piense en virt-manager como una herramienta de administración fácil de usar para sus máquinas virtuales. Por ejemplo, puede usar virt-manager para ejecutar un entorno de Microsoft Windows en una estación de trabajo Linux o viceversa.

El código fuente de Virt-manager está disponible en GitHub y la documentación está en su sitio web. En este momento, virt-manager solo está disponible para plataformas Linux.

Libosinfo

Más recursos de Linux

  • Hoja de trucos de los comandos de Linux
  • Hoja de trucos de comandos avanzados de Linux
  • Curso en línea gratuito:Descripción general técnica de RHEL
  • Hoja de trucos de red de Linux
  • Hoja de trucos de SELinux
  • Hoja de trucos de los comandos comunes de Linux
  • ¿Qué son los contenedores de Linux?
  • Nuestros últimos artículos sobre Linux

Libosinfo proporciona una base de datos de información sobre las versiones del sistema operativo para ayudar a configurar el hardware al implementar máquinas virtuales. Incluye una biblioteca C para consultar información en la base de datos, a la que también se puede acceder desde cualquier lenguaje compatible con la introspección de GObject. Como puede suponer, libosinfo es más un bloque de construcción para habilitar la funcionalidad de un sistema operativo, pero bastante importante.

El código fuente de Libosinfo está disponible en GitLab y su documentación se puede encontrar en su sitio web.

Conclusión

Virt-tools es un conjunto de seis potentes herramientas que facilitan la virtualización y permiten importantes funciones de virtualización. Todos ellos son proyectos de código abierto, así que te animo a explorar más y tal vez incluso contribuir a ellos.

¿Qué piensas? Siéntase libre de dejar un comentario para compartir sus pensamientos o hacer preguntas.


Linux
  1. 26 aplicaciones creativas de código abierto para probar en 2022

  2. Lectura sobre código abierto en francés

  3. 3 alternativas de código abierto a Microsoft Publisher

  4. ¿Qué es Cloud Ready? ¿Es una alternativa viable de código abierto para Chrome OS?

  5. Gaphor:herramienta de modelado gráfico de código abierto

Crear un SDN en Linux con código abierto

5 juegos de rompecabezas de código abierto para Linux

Los 6 principales clientes de correo electrónico de escritorio de código abierto

Los 6 mejores shells de código abierto para Linux

Código abierto vs. fuente cerrada

WAZUH La plataforma de seguridad de código abierto

    Nombre Qué es Licencia Código fuente
    Máquina virtual basada en kernel (KVM) Un módulo de virtualización en el kernel de Linux que permite que el kernel funcione como un hipervisor GNU GPL o LGPL Código fuente
    Emulador rápido (QEMU) Emulador y virtualizador de máquina genérico y de código abierto GPLv2 Código fuente
    Libvirt Una biblioteca y un demonio que proporciona una API estable y de código abierto para administrar hosts de virtualización GNU Código fuente
    Libguestfs Un conjunto de herramientas para acceder y modificar imágenes de disco de VM LGPL, GPL Código fuente
    Administrador virtual Una interfaz de usuario de escritorio para administrar máquinas virtuales a través de libvirt GPLv2+ Código fuente
    Libosinfo Proporciona una base de datos de información sobre las versiones del sistema operativo para ayudar a configurar el hardware de manera óptima al implementar máquinas virtuales LGPLv2+ Código fuente