Skip to content

Instantly share code, notes, and snippets.

@Frankz
Last active May 7, 2019 12:57
Show Gist options
  • Save Frankz/06528652f17b9d5a3b3e8394d781c4b6 to your computer and use it in GitHub Desktop.
Save Frankz/06528652f17b9d5a3b3e8394d781c4b6 to your computer and use it in GitHub Desktop.

NOTA: en un momento un ejempo me pedia ejecutar algo que me pedia instarlar "libosinfo-bin" > https://libosinfo.org/

KVM

Lo primero que hay que entender es que para utilizar KVM tambien es necesario utilizar otras herramientas, las mismas son QEMU y Libvirt.

KVM (Kernel Virtual Machine), es un Hypervisor para Linux, gracias a ciertas funciones del kernel de Linux (y a las tecnologias de virtualizacion Intel VT-x y AMD svm) es posible virtualizar cualquier distro de Linux dentro de un Servidor Linux consumiendo muy pocos recursos.

Junto con KVMse suele instalar QEMU (Quick Emulator), que es un emulador y tambien virtualizador, que puede usarse en conjunto con KVM para administrar y crear VMs (Virtual Machines, KVM tambien las define como "Dominions"),se suele utilizar QEMU con KVM en principio porque suele ser mas sencillo de aprender a usar gracias a la interfaz grafica de QEMU, por otra parte, QEMU solo puede funcionar, pero siendo mucho menos eficiente al momento de consumir recursos (todo esto seria algo para comparar luego con otras alternativas de Emulacion y Virtualizacion como "WINE", "VirtualBox", "XEN", "Hyper-V", "VMWare" y "bhyve"... no se cual/es estoy olvidando...)

Ademas existe Libvirt ("Lib"="Library","virt"="virtualization"), una API de virtualizacion, que tiene, entre otras cosas, una libreria para desarrollar, un Daemon (Servicio) llamado "livbirtd" tambien para trabajar con virtualizacion, y una aplicacion de linea de comandos llamada "virsh"

NOTA: Es importante recordar que KVM se utiliza para Virtualizacion, y que no es lo mismo que "Containerizacion", ejemplos de herramientas de "Containerizacion" son Docker, LXC, CRI-O y Containerd, por nombrar alternativas

Instalar KVM/QEMU y Libvirt

Verificar si nuestro equipo soporta virtualizacion

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

NOTA: Si el resultado es mayor a 0 significa que podemos virtualizar

Instalamos cpu-checker y lo ejecutamos como kvm-ok para verificar que podemos instalar kvm

$ sudo apt install cpu-checker
$ kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

Instalamos KVM, QEMU y Libvirt junto con algunas dependencias (bridge-utils no se de donde sale)

 sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager

Crear VMs

Aca deberia agregar como crear VMs(dominios) desde la terminal... hice un ejemplo usando qemu... pero lo agrego despues... Ademas tmb hice una manganeta en /etc/network/interfaces para darle internet por nat... no se si sirvio o que onda, pero la VMs que hice tenia internet... despues verifico

Listado de VMs

$ virsh list --all

Apagar VM

$ virsh shutdown <nombre-de-la-VM>

NOTA: Para cuando haga un apartado exclusivo de QEMU, aca muestra como virtualizar Windows 7 en QEMU https://cromwell-intl.com/open-source/openbsd-qemu-windows-howto.html

Fuentes:

https://www.qnap.com/es-es/how-to/faq/article/c%C3%B3mo-habilitar-intel-vt-x-y-amd-svm/

https://ubunlog.com/kvm-acelera-android-studio/

https://www.linuxtechi.com/install-configure-kvm-ubuntu-18-04-server/

https://linuxconfig.org/install-and-set-up-kvm-on-ubuntu-18-04-bionic-beaver-linux

https://docs.fedoraproject.org/en-US/Fedora/18/html/Virtualization_Administration_Guide/ch15s06.html

https://www.thegeekyway.com/kvm-vs-qemu-vs-libvirt/

https://www.qemu.org/

https://www.linux-kvm.org/page/Main_Page

https://libvirt.org/

https://linuxconfig.org/how-to-create-and-manage-kvm-virtual-machines-from-cli

https://wire19.com/comparison-top-server-virtualization-software/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment