2017-06-06

Como redimensionar un disco virtual #KVM

Desde hace tiempo estoy trabajando a diario con servidores virtuales, particularmente con esquemas qemu-kvm pese a que en varias oportunidades he tenido la suerte de probar otros hipervisores tales como Hyper-V, VMWare y VirtualBox.

Figura 1: Como redimensionar un disco virtual #KVM

Aún recuerdo cuando comencé a utilizar infraestructura de virtualización, realizar todas las operaciones en servidores virtuales sobre un mismo dispositivo físico es genial, por que uno logra una abstracción al hardware realmente muy interesante sin perder performance y escalando rápidamente.

Sin embargo, esta semana me tocó volver a los libros y realizar una tarea que resultó ser más interesante de lo que pensaba y se basaba en la siguiente ejemplo.

Sobre un servidor virtual ya creado, se estaba quedando ajustado de espacio físico en su disco virutal, por ejemplo un disco virtual de 40GB en un formato qcow2 llamado "servidor-0010.qcow2".

Sea por las razones que fueran, el disco ya estaba casi completo, por lo que el objetivo era aprovechar el potencial de la virtualización, agrandar el disco virtual por lo menos al doble y finalmente hacer que el sistema operativo lo reconozca.

Otra de las opciones interesante de la virtualización, es tener la posibilidad de montar escenario de pruebas, a partir de un respaldo anterior, jugar y romperlo hasta que se cumpla la tarea. Claro que no voy a comentar mucho las veces que "rompí" máquinas virtuales, sino mejor entrar en los detalles de la solución.

Lo primero que les recomiendo es trabajar con el servidor virtual apagado, para evitar corromper el sistema de archivos o algo, por lo cuál lo más probable es que este tipo de tareas lo llevemos adelante en un stop programado con poca carga en ese servidor.

$ virsh shutdown servidor-0010

Con este comando, enviamos una señal para apagar el servidor. Si estamos acostumbrados a utilizar virt-manager como interface gráfico, es un procedimiento similar, incluso más simple.

Figura 2: virt-manager

El siguiente punto, es utilizar la herramienta qemu-img para proporcionar más espacio del disco virtual, y eso lo podemos hacer de la siguiente manera:

$ qemu-img resize /var/lib/libvirt/images/servidor-0010.qcow2 +20GB

Muy simple verdad? Pues ahora falta lo más complicado y se los explico.

Así como está, si volvemos a iniciar el servidor virtual, solo va a reconocer que está en un disco más grande pero ese espacio en disco al no tener partición asignada en este momento no se podría utilizar.

En este punto es necesario acomodar el sistema de particiones conforme a lo necesario y dependiendo de como están distribuidas las particiones.

Quienes tengan los conocimientos y la experiencia para hacerlo utilizando la herramienta fdisk está muy bien, pues allí pueden trabajar y jugar con las particiones. Por mi parte encontré un LiveCD de Gparted donde es posible bootear este Live para acomodar de forma gráfica el sistema de particiones.

Con esto, redimensionamos el espacio de un disco virtual e hicimos que el sistema operativo lo reconozca.

Saludos!

Entradas populares