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 2022-11-08 GMT+08:00

Creación de una política AS (V2)

Función

Esta API se utiliza para crear una política AS para un grupo AS o ancho de banda.

La diferencia entre las API V2 y V1 para crear una política AS es que V2 admite la creación de una política AS para ajustar el ancho de banda y diferenciar los recursos de ajuste por sus tipos.

URI

POST /autoscaling-api/v2/{project_id}/scaling_policy

Tabla 1 Descripción del parámetro

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

Especifica el ID del proyecto.

Mensaje de solicitud

  • Parámetros de solicitud
    Tabla 2 Parámetros de solicitud

    Parámetro

    Obligatorio

    Tipo

    Descripción

    scaling_policy_name

    String

    Especifica el nombre de política AS. El nombre solo contiene letras, dígitos, guiones bajos (_), y guiones (-) y no puede superar los 64 caracteres.

    scaling_resource_id

    String

    Especifica el ID de recurso de ajuste, que es el ID único de un grupo AS o ancho de banda.

    • If scaling_resource_type is set to SCALING_GROUP, this parameter indicates the unique AS group ID.
    • Si scaling_resource_type es BANDWIDTH, este parámetro indica el ID de ancho de banda único.
      NOTA:

      AS no puede escalar los anchos de banda anuales/mensuales.

    scaling_resource_type

    String

    Especifica el tipo de recurso de ajuste.

    • Grupo de AS: SCALING_GROUP
    • Ancho de banda: BANDWIDTH

    scaling_policy_type

    String

    Especifica el tipo de política AS.

    • ALARM (correspondiente a alarm_id): indica que la acción de ajuste es activada por una alarma.
    • SCHEDULED (correspondiente a scheduled_policy): indica que la acción de ajuste se activa según lo programado.
    • RECURRENCE (correspondiente a scheduled_policy): indica que la acción de ajuste se activa periódicamente.
    • INTERVAL_ALARM (correspondiente a alarm_id): indica que la acción de ajuste se desencadena mediante una política de ajuste refinada.

    alarm_id

    No

    String

    Especifica el ID de regla de alarma. Este parámetro es obligatorio cuando se establece scaling_policy_type en ALARM. Después de especificar este parámetro, el valor de scheduled_policy no tiene efecto.

    Después de crear una política de alarma, el sistema agrega automáticamente una actividad de activación de alarma del tipo de escala automática al campo alarm_actions de la regla de alarma especificada por el valor del parámetro.

    Puede obtener el valor del parámetro consultando las reglas de alarma de Cloud Eye. Para obtener más información, consulte Consulta de la lista de reglas de alarma en la Referencia de API de Cloud Eye.

    scheduled_policy

    No

    scheduled_policy object

    Especifica la política AS periódica o programada. Este parámetro es obligatorio cuando se establece scaling_policy_type en SCHEDULED o RECURRENCE. Después de especificar este parámetro, el valor de alarm_id no tiene efecto. Para más detalles, consulte Tabla 3.

    scaling_policy_action

    No

    scaling_policy_action object

    Especifica la acción de ajuste de la política AS. Para más detalles, consulte Tabla 4.

    interval_alarm_actions

    No

    Array of interval_alarm_actions objects

    Especifica el rango de valores de una política de alarma. Este parámetro es válido y obligatorio cuando se establece scaling_policy_type en INTERVAL_ALARM. Para más detalles, consulte Tabla 5.

    cool_down_time

    No

    Integer

    Especifica el período de enfriamiento (en segundos). El valor oscila entre 0 y 86400 y es 300 de forma predeterminada.

    description

    No

    String

    Especifica la descripción de la política AS. El valor puede contener de 1 a 256 caracteres.

    Tabla 3 Descripción del campo scheduled_policy

    Parámetro

    Obligatorio

    Tipo

    Descripción

    launch_time

    String

    Especifica la hora a la que se activa la acción de ajuste. El formato de tiempo cumple con UTC.

    • Si el valor scaling_policy_type es SCHEDULED, el formato de tiempo es YYYY-MM-DDThh:mmZ.
    • Si se establece scaling_policy_type a RECURRENCE, el formato de hora es hh:mm.

    recurrence_type

    No

    String

    Especifica el tipo de activación periódica. Este parámetro es obligatorio cuando scaling_policy_type es RECURRENCE.

    • Daily: indica que la acción de ajuste se activa una vez al día.
    • Weekly: indica que la acción de ajuste se activa una vez a la semana.
    • Monthly: indica que la acción de ajuste se activa una vez al mes.

    recurrence_value

    No

    String

    Especifica el día en que se desencadena una acción de ajuste periódica. Este parámetro es obligatorio cuando scaling_policy_type es RECURRENCE.

    • Si recurrence_type se establece en Diario, el valor es null, lo que indica que la acción de ajuste se activa una vez al día.
    • Si recurrence_type se establece en Weekly, el valor oscila entre 1 (domingo) y 7 (sábado). Los dígitos se refieren a las fechas de cada semana y separados por una coma, como 1,3,5.
    • Si recurrence_type se establece en Monthly, el valor varía de 1 a 31. Los dígitos se refieren a las fechas de cada mes y separados por una coma, como 1,10,13,28.
      NOTA:

      Cuando recurrence_type es Daily, este parámetro no tiene efecto.

    start_time

    No

    String

    Especifica la hora de inicio de la acción de escala que se activa periódicamente. El formato de tiempo cumple con UTC. El valor predeterminado es la hora local.

    El formato de hora es YYYY-MM-DDThh:mmZ.

    end_time

    No

    String

    Especifica la hora de finalización de la acción de escala que se activa periódicamente. El formato de tiempo cumple con UTC. Este parámetro es obligatorio cuando scaling_policy_type es RECURRENCE. Cuando la acción de ajuste se activa periódicamente, la hora de finalización no puede ser anterior a la hora actual y de inicio.

    El formato de hora es YYYY-MM-DDThh:mmZ.

    Tabla 4 Descripción del campo scaling_policy_action

    Parámetro

    Obligatorio

    Tipo

    Descripción

    operation

    No

    String

    Especifica la operación que se va a realizar. La operación predeterminada es ADD.
    • Si se establece scaling_resource_type en SCALING_GROUP, se admiten las siguientes operaciones:
      • ADD: indica la adición de instancias.
      • REMOVE/REDUCE: indica la eliminación o reducción de instancias.
      • SET: indica establecer el número de instancias en un valor especificado.
    • Si se establece scaling_resource_type en BANDWIDTH, se admiten las siguientes operaciones:
      • ADD: indica la adición de instancias.
      • REDUCE: indica la reducción de instancias.
      • SET: indica establecer el número de instancias en un valor especificado.

    size

    No

    Integer

    Especifica el tamaño de la operación. El valor es un entero de 0 a 300. El valor predeterminado es 1. Este parámetro se puede establecer en 0 solo cuando operation se establece en SET.

    • Si scaling_resource_type se establece en SCALING_GROUP, este parámetro indica el número de instancias. El valor es un entero de 0 a 300 y el valor predeterminado es 1.
    • Si scaling_resource_type se establece en BANDWIDTH, este parámetro indica el ancho de banda (Mbit/s). El valor es un entero de 1 a 300 y el valor predeterminado es 1.
    • Si scaling_resource_type es SCALING_GROUP, se puede establecer size o percentage.

    percentage

    No

    Integer

    Especifica el porcentaje de instancias que se van a operar. Si operation se establece en ADD, REMOVE o REDUCE, el valor de este parámetro es un entero de 1 a 20000. Si operation se establece en SET, el valor es un entero de 0 a 20000.

    • Si scaling_resource_type es SCALING_GROUP, se puede establecer size o percentage. Si no se establece size ni percentage, el valor predeterminado de size es 1.
    • Si se establece scaling_resource_type en BANDWIDTH, percentage no estará disponible.

    limits

    No

    Integer

    Especifica las restricciones de operación.

    Si scaling_resource_type se establece en BANDWIDTH y operation no es SET, este parámetro tiene efecto y la unidad es Mbit/s.

    • Si operation se establece en ADD, este parámetro indica el ancho de banda máximo permitido.
    • Si operation se establece en REDUCE, este parámetro indica el ancho de banda mínimo permitido.
    Tabla 5 Descripción del campo interval_alarm_actions

    Parámetro

    Obligatorio

    Tipo

    Descripción

    lower_bound

    No

    Double

    Especifica el límite inferior del rango de valores. El valor es null por defecto.

    Si el límite inferior del intervalo de valores es nulo, el límite superior debe ser menor o igual a 0.

    El límite inferior mínimo permitido es -1.174271E108.

    upper_bound

    No

    Double

    Especifica el límite superior del rango de valores. El valor es null por defecto.

    Si el límite superior del intervalo es ´null, el límite inferior debe ser mayor o igual a 0.

    El límite superior máximo permitido es 1.174271E108.

    operation

    No

    String

    Especifica la operación que se va a realizar. La operación predeterminada es ADD.

    • Si se establece scaling_resource_type en SCALING_GROUP, se admiten las siguientes operaciones:
      • ADD: indica la adición de instancias.
      • REMOVE/REDUCE: indica la eliminación o reducción de instancias.
      • SET: indica establecer el número de instancias en un valor especificado.
    • Si se establece scaling_resource_type en BANDWIDTH, se admiten las siguientes operaciones:
      • ADD: indica la adición de instancias.
      • REDUCE: indica la reducción de instancias.
      • SET: indica establecer el número de instancias en un valor especificado.

    size

    No

    Integer

    Especifica el tamaño de la operación. El valor es un entero de 0 a 300. El valor predeterminado es 1.

    Este parámetro se puede establecer en 0 solo cuando operation se establece en SET.

    • Si scaling_resource_type se establece en SCALING_GROUP, este parámetro indica el número de instancias. El valor es un entero de 0 a 300 y el valor predeterminado es 1.
    • Si scaling_resource_type se establece en BANDWIDTH, este parámetro indica el ancho de banda (Mbit/s). El valor es un entero de 1 a 300 y el valor predeterminado es 1.
    • Si scaling_resource_type es SCALING_GROUP, se puede establecer size o percentage.

    percentage

    No

    Integer

    Especifica el porcentaje de instancias que se van a operar. Cuando la operación es ADD, REMOVE o REDUCE, el valor es un entero de 1 a 20000.

    Cuando la operación es SET, el valor es un entero de 0 a 20000.

    • Si scaling_resource_type es SCALING_GROUP, se puede establecer size o percentage. Si no se establece size ni percentage, el valor predeterminado de size es 1.
    • Si se establece scaling_resource_type en BANDWIDTH, percentage no estará disponible.

    limits

    No

    Integer

    Especifica las restricciones de operación.

    Si scaling_resource_type se establece en BANDWIDTH y operation no es SET, este parámetro tiene efecto y la unidad es Mbit/s.

    • Si operation se establece en ADD, este parámetro indica el ancho de banda máximo permitido.
    • Si operation se establece en REDUCE, este parámetro indica el ancho de banda mínimo permitido.
    • El intervalo de valores de alarma de una política de escala refinada es el umbral de la regla de alarma más los límites superior e inferior del intervalo de valores.
    • Si el límite inferior de un intervalo de valores es nulo, el límite inferior mínimo es -1.174271E108. Si el límite superior del intervalo es nulo, el límite superior máximo es 1.174271E108.

    Por ejemplo:

    Puede establecer la regla de alarma para una política AS en CPU usage ≥ 30%, y agregar los dos rangos de valores siguientes:

    Scaling Action se establece en 30% ≤ CPU usage < 60%, add 1 instance. A continuación, lower_bound debe establecerse en 0 y upper_bound en 30.

    Scaling Action se establece en 60% ≤ CPU usage < positive infinite, add 2 instances. A continuación, lower_bound debe establecerse en 30 y upper_bound en 1.174271E108 o null.

    • Si ni el límite superior ni el límite inferior de un intervalo de valores es nulo, ambos deben ser mayores o iguales a, o menores o iguales a 0.
    • Si se agregan varias políticas de ajuste refinadas, sus rangos de valores no pueden superponerse.
    • Si el operador de una regla de alarma es =, no se puede agregar rango.
  • Ejemplo de la solicitud
    Este ejemplo muestra cómo crear una política de alarma denominada hth_aspolicy_1 con las siguientes configuraciones: El ID de regla de alarma es al1513822380493GvlJKZwA8; cuando se alcanza el umbral de alarma de acuerdo con la regla de alarma, el ancho de banda con ID 8ade64b5-d685-40b8-8582-4ce306ea37a6 se incrementará en 1 Mbit/s hasta que el ancho de banda alcance 10 Mbit/s.
    POST https://{Endpoint}/autoscaling-api/v2/{project_id}/scaling_policy
    
    { 
        "alarm_id": "al1513822380493GvlJKZwA8",
        "cool_down_time": 900,
        "scaling_resource_id": "8ade64b5-d685-40b8-8582-4ce306ea37a6",
        "scaling_resource_type": "BANDWIDTH",
        "scaling_policy_action": {
               "size": 1,
               "operation": "ADD",
               "limits": 10
        },
        "scaling_policy_name": "hth_aspolicy_1",
        "scaling_policy_type": "ALARM"
    }

Mensaje de la respuesta

  • Parámetros de respuesta
    Tabla 6 Parámetros de respuesta

    Parámetro

    Tipo

    Descripción

    scaling_policy_id

    String

    Especifica el ID de política AS.

  • Ejemplo de la respuesta
    { 
         "scaling_policy_id": "0h327883-324n-4dzd-9c61-68d03ee191dd"  
    }

Valores devueltos

  • Normal

    200

  • Anormal

    Valor devuelto

    Descripción

    400 Bad Request

    Se produjo un error en el servidor al procesar la solicitud.

    401 Unauthorized

    Debe introducir el nombre de usuario y la contraseña para acceder a la página solicitada.

    403 Forbidden

    Está prohibido el acceso a la página solicitada.

    404 Not Found

    No se pudo encontrar la página solicitada.

    405 Method Not Allowed

    No se le permite utilizar el método especificado en la solicitud.

    406 Not Acceptable

    El cliente no pudo aceptar la respuesta generada por el servidor.

    407 Proxy Authentication Required

    Debe utilizar el servidor proxy para la autenticación para que la solicitud pueda procesarse.

    408 Request Timeout

    Se agotó el tiempo de espera de la solicitud.

    409 Conflict

    La solicitud no se pudo procesar debido a un conflicto.

    500 Internal Server Error

    Se produjo un error al completar la solicitud debido a un problema de servicio interno.

    501 Not Implemented

    Error al completar la solicitud porque el servidor no admite la función solicitada.

    502 Bad Gateway

    Error al completar la solicitud porque la solicitud no es válida.

    503 Service Unavailable

    Error al completar la solicitud porque el sistema no está disponible.

    504 Gateway Timeout

    Se ha producido un error de tiempo de espera de la puerta de enlace.

Códigos de error

Consulte Códigos de error