Redimensionar volumenes Data y Root de CloudStack en XenServer

A el día de hoy CloudStack en su ultima versión estable (4.2.1) no cuenta con una caracteristica importante que es el redimensionamiento de volumenes Root que es el volumen donde se instala por primera vez el sistema operativo de las instancias.

Por ejemplo si creamos una instancia con ciertos recursos de hardware y almacenamiento de 20GB sobre la cual instalamos bien sea Windows o Linux, independiente de el esquema de particionamiento. CloudStack NO me permite por ahora (característica disponible en la siguiente versión 4.3) redimensionar este volumen que se ha adquirido desde un principio de 20GB en este ejemplo.

CloudStack define define un volumen como una unidad de almacenamiento disponible para las maquinas virtuales. Define 2 tipos de volumenes, los root disk y los data disk; Los root contienen la raiz “/” del filesystem y usualmente el de booteo; Data Disk es utilizado para como almacenamiento adicional bien sea por ejemplo /home o el disco D:/ de Windows.

Para redimensaionar Volumenes DATA debemos antes que nada haber instalado las tools de XenServer sobre la instancia y luego ingresar a la pestaña Storage, seleccionamos el volumen DATA a redimensionar y seleccionamos la opción Resize Volume, seleccionamos el nuevo tamaño y listo.

resize_DataPara redimensionar volúmenes Root es mas complejo debido a que como mencioné anteriormente CloudStack no cuenta con esta característica.  Primero debemos parar la instancia, una vez en estado stopped, ingresamos a nuestro XenServer y seleccionamos nuestro almacenamiento primario para posterior seleccionar las propiedades de el volumen a redimensionar. Una vez en las propiedades vamos a la pestaña Size and Location y cambiamos el tamaño de la partición, en este ejemplo mi partición era de 20GB la he aumentado a 30GB de una instancia Windows Server

Resize Disk

Ahora debemos decirle a nuestra instancia, en este caso al Windows que extienda el volumen root, osea el C:/.  Lo hacemos desde el administrador de Discos que nos debe mostrar la partición de 20GB + 10GB adicionales que hemos adicionado listos para extender. damos click derecho a C y damos extend, seleccionamos la cantidad de bytes a extender y aceptamos

ExtendiendoAhora tenemos un problema y es que en CloudStack el volumen se sigue reflejando como un volumen de 20GB y no de 30GB.

Debemos editar la tabla de volumenes “volumes” de CloudStack y poner el nuevo valor; Nos conectamos a mysql a la tabla cloud o la que hayamos definido para nuestro management server:

# mysql -u root -p

mysql> use cloud;

Hacemos un select para identificar el ID de el volumen de mi instancia que en mi caso es el ROOT-5

select * from volumes\G

Identificado el id, hacemos el update del campo size a el nuevo valor, este debe ir en bytes:

mysql> update volumes set size=32212254720 where id=6;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

Paramos e iniciamos la instancia para que lea los nuevos campos de ls base de datos y listo. Verificamos nuevamente en la pestaña storage de CloudStack el volumen y debe estar mostrando el nuevo valor 30 GB

final_extend_root_volumen

Para mayor info leer documentación oficial

Compartir en:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *