Spec-Zone.ru › Ansible 2.10

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

Примечание

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

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

Для использования в плейбуке укажите: 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
путь
Путь к файлу сертификатов CA для проверки SSL-сертификатов.
Используется только для модулей на основе boto3.
Примечание: Файл CA Bundle считывается со стороны модуля и может потребоваться явное копирование с контроллера, если выполнение не происходит локально.
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:action", совершенных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в полный список, выполненный во время плейбука. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS.
ec2_url
строка
URL для подключения к EC2 или Eucalyptus cloud (по умолчанию модуль использует конечные точки 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
строка / обязательно
    Варианты:
  • absent
  • present
Определяет, должна ли политика быть 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/ru/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/ru/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

Пример:
Среднее значение, Минимальное значение, Максимальное значение
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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/aws/aws_application_scaling_policy_module.html

Spec-Zone.ru

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