Herramientas de usuario

Herramientas del sitio


wikitecnica:libvirtd

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
wikitecnica:libvirtd [2023/11/22 22:46]
lorenzo creado
wikitecnica:libvirtd [2024/04/09 19:29] (actual)
lorenzo
Línea 1: Línea 1:
 ===== Libvirtd ===== ===== Libvirtd =====
 +Es una librería que define un conjunto de APIS que interactuan con diferentes hipervisores((XEN, KVM, Virtualbox, VMware ESXi, Hyper-V)) contiene un conjunto de herramientas del interprete de comandos o clientes gráficos que permiten crear, suspender, mover, destruir instancias de un sistema operativo o máquinas virtuales. 
 +=== Definiciones ===
 +  - **Nodo**. Un nodo es un nombre para referirse a una máquina física.  
 +  - ** Hipervisor **. Es una capa de software que permite virtualizar un nodo en un conjunto de máquinas virtuales con una configuración diferente al nodo.
 +  - ** Domain**. Es una instancia de un sistema operativo corriendo en una máquina virtualizada proporcionada por el hipervisor.
 +=== Dominios trascendentes y persistentes ===
 +Libvirtd distingue entre dominios //trascendentes// y //persistentes//. Los dominios trascendentes hasta que la máquina virtual se apaga o el nodo donde corre la máquina virtual es reinicializado. Los dominios persistentes no dependen del estado de la máquina virtual.
 +=== Estados de un dominio ===
 +Los dominios pueden estar en varios estados:
 +  * **Undefined**. Este es un estado base. Libvirtd no sabe acerca de un dominio en este estado ya que el dominio no ha sido creado o definido.
 +  * **Defined/Stopped**. Exclusivamente las máquinas persistentes pueden estar en este estado, las máquinas en este estado están definidas pero no están corriendo. Las máquinas trascendentes dejan de existir cuando se detienen.
 +  * **Running**. El dominio ha sido definido e iniciado. Los dominios en este estado son ejecutados activamente por el hipervisor del nodo.
 +  * **Paused**. La ejecución del dominio ha sido puesta en pausa,el estado del dominio es respaldado de forma temporal.
 +  * **Saved**. Es similar al estado en pausa, pero en este caso el estado del dominio es respaldado en un medio persistente.
  
-Es un sistema cliente-servidor con capacidad de comunicarse con diferentes hipervisores((KVM, XEN, VirtualBox, Hyper-V, VMware ESX)) configura, crea, detiene, verifica estatus destruye máquinas virtualesExisten tres clientes que interactuan con el daemon **libvirtd**, //virt-manager// un cliente gráfico((No se discute en esta wiki)),  //virt-install// //virsh// interfaces del intérprete de comandos. +[[https://wiki.libvirt.org/VM_lifecycle.html|El ciclo de vida de una máquina virtual]] 
 +=== Snapshots === 
 +Un snapshot es la vista de una máquina virtual todas sus aplicaciones en un punto del tiempoLos snapshots permiten a los usuarios guardar el estado de una máquina virtual en un punto del tiempo y permite regresar la máquina virtual a ese estado en cualquier momento, eso es particularmente útil cuando se instalan actualizaciones o nuevas aplicaciones que resultan conflictivas. 
 +=== Instalación === 
 +Antes de iniciar es necesario verificar si el cpu tiene soporte a la virtualización: 
 +  * //CPUS intel: grep -e 'vmx' /proc/cpuinfo// 
 +  //CPUS AMD: grep -e 'svm' /proc/cpuinfo//
  
-=== virt-install ===+==== Instalación de paquetes ==== 
 +  * //dnf install qemu-kvm libvirt virt-install// 
 +  * //dnf install epel-release -y// 
 +  * //dnf install bridge-utils virt-top libguestfs-tools -y// 
 +  * //systemctl start libvirtd// 
 +  * //systemctl enable libvirtd// 
 +==== Generación de una red virtual ==== 
 +Las redes virtuales para las máquinas virtuales son de dos tipos: 
 +  * //NAT: El hipervisor opera un servidor DHCP que asigna IP's a las máquinas virtuales, la red virtual no es accesible desde la LAN// 
 +  * //Bridge: En este caso la red virtual esta incluye un **bridge virtual** asociado a una interfaz física, esto permite el tráfico entre las máquinas virtuales y la LAN//
  
  
  
 +=== Clientes de libvirtd === 
 +Hay tres clientes que interactuan con el daemon **libvirtd**, //virt-manager// un cliente gráfico((No se discute en esta wiki)),  //virt-install// y //virsh// permiten interactuar desde el interprete de comandos con las máquinas virtuales.
 +
 +  * //virt-install//. Mediante este comando es posible construir una máquina virtual en una sesión de bash, en los parámetros se introducen caracteristicas como cpu, memoria, localización a partir del cual se instala el sistema operativo, etcétera.
 +  * //virsh//. El comando virsh permite interactuar con el hipervisor, contiene infinidad de opciones que permiten manejar cada detalle del ambiente de virtualización, en esta sección documentaremos las opciones mas utilizadas.
 +=== Manipulación de imágenes ===
 +El sistema operativo que hospeda máquinas virtuales tiene varias alternativas de almacenaje de las mismas,  puede optar por almacenamiento arbitario como //LVM((Logical Volume Manager))//,  //ZVOL((Volúmen lógico de ZFS))// o archivos binarios que reciben el nombre de imágenes. El imperativo de mover máquinas entre hipervisores hace que la mejor opción de almacenamiento sean las imágenes. 
  
  
  
/home/correoparatodos.mx/www1353/public_html/data/attic/wikitecnica/libvirtd.1700693198.txt.gz · Última modificación: 2023/11/22 22:46 por lorenzo