Web Client (05): Storage DRS – Cluster DRS

Un Cluster Datastores es una colección de datastores que pueden trabajar como si fuera uno. Cuando se crea un Datastore Cluster se activa el Storage DRS.

Mueve los ficheros (que no ejecución) de la VM dentro de los datastores del Cluster

Funciones:

– Coloca inicialmente las VM basado en la capacidad del Datastore y opcionalmente I/O Latency

– Modo manual o automático

– Usa reglas de afinidad anti-afinidad para controlar la colocación de los discos: puede poner los discos de sistema (c:\) en un Datastore, y los vmdk de datos en otro Datastore

Para crear un Datastore Cluster


Desde el Web Client: seleccionamos el vcenter o datacenter o cluster > Related Objects > Datastore Cluster


Habilitamos Storage DRS para que dinámicamente mueva la VM basándose en

  • la capacidad del Datastore
  • la latencia de I/O, y colocación inicial de las VM

Podemos seleccionar una opción diferente a la de por defecto de cluster (manual, automatico) para las opciones aquí visibles


Habilitamos

  • Enable i/0 metric for DRS recomendations“: Si no seleccionamos “Enable I/O metric for DRS” solo moverá archivos de máquinas virtuales basándose en la capacidad del Datastore, pero no en la latencia I/O.
  • Space Threshold: En el umbral, ponemos el umbral de utilización o I/O que se tiene que alcanzar para hacer SDRS. Al 80 % de utilización del Datastore migran las máquinas virtuales.

    La otra opción es especificar un tamaño mínimo en los datastores del cluster

  • I/O latency threshold: Obviamente para controlar el umbral del 15 % se necesita SIOC, el cual lo configurara automáticamente en los datastores miembros del Cluster cuando se termine de crear el Cluster
  • Advanced options:
    • Keep VMDKs together by default: mantiene todos los VMDK de una máquina virtual juntas en el mismo Datastore del cluster, no las disemina por distinitos datastores
    • No recomendations until utilization difference…: No migra si la diferencia de espacio entre el Datastore de origen al destino es menor del 5 %. Por ejemplo, un Datastore con el 80% y otro Datastore con el 83% no migra porque no hay una diferencia de más de 5%


Seleccionamos el Cluster (de nodos), el cual ve determinados datastores que veremos a continuación


Seleccionamos los datastores que ven todos los Host, y queremos que formen un cluster DRS


Finish. Se crea el cluster


Ya nos aparece el Cluster. Vemos que el espacio es 374 GB (125*3 datastores) y como está configurado


Las recomendaciones (ya que modo manual) las tenemos en la pestaña Monitor > Storage DRS


Para poder editar el “Datasore Cluster”, en manage > Settings > Edit


También podemos ver cómo nos ha habilitado SIOC (Storage IO Control) en los datastores del cluster, para el I/O threshold


 

NOTA: Luego a la hora de crear una VM podemos elegir guardar la VM en el Datastore Cluster, el cual tiene 3 datastores asignados, y entonces según la carga de almacenamiento e I/O pondrá la VM en uno u otro Datastore. Lo mismo haría si ya corriendo la VM se llega al umbral


Por ejemplo, si creamos una VM, casi al finalizar el proceso de creación de la máquina virtual, está la opción de “more recommendations“, la cual nos muestra la recomendación que hace SDRS (ya que lo tenemos manual)


 

Añadir datastores al Cluster Datstore

Para añadir un datastore al Cluster, seleccionamos el cluster > Actions > Move Datastores Into


Seleccionaremos los datastores a añadir al cluster


Poner en mantenimiento un nodo del cluster / Sacar un nodo del cluster

Seleccionamos el “Datastore Cluster” > seleccionamos el datastore > Actions> > podemos ponerlo en mantenimiento o Move out del cluster.


Schedule Storage DRS

Podemos crear una tarea para por ejemplo en la hora de un backup cambien el umbral de I/O Latency, ya que un backup genera muchas IO, de esta forma. Le desactivaría el checklist de latencia

En La setting del Cluster Datastore


Deshabilitamos el umbral I/O


Le damos un nombre al Schedule y que se ejecute toos los días a las 2:00 AM. Luego habrá que crear otro para que se active por la mañana


Ya nos aparece planificado. Se ejecutara todos los días a las 2:00 AM o pdemos ejecutarlo ahora con el play


 

VM Overrides

Cuando se configura el cluster, por defecto está puesto que los VMDK de las VM estén en el mismo datastores del cluster


Podemos configurar máquinas virtuales que tengan otra configuración. Dentro de manage > settings > VM Override > Add. Las máquinas virtuales deben estar almacenadas en el cluster DRS


Añadimos las VM a modificar. Deben de estar alojadas en el Datastore Cluster


Cambio a automatización y si mantengo junto los VMDK


Storage DRS Rules (Reglas Afinidad / Antiafinidad)

Rules: Reglas de afinidad y anti-afinidad de los VM y VMDK. Trabaja poniendo de esta forma:

• VM en separados Datastore (todos los archivos)

• Poner los VMDK de una VM (que tenga por ejemplo 2 discos) en datastores distintos. De esta forma nos protegemos de un fallo de un Datastore


Por defecto todos los VMDK de una maquia virtual son colocados en el mismo Datastore.

Funciona similar a las reglas anti-afinidad de vSphere DRS, donde los DC corrían en host ESXi distintos. Si se caía un host ESX, y con él un DNS, teníamos siempre uno funcionando en otro host, y no habría ninguna pérdida de servicio que nos da vSphere HA, ya que reiniciaría la máquina.

01.- Creamos una regla


02.- Seleccionamos la afinidad a elegir

  • VM Anti-affinity: Tenemos 2 Máquinas virtuales (tes02 y test03).
    Mantiene los ficheros
    (config + vmdk) de test02 juntos en el mismo datastores del cluster, por ejemplo DTS01 y los (config+vmdk) de Test03 los pondrá en otro datastore del cluster

    Ejemplo: Podemos decir por ejemplo que dos servidores DNS estén en distintos datastores (ficheros + vmdk), ya que, si se daña un Datastore, tenemos otro DNS en otro datastores (VM anti-affinity). Otra cosa es la ejecución de la maquina


 

  • VMDK anti-affinity: Pone los VMDK de una máquina virtual en Datastore separados. Por ejemplo, un Guest con discos en mirror. Pondríamos el VMDK en datastores separados por si se cae un datastore.

    Ejemplo: En caso de una VM con un disco de sistema y otro de datos, podemos elegir que el disco del sistema esté en un Datastore y el de datos en otro Datastore (vmdk anti-affinity)

    Seleccionamos una Máquina virtual (al menos tiene que tener 2 discos), seleccionamos sus discoc y ya nos los pondrá separados


Storage DRS y Storage I/O control

SDRS y SIOC son soluciones complementarias para Datastores. Ambas trabajan con IOPS y deben ser usadas juntas

SIOC se activa por defecto en “Datastore Cluster” con SDRS activado (Turn On Storage DRS), Hay una gran diferencia entre ambas

Storage DRS: trabaja para evitar cuellos de botella I/O (moviendo VM de un datastore a otro) cuando la latencia del Datastore llegue a un umbral “15 ms” o a un a utilización del 80% del datastore”). No usa latencia en tiempo real, sino que evalúa la carga I/O cada 8 horas y presenta recomendaciones en función de los resultados

    Hay que ajustarlo basándose en el tipo de disco del datastore

  • SSD Disks:  10-15 milliseconds
  • Fibre Channel and SAS Disks:  20-40 milliseconds
  • SATA Disks:  30-50 milliseconds

 

Storage I/O Control: Trabaja cuan do ya se han producido los cuellos de botella, entonces da prioridad a los datastores mediante shares y limits IOPS en las propiedades de las VM, a nivel de disco)


Métricas:

SDRS: no utiliza tiempo real para el balanceo de carga, sino que se basa en los históricos IOPS (cada 8 horas). Se ejecuta infrecuentemente

SIOC: trabaja en tiempo real. Continuamente cheque la latencia I/O monitorizando las métricas I/O de los Datastores, y SRDS usa esta información para determinar si una VM debe ser movida o no

Be the first to comment

Leave a Reply