Escalado automático

El escalado automático está diseñado para responder a las tendencias a corto y medio plazo en el uso de recursos de su despliegue de IBM Cloud® Databases for Elasticsearch. Cuando está habilitado, se comprueba el despliegue en el intervalo que especifique. Si se está quedando sin recursos, se añaden más recursos al despliegue. Para vigilar sus recursos, utilice la Integración de IBM Cloud® Monitoring, que proporciona métricas para la memoria, el espacio de disco y la utilización de E/S de disco.

Puede configurar el despliegue para escalar automáticamente el disco, la RAM, o ambos.

Parámetros generales de autoescalado:

  • Cuándo escalar, según el uso a lo largo del tiempo.
  • En qué medida se escala, como porcentaje de los recursos por miembro.
  • Con qué frecuencia se escala, medida en segundos, en minutos o en horas.
  • Un límite estricto sobre el escalado, a partir del cual el despliegue detiene el escalado.

Memoria - El autoescalado de memoria se basa en la utilización de E/S de disco para proporcionar más memoria para el almacenamiento en caché de disco a medida que aumenta la carga de lectura/escritura. La ventaja es que la memoria adicional puede aliviar la presión en la E/S de disco al admitir más almacenamiento en caché. Las configuraciones de escalado automático basadas en el uso de memoria actualmente no están disponibles.

Disco: el escalado automático de disco puede escalar cuando el uso de disco alcance un umbral determinado, la utilización de E/S de disco alcance un umbral determinado, o ambos. (El "o" en la interfaz de usuario funciona como inclusive or, |, v.) La cantidad de IOPS disponible para el despliegue aumenta con el tamaño de disco en una proporción de 10 IOPS para cada GB.

El autoescalado de CPU y RAM no es compatible con Isolated Compute. El autoescalado de discos está disponible. Si ha aprovisionado una instancia aislada o ha cambiado desde un despliegue con autoescalado, supervise sus recursos mediante la integraciónIBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a su instancia, escale manualmente su despliegue.

Los números de recursos hacen referencia a cada nodo de base de datos en un despliegue. Por ejemplo, hay tres miembros en un clúster de Elasticsearch y si el despliegue se escala con 10 GB de disco y 1 GB de RAM, significa que cada miembro obtiene 10 GB de disco y 1 GB de RAM. El total de recursos añadidos a su despliegue es de 30 GB de disco y 3 GB de RAM.

Consideraciones sobre el escalado automático

  • El escalado del despliegue puede hacer que se reinicie Elasticsearch. Si el despliegue escalado debe trasladarse a un host con más capacidad, las bases de datos se reinician como parte de la acción.

  • El disco no se puede desescalar.

  • Algunas operaciones de escalado pueden tardar más en ejecutarse que otras. Un aumento drástico de la RAM o el disco puede llevar más tiempo que aumentos más pequeños para permitir el suministro de más recursos de hardware subyacentes.

  • Las operaciones de escalado automático se registran en IBM Cloud® Activity Tracker Event Routing.

  • Límites:

    • No se puede establecer nada para que se escale con un intervalo inferior a 60 segundos.
    • Disco máximo = 4 TB por miembro.
    • RAM máxima = 112 GB por miembro.
  • El escalado automático no desescala los despliegues donde se ha reducido el uso de disco o de memoria. Se mantendrá la RAM suministrada al despliegue para sus necesidades futuras o hasta que desescale el despliegue manualmente. El disco suministrado al despliegue se mantiene porque el disco no se puede desescalar.

  • Si necesita añadir recursos al despliegue de vez en cuando o raramente, puede escalar manualmente el despliegue.

  • Elasticsearch está diseñado para equilibrar la carga de trabajo dentro del clúster y el escalado horizontal puede suponer ventajas. Si le preocupa el rendimiento, consulte Adición de nodos Elasticsearch.

Configuración del escalado automático en la IU

El panel Escalado automático está en la pestaña Recursos de la página Gestionar del despliegue. Para habilitar el escalado, especifique los parámetros. A continuación, marque los recuadros para habilitar los parámetros que se utilizan. Asegúrese de pulsar Guardar cambios para que se guarde la configuración y los cambios entren en vigor.

Para inhabilitar el escalado automático, desmarque los recuadros de los parámetros que ya no desee utilizar. Si deselecciona todos los recuadros, se inhabilitará el escalado automático. Pulse Guardar cambios para guardar la configuración.

Configuración del escalado automático en la CLI

Puede obtener los parámetros del escalado automático para el despliegue a través de la CLI utilizando el mandato cdb deployment-autoscaling.

ibmcloud cdb deployment-autoscaling <deployment name or CRN> member

Para habilitar y establecer los parámetros del escalado automático a través de la CLI, utilice un archivo o un objeto JSON con el mandato cdb deployment-autoscaling-set.

ibmcloud cdb deployment-autoscaling-set <deployment name or CRN> member '{"autoscaling": { "memory": {"scalers": {"io_utilization": {"enabled": true, "over_period": "5m","above_percent": 90}},"rate": {"increase_percent": 10.0, "period_seconds": 300,"limit_mb_per_member": 125952,"units": "mb"}}}}'

El autoescalado de CPU y RAM no es compatible con Isolated Compute. El autoescalado de discos está disponible. Si ha aprovisionado una instancia aislada o ha cambiado desde un despliegue con autoescalado, supervise sus recursos mediante la integraciónIBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a su instancia, escale manualmente su despliegue.

Configuración del escalado automático en la API

Puede obtener los parámetros del escalado automático para el despliegue a través de la API enviando una solicitud GET al punto final /deployments/{id}/groups/{group_id}/autoscaling.

curl -X GET -H "Authorization: Bearer $APIKEY" 'https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/groups/member/autoscaling'

Para habilitar y establecer los parámetros de escalado automático para el despliegue mediante la API, envíe una solicitud POST al punto final. La habilitación del escalado automático se lleva a cabo estableciendo scalers (io_utilization o capacity) en true.

curl -X PATCH https://api.{region}.databases.cloud.ibm.com/v4/ibm/deployments/{id}/groups/member/autoscaling -H 'Authorization: Bearer <>'
-H 'Content-Type: application/json'
-d '{"autoscaling": {
      "memory": {
        "scalers": {
          "io_utilization": {
            "enabled": true,
            "over_period": "5m",
            "above_percent": 90}
          },
          "limits": {
            "scale_increase_percent": 10.0,
            "scale_period_seconds": 30,
            "scale_maximum_mb": 125952,
            "units": "mb"
          }
      }
    }'

Para inhabilitar el escalado automático, envíe una solicitud PATCH con los escaladores habilitados actualmente establecidos en false. Si todos ellos están establecidos en false, se inhabilitará el escalado automático en el despliegue.

El autoescalado de CPU y RAM no es compatible con Isolated Compute. El autoescalado de discos está disponible. Si ha aprovisionado una instancia aislada o ha cambiado desde un despliegue con autoescalado, supervise sus recursos mediante la integraciónIBM Cloud® Monitoring, que proporciona métricas de utilización de memoria, espacio en disco y E/S de disco. Para añadir recursos a su instancia, escale manualmente su despliegue.