aws_application_scaling_policy – Управление политиками масштабирования Application Auto Scaling
Новая версия 2.5.
Описание
- Создаёт, обновляет или удаляет политику масштабирования
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- boto
- boto3
- botocore
- json
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| aws_access_key строка | Ключ доступа AWS. Если не задан, используется значение переменной среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key строка | Секретный ключ AWS. Если не задан, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| debug_botocore_endpoint_logs логический тип добавлено в 2.8 |
| Используйте логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводите набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, сделанного во время выполнения playbook. Также можно использовать переменную среды ANSIBLE_DEBUG_BOTOCORE_LOGS. |
| ec2_url строка | URL для подключения к облаку EC2 или Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL (если есть). | |
| maximum_tasks - добавлено в 2.6 | Максимальное значение масштабирования в ответ на событие увеличения масштаба. Этот параметр требуется, если вы создаёте первую новую политику для указанной службы. | |
| minimum_tasks - добавлено в 2.6 | Минимальное значение масштабирования в ответ на событие уменьшения масштаба. Этот параметр требуется, если вы создаёте первую новую политику для указанной службы. | |
| override_task_capacity логический тип добавлено в 2.6 |
| Определяет, нужно ли переопределять значения минимального и/или максимального числа задач, если они уже заданы. |
| policy_name - / обязательно | Имя политики масштабирования. | |
| policy_type - / обязательно |
| Тип политики. |
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| 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 - / обязательно |
| Измеримый параметр, связанный со масштабируемой целью. |
| security_token строка | Токен безопасности AWS STS. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| service_namespace - / обязательно |
| Пространство имён AWS-службы. |
| step_scaling_policy_configuration - | Политика пошагового масштабирования. Этот параметр обязателен, если вы создаёте политику, и тип политики - StepScaling. | |
| target_tracking_scaling_policy_configuration - | Политика отслеживания целевого параметра. Этот параметр обязателен, если вы создаёте новую политику, и тип политики - TargetTrackingScaling. | |
| 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_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 - 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
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
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
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 complex | при наличии состояния | Список CloudWatch-тревог, связанных с политикой масштабирования | ||
| alarm_arn строка | при наличии состояния | Amazon Resource Name (ARN) тревоги | ||
| alarm_name строка | при наличии состояния | Имя тревоги | ||
| creation_time строка | при наличии состояния | Маркер Unix времени создания масштабируемой цели. Пример: 2017-09-28T08:22:51.881000-03:00 | ||
| max_capacity целое число | при наличии состояния | Максимальное значение для масштабирования в ответ на событие увеличения масштаба. Требуется, если state является present. Пример: 2 | ||
| min_capacity целое число | при наличии состояния | Минимальное значение для масштабирования в ответ на событие уменьшения масштаба. Требуется, если state является present. Пример: 1 | ||
| policy_arn строка | при наличии состояния | Amazon Resource Name (ARN) политики масштабирования. | ||
| policy_name строка | при наличии состояния | Имя политики масштабирования. | ||
| policy_type строка | при наличии состояния | Тип политики. | ||
| resource_id строка | при наличии состояния | Идентификатор ресурса, связанного с масштабируемой целью. Пример: service/cluster-name/service-name | ||
| role_arn строка | при наличии состояния | ARN роли IAM, которая позволяет Application Auto Scaling изменять масштабируемую цель от вашего имени. Требуется, если state является present.Пример: arn:aws:iam::123456789123:role/roleName | ||
| scalable_dimension строка | при наличии состояния | Масштабируемая размерность, связанная с масштабируемой целью. Пример: ecs:service:DesiredCount | ||
| service_namespace строка | при наличии состояния | Пространство имен AWS-сервиса. Пример: ecs | ||
| step_scaling_policy_configuration complex | при наличии состояния и типе политики StepScaling | Политика пошагового масштабирования. | ||
| adjustment_type строка | при наличии состояния и типе политики StepScaling | Тип корректировки Пример: ChangeInCapacity, PercentChangeInCapacity, ExactCapacity | ||
| cooldown целое число | при наличии состояния и типе политики StepScaling | Время в секундах после завершения операции масштабирования, в течение которого предыдущие операции масштабирования, связанные с триггером, могут влиять на будущие события масштабирования. Пример: 60 | ||
| metric_aggregation_type строка | при наличии состояния и типе политики StepScaling | Тип агрегации для метрик CloudWatch Пример: Average, Minimum, Maximum | ||
| step_adjustments список сложных | при наличии состояния и типе политики StepScaling | Набор корректировок, позволяющих масштабировать в зависимости от размера превышения тревоги | ||
| target_tracking_scaling_policy_configuration complex | при наличии состояния и типе политики TargetTrackingScaling | Политика отслеживания цели. | ||
| predefined_metric_specification complex | при наличии состояния и типе политики TargetTrackingScaling | Предварительно определенная метрика | ||
| predefined_metric_type строка | при наличии состояния и типе политики TargetTrackingScaling | Тип метрики Пример: ECSServiceAverageCPUUtilization, ECSServiceAverageMemoryUtilization | ||
| resource_label строка | при типе метрики ALBRequestCountPerTarget | Идентифицирует ресурс, связанный с типом метрики | ||
| scale_in_cooldown целое число | при наличии состояния и типе политики TargetTrackingScaling | Время в секундах после завершения операции уменьшения масштаба, прежде чем можно будет начать другую операцию уменьшения масштаба. Пример: 60 | ||
| scale_out_cooldown целое число | при наличии состояния и типе политики TargetTrackingScaling | Время в секундах после завершения операции увеличения масштаба, прежде чем можно будет начать другую операцию увеличения масштаба. Пример: 60 | ||
| target_value целое число | при наличии состояния и типе политики TargetTrackingScaling | Целевое значение для метрики Пример: 70 | ||
Статус
- Этот модуль не гарантирует обратной совместимости. [превью]
- Этот модуль поддерживается сообществом Ansible. [community]
Авторы
- 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.9/modules/aws_application_scaling_policy_module.html