Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-07-28 GMT+08:00

Consulta de políticas de escalado automático

Función

Esta API se utiliza para ver todas las políticas de escalado automático de un clúster especificado.

Restricciones

Ninguna

Depuración

Puede depurar esta API a través de la autenticación automática en API Explorer. API Explorer puede generar automáticamente código SDK de ejemplo y proporcionar la depuración de código SDK de ejemplo.

URI

GET /v2/{project_id}/autoscaling-policy/{cluster_id}

Tabla 1 Parámetros de URI

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

El ID del proyecto. Para obtener más información sobre cómo obtener el ID del proyecto, consulte Obtención de un ID de proyecto.

cluster_id

String

El ID del clúster. Para obtener más información acerca de cómo obtener el ID de clúster, consulte Obtención de un ID de clúster.

Parámetros de solicitud

Ninguna

Parámetros de respuesta

Código de estado: 200

Tabla 2 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

[Array element]

Array of AutoScalingPolicyV2 objects

La lista de política de escalado automático. Para obtener más información, consulte Tabla 3.

Tabla 3 AutoScalingPolicyV2

Parámetro

Tipo

Descripción

node_group_name

String

Nombre del grupo de nodos.

resource_pool_name

String

El nombre del plan de recursos.

auto_scaling_policy

AutoScalingPolicy object

La política de escalado automático. Para obtener más información, consulte Tabla 4.

Tabla 4 AutoScalingPolicy

Parámetro

Tipo

Descripción

auto_scaling_enable

Boolean

Si se debe habilitar la política de escalado automático.

min_capacity

Integer

Número mínimo de nodos reservados en el grupo de nodos. El valor varía de 0 a 500.

max_capacity

Integer

Número máximo de nodos en el grupo de nodos. El valor varía de 0 a 500.

resources_plans

Array of ResourcesPlan objects

La lista del plan de recursos. Si este parámetro se deja en blanco, el plan de recursos se deshabilita. Cuando auto_scaling_enable se establece en true, se debe configurar este parámetro o resources_plans. Para obtener más información, consulte Tabla 5.

rules

Array of Rule objects

Lista de reglas de escalado automático. Cuando auto_scaling_enable se establece en true, se debe configurar este parámetro o resources_plans. Para obtener más información, consulte Tabla 6.

exec_scripts

Array of ScaleScript objects

La lista de scripts de automatización de escalado personalizados. Si este parámetro se deja en blanco, el script de automatización se deshabilita. Para obtener más información, consulte Tabla 8.

Tabla 5 ResourcesPlan

Parámetro

Tipo

Descripción

period_type

String

Tipo de ciclo de un plan de recursos. Actualmente, solo se admite el siguiente tipo de ciclo:

daily

start_time

String

La hora de inicio de un plan de recursos. El valor tiene el formato de hour:minute, lo que indica que el tiempo oscila entre las 00:00 y las 23:59.

end_time

String

La hora de finalización de un plan de recursos. El valor tiene el mismo formato que el de start_time. El intervalo entre end_time y start_time debe ser mayor o igual a 30 minutos.

min_capacity

Integer

Número mínimo de nodos reservados en un grupo de nodos de un plan de recursos. El valor varía de 0 a 500.

max_capacity

Integer

Número máximo de nodos reservados en un grupo de nodos de un plan de recursos. El valor varía de 0 a 500.

effective_days

Array of strings

Fecha de vigencia de un plan de recursos. Si este parámetro se deja en blanco, indica que el plan de recursos tiene efecto todos los días. Las opciones son las siguientes:

MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, and SUNDAY

Tabla 6 Regla

Parámetro

Tipo

Descripción

name

String

Nombre de una regla de escalado automático. El nombre solo puede contener de 1 a 64 caracteres. Solo se permiten letras, números, guiones (-) y guiones bajos (_). Los nombres de regla deben ser únicos en un grupo de nodos.

description

String

La descripción sobre una regla de escalado automático. Contiene un máximo de 1,024 caracteres.

adjustment_type

String

Tipo de ajuste de regla de escalado automático. Valores posibles:

  • scale_out: escalamiento horizontal de clústeres
  • scale_in: reducción de clústeres

cool_down_minutes

Integer

El tiempo de enfriamiento del clúster después de activar una regla de escalado automático, cuando no se realiza ninguna operación de escalado automático. La unidad es un minuto. El valor varía de 0 a 10080. Una semana es igual a 10,080 minutos.

scaling_adjustment

Integer

Número de nodos de clúster que se pueden ajustar a la vez. El valor varía de 1 a 100.

trigger

Trigger object

La condición para activar una regla. Para obtener más información, consulte Tabla 7.

Tabla 7 Activador

Parámetro

Tipo

Descripción

metric_name

String

El nombre de la métrica. Esta condición desencadenante hace un juicio de acuerdo con el valor de la métrica. Un nombre de métrica contiene un máximo de 64 caracteres.

metric_value

String

Umbral de métrica para activar una regla.

El valor debe ser un entero o un número con dos decimales.

comparison_operator

String

El operador lógico de juicio métrico. Valores posibles:

  • LT: inferior a
  • GT: superior a
  • LTOE: inferior o igual a
  • GTOE: superior o igual a

evaluation_periods

Integer

Número de períodos consecutivos de cinco minutos, durante los cuales se alcanza un umbral métrico. El valor varía de 1 a 288.

Tabla 8 ScaleScript

Parámetro

Tipo

Descripción

name

String

El nombre de un script de automatización personalizado. Los nombres deben ser únicos en un clúster. El valor solo puede contener números, letras, espacios, guiones (-) y guiones bajos (_) y no puede comenzar con un espacio. El valor puede contener de 1 a 64 caracteres.

uri

String

La ruta de un script de automatización personalizado. Establezca este parámetro en una ruta de bucket OBS o una ruta de VM local.

  • Ruta de acceso del bucket OBS: introduzca una ruta de acceso de script, por ejemplo, obs://XXX/scale.sh.
  • Ruta de acceso de VM local: introduzca una ruta de acceso de script. La ruta de acceso del script debe comenzar con una barra diagonal (/) y terminar con .sh.

parameters

String

Parámetros de un script de automatización personalizado. Múltiples parámetros están separados por espacio. Se pueden transferir los siguientes parámetros de sistema predefinidos:

  • ${mrs_scale_node_num}: El número de nodos que se agregarán o eliminarán
  • ${mrs_scale_type}: El tipo de escalado. El valor puede ser scale_out o scale_in.
  • ${mrs_scale_node_hostnames}: Nombres de host de los nodos que se van a agregar o eliminar
  • ${mrs_scale_node_ips}: direcciones IP de los nodos a agregar o eliminar
  • ${mrs_scale_rule_name}: nombre de la regla que activa el escalado. Otros parámetros definidos por el usuario se utilizan de la misma manera que los scripts de shell comunes. Los parámetros están separados por espacios.

nodes

Array of strings

Nombre del grupo de nodos donde se ejecuta el script de automatización personalizado.

active_master

Boolean

Si el script de automatización personalizado se ejecuta sólo en el nodo de master activo. El valor predeterminado es false, que indica que el script de automatización personalizado puede ejecutarse en todos los nodos de master.

fail_action

String

Si continuar ejecutando scripts subsiguientes y crear un clúster después de que no se pueda ejecutar el script de automatización personalizado. Notas:

  • Se recomienda establecer este parámetro en continue en la fase de puesta en marcha para que el clúster pueda seguir siendo instalado e iniciado sin importar si el script de automatización personalizado se ejecuta correctamente.
  • La operación de reducción no se puede deshacer. fail_action debe establecerse en continue para los scripts que se ejecutan después de escalar. Valores posibles:
  • continue: Continuar para ejecutar scripts subsiguientes.
  • errorout: detener la acción.

action_stage

String

La hora en que se ejecuta un script. Valores posibles:

  • before_scale_out: antes de escalar horizontalmente
  • before_scale_in: antes de reducir
  • after_scale_out: después de escalar horizontalmente
  • after_scale_in: después de reducir

Código de estado: 400

Tabla 9 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error_code

String

Códigos de error.

error_msg

String

El mensaje de error.

Solicitud de ejemplo

Ninguna

Ejemplo de respuesta

Código de estado: 200

Se muestran las políticas de escalado automático.

{
  "auto_scaling_policies" : [ {
    "node_group_name" : "task_node_analysis_group",
    "resource_pool_name" : "default",
    "auto_scaling_policy" : {
      "auto_scaling_enable" : true,
      "min_capacity" : 0,
      "max_capacity" : 1,
      "resources_plans" : [ {
        "period_type" : "daily",
        "effective_days" : [ "SUNDAY" ],
        "start_time" : "12:00",
        "end_time" : "13:00",
        "min_capacity" : 2,
        "max_capacity" : 3
      } ],
      "rules" : [ {
        "name" : "default-expand-1",
        "description" : "",
        "adjustment_type" : "scale_out",
        "cool_down_minutes" : 5,
        "scaling_adjustment" : 1,
        "trigger" : {
          "metric_name" : "YARNAppRunning",
          "metric_value" : 100,
          "comparison_operator" : "GTOE",
          "evaluation_periods" : 1
        }
      } ]
    }
  } ]
}

Códigos de estado

Consulte Códigos de estado.

Códigos de error

Consulte Códigos de error.