Explicamos cómo reclamar espacio en un sistema de virtualización VMware ESXi con clúster vCenter, sobre una SAN Dell EMC Unisphere (aunque el proceso es el mismo para cualquier otro sistema de almacenamiento). Mostramos qué es la reclamación de espacio y para qué sirve.
- ¿Qué es la reclamación de espacio en VMware ESXi? ¿Para qué sirve?.
- Requisitos para reclamar espacio en VMware ESXi y SAN.
- Comprobar espacio usado y disponible en SAN Dell EMC Unisphere.
- Comprobar ruta de acceso (location) de cada datastore VMware ESXi para reclamación.
- Reclamar espacio en VMware ESXi con clúster vCenter.
¿Qué es la reclamación de espacio en VMware ESXi? ¿Para qué sirve?
Explicándolo con palabras sencillas, si usamos un entorno de virtualización de VMware ESXi con versión inferior a la 6.5, cuando desde cualquier máquina virtual realizamos alguna tarea de liberación de espacio en un disco duro virtual y, a su vez, en un datastore de VMware, este espacio liberado no se verá reflejado en la SAN (sistema de almacenamiento) y sí en el datastore de VMware. Por lo que es un gran peligro cuando realizamos muchas operaciones de eliminación de ficheros, discos duros virtuales y snapshot, pues puede reflejar un espacio libre en el datastore de VMware que, en realidad, no lo está en la SAN.
Por ejemplo, cuando realizamos un snapshot de una máquina y lo eliminamos, el espacio usado no se liberará realmente en la SAN y sí se mostrará el espacio liberado en el datastore de VMware. Lo mismo ocurre con tareas de máquinas virtuales como eliminar un disco duro virtual de una máquina, el espacio que ocupaba seguirá ocupándolo en la SAN hasta que no se reclame.
El peligro, por lo tanto, es que creamos que tenemos espacio suficiente en los datastores de VMware y, en realidad, la base real donde se almacena la información, en la SAN, no quede espacio. Esto puede provocar el mal funcionamiento de VMware e incluso que se detengan las máquinas virtuales o hagan «cosas raras».
La reclamación de espacio limpiará el almacenamiento SAN (o de cualquier otro sistema) de estos ficheros/bloques que han sido eliminados pero aún no se ha reflejado. Básicamente marcará como libre el espacio de estos ficheros eliminados.
Requisitos para reclamar espacio en VMware ESXi y SAN
En primer lugar decir que, si disponemos de la versión de VMware ESXi 6.5 o superior, no será necesario realizar el proceso que explicaremos a continuación, dado que esta versión realiza la reclamación de espacio de forma automática.
Necesitaremos disponer de un sistema de virtualización en VMware ESXi, con varios hosts conectados a un clúster vCenter. Aunque esto no es requisito indispensable para la reclamación, si disponemos de un único host sin clúster también es necesario hacerla y se hace de la misma forma que explicaremos a continuación.
El clúster vCenter o los host ESXi tendrán como sistema de almacenamiento una SAN, aunque el artículo servirá también para cualquier otro sistema (iSCSI, NAS, etc.).
Deberemos disponer de usuario y contraseña de acceso a la consola de administración de VMware ESXi. Tanto si trabajamos con clúster como con un único host ESXI, necesitaremos acceder a la consola de administración web (VMware vSphere Client) o bien al cliente de escritorio VMware vSphere Client.
Para ejecutar el comando de reclamación de espacio en un host del vCenter necesitaremos tener acceso mediante SSH. En el siguiente enlace explicamos cómo habilitar el acceso SSH a un host ESXi:
Es muy importante y recomendable tener copia de seguridad de todas las máquinas virtuales antes de realizar la operación de reclamación.
También hay que tener en cuenta que esta operación puede colapsar, por momentos, la SAN. La reclamación puede requerir de consumo de CPU y de IOS en la SAN, por lo que puede que las máquinas virtuales que contenga se ralenticen durante algunos momentos del proceso.
El proceso de reclamación de espacio puede tardar varias horas, en función del tamaño de cada datastore, del espacio a reclamar y del tiempo que haga desde que se ejecutó la última tarea de reclamación.
También será conveniente tener acceso a la consola de gestión web de la SAN para ir comprobando la afectación, tanto a nivel de consumo de recursos, como de espacio liberado durante el proceso de reclamación. Aunque esto no es requisito indispensable, solo a efectos de consulta.
Comprobar espacio usado y disponible en SAN Dell EMC Unisphere
Para el caso de una SAN Dell EMC accederemos a la consola de gestión web. En esta SAN, es suficiente con consultar la primera ventana que aparece, del DASHBOARD, en System Capacity, nos mostrará un gráfico como este:
En el gráfico anterior vemos que el espacio libre en la SAN es de 6.4TB, antes de ejecutar el proceso de reclamación.
En VMware los datastores mostrarán un espacio libre y ocupado que no variará tras finalizar el proceso de reclamación:
También podremos ver el espacio asignado a cada datastore en la SAN, desde «STORAGE» – «VMware»:
Comprobar ruta de acceso (location) de cada datastore VMware ESXi para reclamación
Para poder realizar el proceso de reclamación necesitaremos saber el identificador que VMware a asignado a cada datastore para su almacenaje en la SAN. Obtener este nombre (location) para cada datastores al que queramos aplicarle la reclamación es indispensable. Usaremos este location posteriormente para ejecutar el comando de reclamación con cada uno de ellos.
Para obtenerlo accederemos a VMware vSphere Client (sea el cliente web o la versión de escritorio). Seleccionaremos uno de los host (si tenemos vCenter) [1] que tenga acceso a la SAN y los datastores presentados. En nuestro caso el host 192.168.1.100. En la parte derecha pulsaremos en la pestaña «Configuration» [2]. En Hardware pulsaremos en «Storage» [3]. Nos aparecerán todos los datastores, seleccionaremos el que queramos aplicarle el proceso de reclamación [4], en nuestro caso «datastore1» y anotaremos el valor de «Location» a partir de /vmfs/volumes/ [5], dicho valor, en nuestro caso: 4a93de21-abaffe31-a4c7-123a1e0a52fb, será el que necesitemos posteriormente para ejecutar el comando de reclamación:
Repetiremos el proceso anterior para anotar todos los locations de todos los datastores para los que queramos aplicar la reclamación. El proceso se hará ejecutando un comando por cada datastore, como explicamos a continuación.
Reclamar espacio en VMware ESXi con clúster vCenter
Una vez que tenemos anotados los locations de cada datastore, como hemos explicado anteriormente, nos conectaremos por SSH a uno de los host VMware ESXi que tenga acceso a ellos. Podemos conectarnos, por ejemplo, con PuTTY. Será suficiente con introducir la IP, en puerto dejar el 22 y pulsar en «Open»:
Introduciremos usuario y contraseña del host VMware ESXi y accederemos a la consola de comandos. Desde aquí solo tendremos que ejecutar el siguiente comando para iniciar la reclamación de espacio:
1 |
esxcli storage vmfs unmap -u 4a93de21-abaffe31-a4c7-123a1e0a52fb |
Lógicamente sustituiremos el location de ejemplo 4a93de21-abaffe31-a4c7-123a1e0a52fb por el que tenga asignado cada uno de los datastores.
Dejaremos que concluya el proceso, que no mostrará ningún tipo de mensaje ni de estado. Cuando acabe el cursor volverá a la línea de comandos. Una vez que acabe volveremos a lanzar el comando para el siguiente datastore y repetiremos este proceso para todos los datastores. No es conveniente ejecutar varios procesos de reclamación a la vez, solo de uno en uno, para no colapsar la SAN.
Podremos consultar, desde la SAN, el estado de uso de CPU, IOPS, BANDWIDTH. Veremos que a partir del momento en que se lanza el proceso de reclamación subirá el consumo de estos monitores:
Una vez concluido el proceso, podremos consultar desde la SAN el resultado. En nuestro caso se han liberado 2.7 TB, pasando de los 6.4 TB libres antes de la reclamación a los 9.1 TB tras la reclamación: