Spec-Zone.ru › Ansible

Модуль community.aws.application_autoscaling_policy — управление политиками масштабирования Application Auto Scaling

Примечание

Этот модуль входит в коллекцию community.aws (версия 10.1.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.aws.application_autoscaling_policy.

Добавлено в community.aws 1.0.0

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Создает, обновляет или удаляет политику масштабирования.
  • До выпуска версии 5.0.0 этот модуль назывался community.aws.aws_application_scaling_policy. Использование не изменилось.

Псевдонимы: aws_application_scaling_policy

Требования

На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.

  • python >= 3.6
  • boto3 >= 1.34.0
  • botocore >= 1.34.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_access_key

string

Идентификатор ключа доступа AWS.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные окружения AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY (в порядке убывания приоритета).

Параметры aws_access_key и profile взаимоисключающие.

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для единообразия с AWS SDK botocore.

aws_ca_bundle

path

Путь к пакету сертификатов CA, используемому для проверки SSL-сертификатов.

Также можно использовать переменную окружения AWS_CA_BUNDLE.

aws_config

dictionary

Словарь для изменения конфигурации botocore.

Параметры перечислены в документации AWS: https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

debug_botocore_endpoint_logs

boolean

Использовать регистратор botocore.endpoint для сбора уникальных (а не общих) вызовов API "resource:action", выполненных во время задачи, и выводить их набор в ключ resource_actions результатов задачи. Используйте обработчик обратного вызова aws_resource_action, чтобы вывести полный список вызовов, выполненных в плейбуке.

Также можно использовать переменную окружения ANSIBLE_DEBUG_BOTOCORE_LOGS.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

псевдонимы: aws_endpoint_url

string

URL для подключения вместо стандартных конечных точек AWS. Этот параметр можно использовать для подключения к другим сервисам, совместимым с AWS, однако коллекции amazon.aws и community.aws тестируются только с AWS.

Также можно использовать переменную окружения AWS_URL.

maximum_tasks

integer

Максимальное значение масштабирования при событии масштабирования наружу. Этот параметр обязателен, если вы создаете первую политику для указанной службы.

minimum_tasks

integer

Минимальное значение масштабирования при событии масштабирования внутрь. Этот параметр обязателен, если вы создаете первую политику для указанной службы.

override_task_capacity

boolean

Переопределять ли заданные минимальное и/или максимальное количество задач.

По умолчанию false.

Варианты:

  • false
  • true

policy_name

string / обязательный

Имя политики масштабирования.

policy_type

string / обязательный

Тип политики.

Варианты:

  • "StepScaling"
  • "TargetTrackingScaling"

profile

псевдонимы: aws_profile

string

Именованный профиль AWS для аутентификации.

Дополнительные сведения об именованных профилях см. в документации AWS: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Также можно использовать переменную окружения AWS_PROFILE.

Параметр profile взаимоисключающий с параметрами aws_access_key, aws_secret_key и session_token.

region

псевдонимы: aws_region

string

Регион AWS для использования.

Для глобальных служб, таких как IAM, Route53 и CloudFront, параметр region игнорируется.

Также можно использовать переменную окружения AWS_REGION.

Дополнительные сведения см. в документации Amazon AWS: http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

resource_id

string / обязательный

Идентификатор ресурса, связанного с масштабируемой целью.

scalable_dimension

string / обязательный

Масштабируемый параметр, связанный с масштабируемой целью.

Варианты:

  • "ecs:service:DesiredCount"
  • "ec2:spot-fleet-request:TargetCapacity"
  • "elasticmapreduce:instancegroup:InstanceCount"
  • "appstream:fleet:DesiredCapacity"
  • "dynamodb:table:ReadCapacityUnits"
  • "dynamodb:table:WriteCapacityUnits"
  • "dynamodb:index:ReadCapacityUnits"
  • "dynamodb:index:WriteCapacityUnits"

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key

string

Секретный ключ доступа AWS.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные окружения AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY (в порядке убывания приоритета).

Параметры secret_key и profile взаимоисключающие.

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для единообразия с AWS SDK botocore.

service_namespace

string / обязательный

Пространство имен службы AWS.

Варианты:

  • "ecs"
  • "elasticmapreduce"
  • "ec2"
  • "appstream"
  • "dynamodb"

session_token

псевдонимы: aws_session_token

string

Токен сеанса AWS STS для временных учетных данных.

Дополнительные сведения о токенах доступа см. в документации AWS: https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменную окружения AWS_SESSION_TOKEN.

Параметры session_token и profile взаимоисключающие.

state

string / обязательный

Следует ли present или absent политику.

Варианты:

  • "absent"
  • "present"

step_scaling_policy_configuration

dictionary

Политика пошагового масштабирования. Этот параметр обязателен при создании политики с policy_type=StepScaling.

target_tracking_scaling_policy_configuration

dictionary

Политика отслеживания целевого значения. Этот параметр обязателен при создании новой политики с policy_type=TargetTrackingScaling.

Полное описание вложенных параметров см. в документации API:

https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html

CustomizedMetricSpecification

dictionary

Метрика для использования при задании пользовательской метрики.

DisableScaleIn

boolean

Следует ли отключить масштабирование внутрь.

Варианты:

  • false
  • true

PredefinedMetricSpecification

dictionary

Метрика для использования при задании предопределенной метрики.

ScaleInCooldown

integer

Время ожидания (в секундах) после масштабирования внутрь до выполнения следующего действия по масштабированию.

ScaleOutCooldown

integer

Время ожидания (в секундах) после масштабирования наружу до выполнения следующего действия по масштабированию.

TargetValue

float

Целевое значение метрики.

validate_certs

boolean

Если задано значение false, SSL-сертификаты при обмене данными с API AWS проверяться не будут.

Настоятельно не рекомендуется задавать validate_certs=false; вместо этого рассмотрите возможность указать aws_ca_bundle.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • Дополнительные сведения о параметрах и возвращаемых значениях см. по адресу http://boto3.readthedocs.io/en/latest/reference/services/application-autoscaling.html#ApplicationAutoScaling.Client.put_scaling_policy
  • Внимание: При работе модулей переменные окружения и файлы конфигурации считываются в контексте «хоста» Ansible, а не «контроллера». Поэтому файлы может потребоваться явно скопировать на «хост». При работе плагинов поиска и подключения переменные окружения и файлы конфигурации считываются в контексте «контроллера» Ansible, а не «хоста».
  • Используемый Ansible AWS SDK (boto3) также может считывать значения учетных данных и других параметров по умолчанию, например региона, из файлов конфигурации в контексте «хоста» Ansible (обычно ~/.aws/credentials). Дополнительные сведения см. по адресу https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Create step scaling policy for ECS Service
- name: scaling_policy
  community.aws.application_autoscaling_policy:
    state: present
    policy_name: test_policy
    service_namespace: ecs
    resource_id: service/poc-pricing/test-as
    scalable_dimension: ecs:service:DesiredCount
    policy_type: StepScaling
    minimum_tasks: 1
    maximum_tasks: 6
    step_scaling_policy_configuration:
      AdjustmentType: ChangeInCapacity
      StepAdjustments:
        - MetricIntervalUpperBound: 123
          ScalingAdjustment: 2
        - MetricIntervalLowerBound: 123
          ScalingAdjustment: -2
      Cooldown: 123
      MetricAggregationType: Average

# Create target tracking scaling policy for ECS Service
- name: scaling_policy
  community.aws.application_autoscaling_policy:
    state: present
    policy_name: test_policy
    service_namespace: ecs
    resource_id: service/poc-pricing/test-as
    scalable_dimension: ecs:service:DesiredCount
    policy_type: TargetTrackingScaling
    minimum_tasks: 1
    maximum_tasks: 6
    target_tracking_scaling_policy_configuration:
      TargetValue: 60
      PredefinedMetricSpecification:
        PredefinedMetricType: ECSServiceAverageCPUUtilization
      ScaleOutCooldown: 60
      ScaleInCooldown: 60

# Remove scalable target for ECS Service
- name: scaling_policy
  community.aws.application_autoscaling_policy:
    state: absent
    policy_name: test_policy
    policy_type: StepScaling
    service_namespace: ecs
    resource_id: service/cluster-name/service-name
    scalable_dimension: ecs:service:DesiredCount

Возвращаемые значения

Общие возвращаемые значения описаны здесь; далее перечислены поля, уникальные для этого модуля:

Ключ

Описание

alarms

complex

Список сигналов CloudWatch, связанных с политикой масштабирования

Возвращается: если state имеет значение present

alarm_arn

string

Amazon Resource Name (ARN) сигнала

Возвращается: если state имеет значение present

alarm_name

string

Имя сигнала

Возвращается: если state имеет значение present

creation_time

string

Временная метка Unix, указывающая время создания масштабируемой цели.

Возвращается: если state имеет значение present

Пример: "2017-09-28T08:22:51.881000-03:00"

max_capacity

integer

Максимальное значение масштабирования в ответ на событие масштабирования наружу. Обязательно, если state имеет значение present.

Возвращается: если state имеет значение present

Пример: 2

min_capacity

integer

Минимальное значение масштабирования в ответ на событие масштабирования внутрь. Обязательно, если state имеет значение present.

Возвращается: если state имеет значение present

Пример: 1

policy_arn

string

Amazon Resource Name (ARN) политики масштабирования.

Возвращается: если state имеет значение present

policy_name

string

Имя политики масштабирования.

Возвращается: если state имеет значение present

policy_type

string

Тип политики.

Возвращается: если state имеет значение present

resource_id

string

Идентификатор ресурса, связанного с масштабируемой целью.

Возвращается: если state имеет значение present

Пример: "service/cluster-name/service-name"

role_arn

string

ARN роли IAM, которая позволяет Application Auto Scaling изменять масштабируемую цель от вашего имени. Обязательно, если state имеет значение present.

Возвращается: если state имеет значение present

Пример: "arn:aws:iam::123456789012:role/roleName"

scalable_dimension

string

Измерение масштабирования, связанное с масштабируемой целью.

Возвращается: если state имеет значение present

Пример: "ecs:service:DesiredCount"

service_namespace

string

Пространство имён службы AWS.

Возвращается: если state имеет значение present

Пример: "ecs"

step_scaling_policy_configuration

complex

Политика пошагового масштабирования.

Возвращается: если state имеет значение present и тип политики — StepScaling

adjustment_type

string

Тип корректировки

Возвращается: если state имеет значение present и тип политики — StepScaling

Пример: "ChangeInCapacity, PercentChangeInCapacity, ExactCapacity"

cooldown

integer

Период времени в секундах после завершения действия масштабирования, в течение которого связанные с предыдущими триггерами действия масштабирования могут влиять на будущие события масштабирования

Возвращается: если state имеет значение present и тип политики — StepScaling

Пример: 60

metric_aggregation_type

string

Тип агрегирования метрик CloudWatch

Возвращается: если state имеет значение present и тип политики — StepScaling

Пример: "Average, Minimum, Maximum"

step_adjustments

list / elements=dictionary

Набор корректировок, позволяющих масштабировать ресурс в зависимости от величины превышения порогового значения сигнала

Возвращается: если state имеет значение present и тип политики — StepScaling

target_tracking_scaling_policy_configuration

complex

Политика отслеживания целевого значения.

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

predefined_metric_specification

complex

Предопределённая метрика

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

predefined_metric_type

string

Тип метрики

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

Пример: "ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization"

resource_label

string

Идентифицирует ресурс, связанный с типом метрики

Возвращается: если тип метрики — ALBRequestCountPerTarget

scale_in_cooldown

integer

Период времени в секундах после завершения действия по масштабированию внутрь, по истечении которого может начаться следующее такое действие

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

Пример: 60

scale_out_cooldown

integer

Период времени в секундах после завершения действия по масштабированию наружу, по истечении которого может начаться следующее такое действие

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

Пример: 60

target_value

integer

Целевое значение метрики

Возвращается: если state имеет значение present и тип политики — TargetTrackingScaling

Пример: 70

Авторы

  • Gustavo Maia (@gurumaia)
  • Chen Leibovich (@chenl87)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/aws/application_autoscaling_policy_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API