Mostrando entradas con la etiqueta KVM. Mostrar todas las entradas
Mostrando entradas con la etiqueta KVM. Mostrar todas las entradas

sábado, 30 de junio de 2012

Linux/KVM: Growing filesystem on a LVM based virtual disk.

Cuando se utiliza virtualización, las capacidades de flexibilización del storage son enormes, es por ello existen diferentes formas de manejar el almacenamiento utilizando KVM como hypervisor.
Una de ellas es utilizar filedisks, con los cuales, cada uno de ellos emula un disco físico en la VM y los filesystems son armados ahí mismo.
Otra forma es mediante LVM dedicando uno o varios LV a uso exclusivo de la VM.
Esta última forma, optimiza el I/O debido a que se evita pasar por una capa intermedia de abstracción: "un archivo", a fin de escribir los bloques de datos a disco. De esta manera las operaciones de I/O son manejadas directamente por el Device Mapper (LVM), y se evita caer en capas de abstracción intermediarias.
Este caso era sencillo, un servidor de correos en CentOS 5.6, bajo "Zimbra", el cual tiene un disco basado en un LV (vdb1), que monta en /opt, directorio utilizado por Zimbra para mantener todos sus datos, el cual se había quedado sin espacio.

sábado, 21 de abril de 2012

CentOS / Red Hat: Making a persistent KVM network bridge

Hoy en día cuando la virtualización se a convertido en una tecnología de facto en la mayoría de los datacenter existen numerosas soluciones compitiendo en el mercado. En mi caso si me dan a elegir entre las distintas soluciones de pago para Linux, elijo una gratuita (y libre), KVM.
KVM (Kernel-based Virtual Machine), es una solución que nos provee full virtualización, haciendo uso de qemu como hypervisor, la cual se encuentra integrada dentro del propio kernel de Linux de manera modular, mediante el módulo del kernel kvm.ko. Esto nos provee cierta compatibilidad y performance que la ponen prácticamente a la par de otras soluciones de virtualización.
Una de las tareas comunes al crear una nueva maquina virtual, es integrar a esta con la red existente, ya que la virtualización nos provee la posibilidad de hostear múltiples servidores en un solo equipo físico.

La configuración en RHEL o CentOS es muy sencilla, para ello debemos crear un bridge, quien será el responsable de interactuar con la red física. Para hacer esto, al momento de booteo y cuando los scripts SYSV de RC configuran la red (mediante el servicio network), el bridge es configurado utilizando brctl, y la configuración leída de aquellos archivos de interfaces los cuales son definidos como bridge.
En nuestro ejemplo tendremos dos Una NIC física (eth0), en la cual crearemos el bridge y lo configuraremos acorde a los paramétros de networking que necesitemos asignarle al servidor.

domingo, 1 de enero de 2012

OpenBSD: Enabling serial console for KVM/libvirt utilization

Tengo un OpenBSD 5.0 con el que estoy realizando una serie de pruebas en una máquina virtual sobre KVM en CentOS 6. KVM en conjunto con libvirt, provee una serie de herramientas para administrar el host virtualizado, una de ella es virt-manager, una herramienta escrita utilizando GTK que obviamente necesita tener X ejecutándose. La otra es virsh, una CLI para administración de hosts virtuales.

Virsh tiene la interesante opción de poder attachear una consola virtual, la cual previamente debe estar configurada en el sistema operativo guest. Esto es importante para poder realizar con la VM todo el trabajo que no podemos hacer de manera remota utilizando SSH y así tener que evitar abrir virt-manager cada vez que tengamos que agregar algún parámetro al booteo, por ejemplo.

Cabe destacar que esta configuración no solo aplica a hosts virtuales, sino también a hosts físicos que tienen la posibilidad o se conectan mediante consola serie. Los pasos para realizar esto son bastante sencillos:

lunes, 12 de septiembre de 2011

Linux: Connect to a remote domain0 using virsh and SSH



Es bastante común tener VM's hosteadas en un host remoto, al cual podemos acceder mediante Internet, o conectándonos a la LAN local. Sin importar cual fuera el caso, en Linux principalmente existen dos plataformas medianamente "nativas" de virtualización (ambas proveen full virtualización), ellas son Xen, que no es otra cosa que un parche al kernel de Linux, y KVM, que esta integrada como módulo dentro del mismo y para conectarnos, disponemos siempre de un protocolo excelente como es SSH.
Existe una interfaz de administración por linea de comandos denominada virsh, a la cual le indicamos el hypervisor al que queremos conectar y el protocolo a utilizar.