Spec-Zone.ru › Ansible 2.11

community.aws.aws_application_scaling_policy – Управление политиками масштабирования Application Auto Scaling

Примечание

Этот плагин является частью коллекции community.aws (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install community.aws.

Чтобы использовать его в playbook, укажите: community.aws.aws_application_scaling_policy.

Новое в версии 1.0.0: из community.aws

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Обзор

  • Создаёт, обновляет или удаляет политику масштабирования.

Требования

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

  • boto
  • boto3
  • botocore
  • json
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.
Если установлен параметр profile, этот параметр игнорируется.
Одновременное использование параметров aws_access_key и profile устарело и будет сделано взаимоисключающим после 2022-06-01.

псевдонимы: ec2_access_key, access_key
aws_ca_bundle
путь
Расположение файла с корневыми сертификатами для проверки SSL-сертификатов.
Используется только для модулей, основанных на boto3.
Примечание: Файл с корневыми сертификатами читается со стороны модуля и, возможно, потребует явного копирования с контроллера, если он не используется локально.
aws_config
словарь
Словарь для изменения конфигурации botocore.
Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.
Для модулей boto используется только ключ 'user_agent'. Дополнительные конфигурации boto см. в http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto.
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.
Если установлен параметр profile, этот параметр игнорируется.
Одновременное использование параметров aws_secret_key и profile устарело и будет сделано взаимоисключающим после 2022-06-01.

псевдонимы: ec2_secret_key, secret_key
debug_botocore_endpoint_logs
булево
    Варианты:
  • нет ←
  • да
Используйте журнал botocore.endpoint для анализа уникальных (а не суммарных) API-вызовов «ресурс:действие», выполненных во время задачи, выведя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, выполненного во время выполнения playbook. Переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована.
ec2_url
строка
URL для подключения к EC2 или Eucalyptus облаку (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион необходим. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.

псевдонимы: aws_endpoint_url, endpoint_url
maximum_tasks
целое число
Максимальное значение для масштабирования в ответ на событие масштабирования. Этот параметр необходим, если вы создаёте первую новую политику для указанной службы.
minimum_tasks
целое число
Минимальное значение для масштабирования в ответ на событие уменьшения масштаба. Этот параметр необходим, если вы создаёте первую новую политику для указанной службы.
override_task_capacity
булево
    Варианты:
  • нет
  • да
Определяет, нужно ли переопределять значения минимальных и/или максимальных задач, если они уже установлены.
По умолчанию false.
policy_name
строка / обязательный
Имя политики масштабирования.
policy_type
строка / обязательный
    Варианты:
  • StepScaling
  • TargetTrackingScaling
Тип политики.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
Использование profile переопределяет aws_access_key, aws_secret_key и security_token, а поддержка их одновременного использования с profile устарела.
aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01.

псевдонимы: aws_profile
region
строка
AWS регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если оно есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
resource_id
строка / обязательный
Идентификатор ресурса, связанного с масштабируемой целью.
scalable_dimension
строка / обязательный
    Варианты:
  • 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
Измеряемый параметр, связанный с масштабируемой целью.
security_token
строка
AWS STS токен безопасности. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
Если установлен параметр profile, этот параметр игнорируется.
Одновременное использование параметров security_token и profile устарело и будет сделано взаимоисключающим после 2022-06-01.

псевдонимы: aws_security_token, access_token
service_namespace
строка / обязательный
    Варианты:
  • ecs
  • elasticmapreduce
  • ec2
  • appstream
  • dynamodb
Пространство имен AWS службы.
state
строка / обязательный
    Варианты:
  • отсутствует
  • присутствует
Определяет, должна ли политика быть present или absent.
step_scaling_policy_configuration
словарь
Политика масштабирования шагами. Этот параметр необходим, если вы создаёте политику и policy_type=StepScaling.
target_tracking_scaling_policy_configuration
словарь
Политика масштабирования по целевому показателю. Этот параметр необходим, если вы создаёте новую политику и policy_type=TargetTrackingScaling.
Полное описание подпараметров можно найти в документации API:
https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html
CustomizedMetricSpecification
словарь
Метрика, используемая при использовании настраиваемой метрики.
DisableScaleIn
булево
    Варианты:
  • нет
  • да
Определяет, нужно ли отключить масштабирование в сторону уменьшения.
PredefinedMetricSpecification
словарь
Метрика, используемая при использовании предопределенной метрики.
ScaleInCooldown
целое число
Время (в секундах) ожидания после масштабирования в сторону уменьшения, прежде чем может произойти другое действие по масштабированию.
ScaleOutCooldown
целое число
Время (в секундах) ожидания после масштабирования в сторону увеличения, прежде чем может произойти другое действие по масштабированию.
TargetValue
вещественное число
Целевое значение метрики.
validate_certs
булево
    Варианты:
  • нет
  • да ←
При значении "нет" SSL-сертификаты не будут проверены для версий boto >= 2.6.0.

Примечания

Примечание

  • Подробную информацию о параметрах и возвращаемых значениях см. в http://boto3.readthedocs.io/en/latest/reference/services/application-autoscaling.html#ApplicationAutoScaling.Client.put_scaling_policy
  • Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета AWS_URL или EC2_URL, AWS_PROFILE или AWS_DEFAULT_PROFILE, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION, AWS_CA_BUNDLE
  • Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION обычно используются для указания региона AWS, если это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

# 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.aws_application_scaling_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.aws_application_scaling_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.aws_application_scaling_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
сложный
при состоянии present
Список CloudWatch-тревог, связанных с политикой масштабирования

alarm_arn
строка
при состоянии present
Amazon Resource Name (ARN) тревоги

alarm_name
строка
при состоянии present
Название тревоги

creation_time
строка
при состоянии present
Отметка времени Unix, когда был создан масштабируемый целевой объект.

Пример:
2017-09-28T08:22:51.881000-03:00
max_capacity
целое число
при состоянии present
Максимальное значение масштабирования в ответ на событие масштабирования. Требуется, если состояние равно present.

Пример:
2
min_capacity
целое число
при состоянии present
Минимальное значение масштабирования в ответ на событие масштабирования. Требуется, если состояние равно present.

Пример:
1
policy_arn
строка
при состоянии present
Amazon Resource Name (ARN) политики масштабирования.

policy_name
строка
при состоянии present
Название политики масштабирования.

policy_type
строка
при состоянии present
Тип политики.

resource_id
строка
при состоянии present
Идентификатор ресурса, связанного со масштабируемым целевым объектом.

Пример:
service/cluster-name/service-name
role_arn
строка
при состоянии present
ARN роли IAM, которая позволяет Application Auto Scaling изменять масштабируемый целевой объект от вашего имени. Требуется, если состояние равно present.

Пример:
arn:aws:iam::123456789123:role/roleName
scalable_dimension
строка
при состоянии present
Измеримый параметр, связанный со масштабируемым целевым объектом.

Пример:
ecs:service:DesiredCount
service_namespace
строка
при состоянии present
Пространство имен AWS-сервиса.

Пример:
ecs
step_scaling_policy_configuration
сложный
при состоянии present и типе политики StepScaling
Политика пошагового масштабирования.

adjustment_type
строка
при состоянии present и типе политики StepScaling
Тип корректировки

Пример:
ChangeInCapacity, PercentChangeInCapacity, ExactCapacity
cooldown
целое число
при состоянии present и типе политики StepScaling
Время в секундах после завершения операции масштабирования, в течение которого предыдущие операции масштабирования, связанные с триггером, могут влиять на будущие события масштабирования

Пример:
60
metric_aggregation_type
строка
при состоянии present и типе политики StepScaling
Тип агрегирования для метрик CloudWatch

Пример:
Average, Minimum, Maximum
step_adjustments
список / элементы=словарь
при состоянии present и типе политики StepScaling
Набор настроек, которые позволяют вам масштабировать в зависимости от размера нарушения тревоги

target_tracking_scaling_policy_configuration
сложный
при состоянии present и типе политики TargetTrackingScaling
Политика отслеживания цели.

predefined_metric_specification
сложный
при состоянии present и типе политики TargetTrackingScaling
Предопределенная метрика

predefined_metric_type
строка
при состоянии present и типе политики TargetTrackingScaling
Тип метрики

Пример:
ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization
resource_label
строка
при типе метрики ALBRequestCountPerTarget
Идентифицирует ресурс, связанный с типом метрики

scale_in_cooldown
целое число
при состоянии present и типе политики TargetTrackingScaling
Время в секундах после завершения операции уменьшения масштаба, прежде чем может начаться другая операция уменьшения масштаба

Пример:
60
scale_out_cooldown
целое число
при состоянии present и типе политики TargetTrackingScaling
Время в секундах после завершения операции увеличения масштаба, прежде чем может начаться другая операция увеличения масштаба

Пример:
60
target_value
целое число
при состоянии present и типе политики TargetTrackingScaling
Целевое значение для метрики

Пример:
70


Авторы

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

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

Spec-Zone.ru

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