[ aws . autoscaling ]
put-scaling-policy
Описание
Создает или обновляет политику масштабирования для группы Auto Scaling. Политики масштабирования используются для масштабирования группы Auto Scaling на основе настраиваемых метрик. Если политики не определены, функции динамического масштабирования и предсказательного масштабирования не используются.
Дополнительную информацию об использовании динамического масштабирования см. в разделах «Политики масштабирования с отслеживанием целевого значения» и «Политики масштабирования шагом и простые политики масштабирования» в Руководстве пользователя Amazon EC2 Auto Scaling.
Дополнительную информацию об использовании предсказательного масштабирования см. в разделе «Предсказательное масштабирование для Amazon EC2 Auto Scaling» в Руководстве пользователя Amazon EC2 Auto Scaling.
Политики масштабирования для группы Auto Scaling можно просмотреть, используя вызов API DescribePolicies. Если политика масштабирования больше не используется, её можно удалить, вызвав API DeletePolicy.
См. также: Документация по API AWS
Синтаксис
put-scaling-policy
--auto-scaling-group-name <value>
--policy-name <value>
[--policy-type <value>]
[--adjustment-type <value>]
[--min-adjustment-step <value>]
[--min-adjustment-magnitude <value>]
[--scaling-adjustment <value>]
[--cooldown <value>]
[--metric-aggregation-type <value>]
[--step-adjustments <value>]
[--estimated-instance-warmup <value>]
[--target-tracking-configuration <value>]
[--enabled | --no-enabled]
[--predictive-scaling-configuration <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--auto-scaling-group-name (строка)
--policy-name (строка)
--policy-type (строка)
Один из следующих типов политики:
TargetTrackingScalingStepScaling-
SimpleScaling(по умолчанию) PredictiveScaling
--adjustment-type (строка)
Указывает, как интерпретируется корректировка масштабирования (например, как абсолютное число или процент). Допустимые значения — ChangeInCapacity , ExactCapacity и PercentChangeInCapacity .
Требуется, если тип политики — StepScaling или SimpleScaling. Дополнительную информацию см. в разделе «Типы корректировок масштабирования» в Руководстве пользователя Amazon EC2 Auto Scaling.
--min-adjustment-step (целое число)
MinAdjustmentMagnitude вместо этого.--min-adjustment-magnitude (целое число)
Минимальное значение масштабирования при типе корректировки PercentChangeInCapacity. Например, предположим, что вы создали политику масштабирования шагом, чтобы увеличить группу Auto Scaling на 25 процентов, и указали MinAdjustmentMagnitude в 2. Если в группе 4 экземпляра и выполняется политика масштабирования, 25 процентов от 4 составляют 1. Однако, поскольку вы указали MinAdjustmentMagnitude равным 2, Amazon EC2 Auto Scaling увеличивает группу на 2 экземпляра.
Допустимо только если тип политики — StepScaling или SimpleScaling. Дополнительную информацию см. в разделе «Типы корректировок масштабирования» в Руководстве пользователя Amazon EC2 Auto Scaling.
Примечание
Некоторые группы Auto Scaling используют веса экземпляров. В этом случае установитеMinAdjustmentMagnitude на значение, по крайней мере, не меньшее, чем самый большой вес экземпляра.--scaling-adjustment (целое число)
Величина масштабирования, основанная на указанном типе корректировки. Положительное значение добавляет к текущей ёмкости, а отрицательное значение удаляет из текущей ёмкости. Для точного значения ёмкости необходимо указать неотрицательное значение.
Требуется, если тип политики — SimpleScaling. (Не используется с другими типами политик.)
--cooldown (целое число)
Период остывания, в секундах, применяемый к определённой простой политике масштабирования. При указании периода остывания здесь он переопределяет период остывания по умолчанию.
Допустимо только если тип политики — SimpleScaling. Дополнительную информацию см. в разделе «Периоды остывания для Amazon EC2 Auto Scaling» в Руководстве пользователя Amazon EC2 Auto Scaling.
По умолчанию: Нет
--metric-aggregation-type (строка)
Тип агрегации для метрик CloudWatch. Допустимые значения — Minimum , Maximum и Average . Если тип агрегации null, значение рассматривается как Average .
Допустимо только если тип политики — StepScaling.
--step-adjustments (список)
Набор корректировок, позволяющий производить масштабирование на основе размера превышения порогового значения тревоги.
Требуется, если тип политики — StepScaling. (Не используется с другими типами политик.)
(структура)
Описание информации, используемой для создания корректировки шага для политики масштабирования шагом.
Для следующих примеров предположим, что у вас есть тревога с порогом превышения 50:
- Для срабатывания корректировки, когда метрика больше или равна 50 и меньше 60, укажите нижнюю границу 0 и верхнюю границу 10.
- Для срабатывания корректировки, когда метрика больше 40 и меньше или равна 50, укажите нижнюю границу -10 и верхнюю границу 0.
Для корректировок шагов вашей политики масштабирования шагом есть несколько правил:
- Диапазоны ваших корректировок шагов не должны перекрываться или иметь разрыв.
- Максимум одна корректировка шага может иметь нулевую нижнюю границу. Если одна корректировка шага имеет отрицательную нижнюю границу, то должна быть корректировка шага с нулевой нижней границей.
- Максимум одна корректировка шага может иметь нулевую верхнюю границу. Если одна корректировка шага имеет положительную верхнюю границу, то должна быть корректировка шага с нулевой верхней границей.
- Верхняя и нижняя границы не могут быть одновременно нулевыми в одной корректировке шага.
Дополнительную информацию см. в разделе «Корректировки шагов» в Руководстве пользователя Amazon EC2 Auto Scaling.
MetricIntervalLowerBound -> (двойное число)
MetricIntervalUpperBound -> (двойное число)
Верхняя граница разницы между порогом тревоги и метрикой CloudWatch. Если значение метрики выше порога превышения, верхняя граница исключающая (метрика должна быть меньше, чем порог плюс верхняя граница). В противном случае она включительная (метрика должна быть меньше или равна порогу плюс верхняя граница). Нулевое значение означает положительную бесконечность.
Верхняя граница должна быть больше нижней.
ScalingAdjustment -> (целое число)
Сокращенный синтаксис:
MetricIntervalLowerBound=double,MetricIntervalUpperBound=double,ScalingAdjustment=integer ...
Синтаксис JSON:
[
{
"MetricIntervalLowerBound": double,
"MetricIntervalUpperBound": double,
"ScalingAdjustment": integer
}
...
]
--estimated-instance-warmup (целое число)
Оценённое время, в секундах, до того, как запущенный экземпляр сможет внести вклад в метрики CloudWatch. Этот период предварительного прогрева относится к экземплярам, запущенным из-за определённой политики масштабирования с отслеживанием целевого значения или политики масштабирования шагом. При указании периода предварительного прогрева здесь он переопределяет период предварительного прогрева по умолчанию.
Допустимо только если тип политики — TargetTrackingScaling или StepScaling .
Примечание
По умолчанию используется значение для предварительного прогрева экземпляров по умолчанию, определенного для группы. Если предварительный прогрев экземпляров по умолчанию null, тоEstimatedInstanceWarmup возвращается к значению периода остывания по умолчанию.--target-tracking-configuration (структура)
Политика масштабирования с отслеживанием целевых значений. Поддерживает предварительно определенные или настраиваемые метрики.
Доступны следующие предварительно определенные метрики:
ASGAverageCPUUtilizationASGAverageNetworkInASGAverageNetworkOutALBRequestCountPerTarget
Если вы укажете ALBRequestCountPerTarget для метрики, вы должны указать свойство ResourceLabel с PredefinedMetricSpecification.
Дополнительную информацию см. в разделе TargetTrackingConfiguration в справке по API Amazon EC2 Auto Scaling.
Требуется, если тип политики — TargetTrackingScaling.
PredefinedMetricSpecification -> (структура)
Предварительно определенная метрика. Вы должны указать либо предварительно определенную метрику, либо настраиваемую метрику.
PredefinedMetricType -> (строка)
Тип метрики. Доступны следующие предварительно определенные метрики:
-
ASGAverageCPUUtilization— Средняя загрузка процессора группы Auto Scaling. -
ASGAverageNetworkIn— Среднее количество байтов, полученных по всем сетевым интерфейсам группой Auto Scaling. -
ASGAverageNetworkOut— Среднее количество байтов, отправленных по всем сетевым интерфейсам группой Auto Scaling. -
ALBRequestCountPerTarget— Среднее количество запросов балансировщика нагрузки Application Load Balancer на целевой экземпляр для вашей группы Auto Scaling.
ResourceLabel -> (строка)
Метка, которая однозначно идентифицирует конкретную целевую группу балансировщика нагрузки Application Load Balancer, чтобы определить среднее количество запросов, обработанных вашей группой Auto Scaling. Вы не можете указать метку ресурса, если целевая группа не подключена к группе Auto Scaling.
Вы создаете метку ресурса, добавляя последнюю часть ARN балансировщика нагрузки и последнюю часть ARN целевой группы в одно значение, разделенные слешем (/). Формат метки ресурса:
app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff .Где:
- app/<load-balancer-name>/<load-balancer-id> — последняя часть ARN балансировщика нагрузки
- targetgroup/<target-group-name>/<target-group-id> — последняя часть ARN целевой группы.
Чтобы найти ARN балансировщика нагрузки Application Load Balancer, используйте операцию API DescribeLoadBalancers. Чтобы найти ARN целевой группы, используйте операцию API DescribeTargetGroups.
CustomizedMetricSpecification -> (структура)
Настраиваемая метрика. Вы должны указать либо предварительно определенную метрику, либо настраиваемую метрику.
MetricName -> (строка)
Namespace -> (строка)
Dimensions -> (список)
Размеры метрики.
Условие: если вы опубликовали метрику с размерами, вы должны указать те же размеры в своей политике масштабирования.
(структура)
Описывает размер метрики.
Name -> (строка)
Value -> (строка)
Statistic -> (строка)
Unit -> (строка)
Period -> (целое число)
Metrics -> (список)
Метрики, которые следует включить в политику масштабирования с отслеживанием целевых значений, в виде запроса данных метрики. Это могут быть как исходные метрики, так и выражения математических операций над метриками.
(структура)
Данные метрики, которые необходимо вернуть. Также определяет, возвращает ли этот вызов данные только для одной метрики или выполняет ли он математическое выражение над значениями возвращаемой статистики метрик для создания нового временного ряда. Временной ряд — это последовательность точек данных, каждая из которых связана со временной меткой.
Id -> (строка)
TargetTrackingMetricDataQuery объектов, указанных для одной политики масштабирования. Если вы выполняете математические выражения над этим набором данных, это имя представляет эти данные и может служить переменной в математическом выражении. Допустимые символы — буквы, цифры и символы подчеркивания. Первый символ должен быть строчной буквой.Expression -> (строка)
Математическое выражение, которое нужно выполнить над возвращаемыми данными, если этот объект выполняет математическое выражение. В этом выражении можно использовать Id других метрик для ссылки на эти метрики, а также Id других выражений для использования результатов этих выражений.
Условие: В каждом объекте TargetTrackingMetricDataQuery нужно указать либо Expression, либо MetricStat, но не оба.
MetricStat -> (структура)
Информация о данных метрики, которые необходимо вернуть.
Условие: В каждом объекте TargetTrackingMetricDataQuery нужно указать либо Expression, либо MetricStat, но не оба.
Metric -> (структура)
Метрика для использования.
Namespace -> (строка)
MetricName -> (строка)
Dimensions -> (список)
Размеры метрики. Список доступных размеров см. в документации Amazon Web Services в таблице Amazon Web Services-сервисы, которые публикуют метрики CloudWatch, в руководстве пользователя Amazon CloudWatch.
Условие: если вы опубликовали метрику с размерами, вы должны указать те же размеры в своей политике масштабирования.
(структура)
Описывает размер метрики.
Name -> (строка)
Value -> (строка)
Stat -> (строка)
Статистика для возврата. Может включать любые статистические данные CloudWatch или расширенные статистические данные. Список допустимых значений см. в таблице Статистики в руководстве пользователя Amazon CloudWatch.
Наиболее часто используемой метрикой для масштабирования является Average.
Unit -> (строка)
Period -> (целое число)
Label -> (строка)
Period -> (целое число)
ReturnData -> (булево)
Указывает, следует ли возвращать временные метки и сырые значения этой метрики.
Если вы используете математические выражения, укажите true для этого значения только для конечного математического выражения, на котором основана спецификация метрики. Для всех других метрик и выражений, используемых в спецификации метрики, необходимо указать false на ReturnData.
Если вы только получаете метрики и не выполняете никаких математических выражений, не указывайте ничего для ReturnData. Это устанавливает его по умолчанию (true).
TargetValue -> (двойное значение)
Целевое значение метрики.
Примечание
Некоторые метрики основаны на количестве, а не на процентах, например, количество запросов для балансировщика нагрузки Application Load Balancer или количество сообщений в очереди SQS. Если политика масштабирования указывает одну из этих метрик, укажите целевую загрузку как оптимальное среднее количество запросов или сообщений на экземпляр за любой интервал в одну минуту.DisableScaleIn -> (булево)
false.Синтаксис JSON:
{
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"|"ASGAverageNetworkIn"|"ASGAverageNetworkOut"|"ALBRequestCountPerTarget",
"ResourceLabel": "string"
},
"CustomizedMetricSpecification": {
"MetricName": "string",
"Namespace": "string",
"Dimensions": [
{
"Name": "string",
"Value": "string"
}
...
],
"Statistic": "Average"|"Minimum"|"Maximum"|"SampleCount"|"Sum",
"Unit": "string",
"Period": integer,
"Metrics": [
{
"Id": "string",
"Expression": "string",
"MetricStat": {
"Metric": {
"Namespace": "string",
"MetricName": "string",
"Dimensions": [
{
"Name": "string",
"Value": "string"
}
...
]
},
"Stat": "string",
"Unit": "string",
"Period": integer
},
"Label": "string",
"Period": integer,
"ReturnData": true|false
}
...
]
},
"TargetValue": double,
"DisableScaleIn": true|false
}
--enabled | --no-enabled (булево)
--predictive-scaling-configuration (структура)
Политика предсказательного масштабирования. Поддерживает предварительно определенные и настраиваемые метрики.
Предварительно определенные метрики включают загрузку ЦП, входящий/исходящий сетевой трафик и количество запросов балансировщика нагрузки Application Load Balancer.
Дополнительную информацию см. в разделе PredictiveScalingConfiguration в справке по API Amazon EC2 Auto Scaling.
Требуется, если тип политики — PredictiveScaling.
MetricSpecifications -> (список)
Эта структура включает метрики и целевую загрузку для использования в политике предсказательного масштабирования.
Это массив, но в настоящее время мы поддерживаем только одну спецификацию метрики. То есть вы можете указать целевое значение и одну пару метрик или целевое значение и одну метрику масштабирования и одну метрику нагрузки.
(структура)
Данная структура определяет метрики и настройки целевой загрузки для политики предсказательного масштабирования.
Вы должны указать либо пару метрик, либо метрику нагрузки и метрику масштабирования индивидуально. Указание пары метрик вместо отдельных метрик предоставляет более простой способ настройки метрик для политики масштабирования. Вы выбираете пару метрик, и политика автоматически определяет правильные суммарные и средние статистические данные для использования в метрике нагрузки и метрике масштабирования.
Пример
- Вы создаёте политику предсказательного масштабирования и указываете
ALBRequestCountв качестве значения для пары метрик и1000.0в качестве целевого значения. Для этого типа метрики необходимо указать размерность метрики для соответствующей целевой группы, поэтому вы также предоставляете метку ресурса для целевой группы Application Load Balancer, которая подключена к вашей группе автомасштабирования. - Количество запросов, получаемых целевой группой в минуту, предоставляет метрику нагрузки, а среднее количество запросов между членами целевой группы предоставляет метрику масштабирования. В CloudWatch это относится к метрикам
RequestCountиRequestCountPerTargetсоответственно. - Для оптимального использования предсказательного масштабирования следует придерживаться лучшей практики использования политики динамического масштабирования для автоматического масштабирования между минимальной и максимальной ёмкостью в ответ на изменения в использовании ресурсов в реальном времени.
- Amazon EC2 Auto Scaling использует данные точек за последние 14 дней и создаёт почасовой прогноз нагрузки для предсказательного масштабирования. (Необходимо как минимум 24 часа данных.)
- После создания прогноза нагрузки Amazon EC2 Auto Scaling определяет, когда нужно уменьшить или увеличить ёмкость вашей группы автомасштабирования в каждый час периода прогноза, чтобы среднее количество запросов, полученных каждой инстанцией, было как можно ближе к 1000 запросам в минуту в любое время.
Дополнительную информацию об использовании пользовательских метрик с предсказательным масштабированием см. в разделе "Расширенные конфигурации политики предсказательного масштабирования с использованием пользовательских метрик" в Руководстве пользователя Amazon EC2 Auto Scaling.
TargetValue -> (double)
Определяет целевую загрузку.
Примечание
Некоторые метрики основаны на счётчиках, а не на процентах, например, счётчик запросов для Application Load Balancer или количество сообщений в очереди SQS. Если политика масштабирования определяет одну из этих метрик, укажите целевую загрузку как оптимальное среднее количество запросов или сообщений на инстанцию за любой интервал в одну минуту.PredefinedMetricPairSpecification -> (structure)
Спецификация предопределённой пары метрик, с помощью которой Amazon EC2 Auto Scaling определяет соответствующую метрику масштабирования и метрику нагрузки.
PredefinedMetricType -> (string)
ASGCPUUtilization, то общая метрика ЦП группы автомасштабирования используется в качестве метрики нагрузки, а средняя метрика ЦП используется для метрики масштабирования.ResourceLabel -> (string)
Метка, которая однозначно идентифицирует определённую целевую группу Application Load Balancer, по которой нужно определить общее и среднее количество запросов, обработанных вашей группой автомасштабирования. Вы не можете указать метку ресурса, если целевая группа не подключена к группе автомасштабирования.
Вы создаёте метку ресурса, добавляя последнюю часть ARN балансировщика нагрузки и последнюю часть ARN целевой группы в одно значение, разделённые символом «/». Формат метки ресурса:
app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff .Где:
- app/<load-balancer-name>/<load-balancer-id> — последняя часть ARN балансировщика нагрузки
- targetgroup/<target-group-name>/<target-group-id> — последняя часть ARN целевой группы.
Чтобы найти ARN для Application Load Balancer, используйте операцию API DescribeLoadBalancers. Чтобы найти ARN для целевой группы, используйте операцию API DescribeTargetGroups.
PredefinedScalingMetricSpecification -> (structure)
Спецификация предопределённой метрики масштабирования.
PredefinedMetricType -> (string)
ResourceLabel -> (string)
Метка, которая однозначно идентифицирует определённую целевую группу Application Load Balancer, по которой нужно определить среднее количество запросов, обработанных вашей группой автомасштабирования. Вы не можете указать метку ресурса, если целевая группа не подключена к группе автомасштабирования.
Вы создаёте метку ресурса, добавляя последнюю часть ARN балансировщика нагрузки и последнюю часть ARN целевой группы в одно значение, разделённые символом «/». Формат метки ресурса:
app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff .Где:
- app/<load-balancer-name>/<load-balancer-id> — последняя часть ARN балансировщика нагрузки
- targetgroup/<target-group-name>/<target-group-id> — последняя часть ARN целевой группы.
Чтобы найти ARN для Application Load Balancer, используйте операцию API DescribeLoadBalancers. Чтобы найти ARN для целевой группы, используйте операцию API DescribeTargetGroups.
PredefinedLoadMetricSpecification -> (structure)
Спецификация предопределённой метрики нагрузки.
PredefinedMetricType -> (string)
ResourceLabel -> (string)
Метка, которая однозначно идентифицирует определённую целевую группу Application Load Balancer, по которой нужно определить количество запросов, обработанных вашей группой автомасштабирования. Вы не можете указать метку ресурса, если целевая группа не подключена к группе автомасштабирования.
Вы создаёте метку ресурса, добавляя последнюю часть ARN балансировщика нагрузки и последнюю часть ARN целевой группы в одно значение, разделённые символом «/». Формат метки ресурса:
app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff .Где:
- app/<load-balancer-name>/<load-balancer-id> — последняя часть ARN балансировщика нагрузки
- targetgroup/<target-group-name>/<target-group-id> — последняя часть ARN целевой группы.
Чтобы найти ARN для Application Load Balancer, используйте операцию API DescribeLoadBalancers. Чтобы найти ARN для целевой группы, используйте операцию API DescribeTargetGroups.
CustomizedScalingMetricSpecification -> (structure)
Спецификация настраиваемой метрики масштабирования.
MetricDataQueries -> (list)
Одна или несколько запросов данных метрик, предоставляющих данные точек для метрики масштабирования. Используйте несколько запросов данных метрик только в том случае, если вы выполняете математическое выражение на возвращённых данных.
(structure)
Данные метрики, которые нужно вернуть. Также определяет, возвращает ли этот вызов данные только для одной метрики или выполняет ли он математическое выражение над значениями возвращённых статистических данных метрики для создания нового временного ряда. Временной ряд — это ряд точек данных, каждая из которых связана со временной меткой.
Дополнительную информацию и примеры см. в разделе "Расширенные конфигурации политики предсказательного масштабирования с использованием пользовательских метрик" в Руководстве пользователя Amazon EC2 Auto Scaling.
Id -> (string)
MetricDataQuery объектов, указанных для одной политики масштабирования. Если вы выполняете математические выражения над этим набором данных, это имя представляет эти данные и может служить переменной в математическом выражении. Допустимые символы — буквы, цифры и нижние подчёркивания. Первый символ должен быть строчной буквой.Expression -> (string)
Математическое выражение, которое нужно выполнить над возвращёнными данными, если этот объект выполняет математическое выражение. Это выражение может использовать Id других метрик для ссылки на эти метрики и также может использовать Id других выражений для использования результата этих выражений.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
MetricStat -> (structure)
Информация о данных метрики, которые нужно вернуть.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
Metric -> (structure)
Метрика CloudWatch, которую нужно вернуть, включая имя метрики, пространство имён и измерения. Чтобы получить точное имя метрики, пространство имён и измерения, обратитесь к объекту Metric, который возвращается в результате вызова ListMetrics.
Namespace -> (string)
MetricName -> (string)
Dimensions -> (list)
Измерения для метрики. Список доступных измерений см. в документации Amazon Web Services, доступной в таблице в документации Amazon Web Services о сервисах, которые публикуют метрики CloudWatch в Руководстве пользователя Amazon CloudWatch.
Условие: Если вы опубликовали свою метрику с измерениями, вы должны указать те же измерения в своей политике масштабирования.
(structure)
Описание измерения метрики.
Name -> (string)
Value -> (string)
Stat -> (string)
Статистика, которую нужно вернуть. Она может включать любую статистику CloudWatch или расширенную статистику. Список допустимых значений см. в таблице Статистики в Руководстве пользователя Amazon CloudWatch.
Наиболее часто используемые метрики для предсказательного масштабирования — Average и Sum.
Unit -> (string)
Label -> (string)
ReturnData -> (boolean)
Указывает, нужно ли вернуть временные метки и значения исходных данных этой метрики.
Если вы используете математические выражения, укажите true для этого значения только для конечного математического выражения, на котором основана спецификация метрики. Вы должны указать false для ReturnData всех других метрик и выражений, используемых в спецификации метрики.
Если вы получаете только метрики и не выполняете никаких математических выражений, не указывайте ничего для ReturnData. Это установит его по умолчанию (true).
CustomizedLoadMetricSpecification -> (structure)
Спецификация настраиваемого метрики нагрузки.
MetricDataQueries -> (список)
Один или несколько запросов к данным метрики для предоставления точек данных для метрики нагрузки. Используйте несколько запросов к данным метрики только в том случае, если вы выполняете математическое выражение над возвращаемыми данными.
(структура)
Данные метрики для возврата. Также определяет, возвращает ли этот вызов данные только для одной метрики или выполняет ли он математическое выражение над значениями возвращаемых статистических данных метрики для создания нового временного ряда. Временной ряд — это последовательность точек данных, каждая из которых связана со временной меткой.
Дополнительную информацию и примеры см. в разделе «Настройка расширенных политик прогнозируемого масштабирования с использованием настраиваемых метрик» в руководстве пользователя Amazon EC2 Auto Scaling.
Id -> (строка)
MetricDataQuery объектов, указанных для одной политики масштабирования. Если вы выполняете математические выражения над этим набором данных, это имя представляет эти данные и может использоваться в качестве переменной в математическом выражении. Допустимые символы — буквы, цифры и знаки подчеркивания. Первый символ должен быть строчной буквой.Expression -> (строка)
Математическое выражение, которое нужно выполнить над возвращаемыми данными, если этот объект выполняет математическое выражение. В этом выражении можно использовать Id других метрик для ссылки на эти метрики, а также использовать Id других выражений для использования результата этих выражений.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
MetricStat -> (структура)
Информация о данных метрики для возврата.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
Metric -> (структура)
Метрика CloudWatch для возврата, включая имя метрики, пространство имен и измерения. Чтобы получить точное имя метрики, пространство имен и измерения, проверьте объект Metric, возвращаемый вызовом ListMetrics.
Namespace -> (строка)
MetricName -> (строка)
Dimensions -> (список)
Измерения для метрики. Список доступных измерений см. в документации Amazon Web Services, доступной в таблице Amazon Web Services-сервисов, публикующих метрики CloudWatch, в руководстве пользователя Amazon CloudWatch.
Условие: Если вы опубликовали метрику с измерениями, вы должны указать те же измерения в своей политике масштабирования.
(структура)
Описание измерения метрики.
Name -> (строка)
Value -> (строка)
Stat -> (строка)
Статистика для возврата. Она может включать любую статистику CloudWatch или расширенную статистику. Список допустимых значений см. в таблице «Статистики» в руководстве пользователя Amazon CloudWatch.
Наиболее часто используемые метрики для прогнозируемого масштабирования — Average и Sum.
Unit -> (строка)
Label -> (строка)
ReturnData -> (булево)
Указывает, нужно ли возвращать временные метки и исходные значения данных этой метрики.
Если вы используете математические выражения, укажите true для этого значения только для конечного математического выражения, на котором основана спецификация метрики. Вы должны указать false для ReturnData всех других метрик и выражений, используемых в спецификации метрики.
Если вы просто получаете метрики и не выполняете математических выражений, не указывайте ничего для ReturnData. Это установит значение по умолчанию (true).
CustomizedCapacityMetricSpecification -> (структура)
Спецификация настраиваемой метрики емкости.
MetricDataQueries -> (список)
Один или несколько запросов к данным метрики для предоставления точек данных для метрики емкости. Используйте несколько запросов к данным метрики только в том случае, если вы выполняете математическое выражение над возвращаемыми данными.
(структура)
Данные метрики для возврата. Также определяет, возвращает ли этот вызов данные только для одной метрики или выполняет ли он математическое выражение над значениями возвращаемых статистических данных метрики для создания нового временного ряда. Временной ряд — это последовательность точек данных, каждая из которых связана со временной меткой.
Дополнительную информацию и примеры см. в разделе «Настройка расширенных политик прогнозируемого масштабирования с использованием настраиваемых метрик» в руководстве пользователя Amazon EC2 Auto Scaling.
Id -> (строка)
MetricDataQuery объектов, указанных для одной политики масштабирования. Если вы выполняете математические выражения над этим набором данных, это имя представляет эти данные и может использоваться в качестве переменной в математическом выражении. Допустимые символы — буквы, цифры и знаки подчеркивания. Первый символ должен быть строчной буквой.Expression -> (строка)
Математическое выражение, которое нужно выполнить над возвращаемыми данными, если этот объект выполняет математическое выражение. В этом выражении можно использовать Id других метрик для ссылки на эти метрики, а также использовать Id других выражений для использования результата этих выражений.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
MetricStat -> (структура)
Информация о данных метрики для возврата.
Условие: В каждом объекте MetricDataQuery необходимо указать либо Expression, либо MetricStat, но не оба.
Metric -> (структура)
Метрика CloudWatch для возврата, включая имя метрики, пространство имен и измерения. Чтобы получить точное имя метрики, пространство имен и измерения, проверьте объект Metric, возвращаемый вызовом ListMetrics.
Namespace -> (строка)
MetricName -> (строка)
Dimensions -> (список)
Измерения для метрики. Список доступных измерений см. в документации Amazon Web Services, доступной в таблице Amazon Web Services-сервисов, публикующих метрики CloudWatch, в руководстве пользователя Amazon CloudWatch.
Условие: Если вы опубликовали метрику с измерениями, вы должны указать те же измерения в своей политике масштабирования.
(структура)
Описание измерения метрики.
Name -> (строка)
Value -> (строка)
Stat -> (строка)
Статистика для возврата. Она может включать любую статистику CloudWatch или расширенную статистику. Список допустимых значений см. в таблице «Статистики» в руководстве пользователя Amazon CloudWatch.
Наиболее часто используемые метрики для прогнозируемого масштабирования — Average и Sum.
Unit -> (строка)
Label -> (строка)
ReturnData -> (булево)
Указывает, нужно ли возвращать временные метки и исходные значения данных этой метрики.
Если вы используете математические выражения, укажите true для этого значения только для конечного математического выражения, на котором основана спецификация метрики. Вы должны указать false для ReturnData всех других метрик и выражений, используемых в спецификации метрики.
Если вы просто получаете метрики и не выполняете математических выражений, не указывайте ничего для ReturnData. Это установит значение по умолчанию (true).
Mode -> (строка)
ForecastOnly, если не указано иное.SchedulingBufferTime -> (целое число)
Время в секундах, на которое можно перенести время запуска экземпляра. Например, прогноз говорит о добавлении емкости в 10:00, и вы выбираете предварительный запуск экземпляров на 5 минут. В этом случае экземпляры будут запущены в 9:55. Цель — дать ресурсам время на подготовку. Запуск экземпляра EC2 может занять несколько минут. Фактическое время зависит от нескольких факторов, таких как размер экземпляра и наличие скриптов запуска.
Значение должно быть меньше длительности интервала прогноза в 3600 секунд (60 минут). По умолчанию 300 секунд, если не указано иное.
MaxCapacityBreachBehavior -> (строка)
Определяет поведение, которое должно применяться, если прогнозируемая емкость приближается к максимальной емкости группы Auto Scaling или превышает ее. По умолчанию HonorMaxCapacity, если не указано иное.
Доступные значения:
-
HonorMaxCapacity— Amazon EC2 Auto Scaling не может увеличить максимальную емкость группы, когда прогнозируемая емкость приближается к максимальной емкости или превышает ее. -
IncreaseMaxCapacity— Amazon EC2 Auto Scaling может увеличить максимальную емкость группы, когда прогнозируемая емкость приближается к максимальной емкости или превышает ее. Верхняя граница определяется прогнозируемой емкостью и значением дляMaxCapacityBuffer.
Предупреждение
Будьте осторожны при разрешении автоматического увеличения максимальной емкости. Это может привести к запуску большего числа экземпляров, чем ожидалось, если увеличенная максимальная емкость не контролируется и не управляется. Увеличенная максимальная емкость затем становится новой стандартной максимальной емкостью для группы Auto Scaling, пока вы вручную не обновите ее. Максимальная емкость не уменьшается автоматически до исходной максимальной.MaxCapacityBuffer -> (целое число)
Размер буфера емкости, используемого, когда прогнозируемая емкость близка к максимальной или превышает ее. Значение указывается в процентах от прогнозируемой емкости. Например, если буфер равен 10, это означает 10-процентный буфер, так что если прогнозируемая емкость составляет 50, а максимальная емкость — 40, то эффективная максимальная емкость будет 55.
Если установлено значение 0, Amazon EC2 Auto Scaling может масштабировать емкость выше максимальной, чтобы она была равна, но не превышала, прогнозируемую емкость.
Требуется, если свойство MaxCapacityBreachBehavior установлено в значение IncreaseMaxCapacity, и не может быть использовано в противном случае.
Синтаксис JSON:
{
"MetricSpecifications": [
{
"TargetValue": double,
"PredefinedMetricPairSpecification": {
"PredefinedMetricType": "ASGCPUUtilization"|"ASGNetworkIn"|"ASGNetworkOut"|"ALBRequestCount",
"ResourceLabel": "string"
},
"PredefinedScalingMetricSpecification": {
"PredefinedMetricType": "ASGAverageCPUUtilization"|"ASGAverageNetworkIn"|"ASGAverageNetworkOut"|"ALBRequestCountPerTarget",
"ResourceLabel": "string"
},
"PredefinedLoadMetricSpecification": {
"PredefinedMetricType": "ASGTotalCPUUtilization"|"ASGTotalNetworkIn"|"ASGTotalNetworkOut"|"ALBTargetGroupRequestCount",
"ResourceLabel": "string"
},
"CustomizedScalingMetricSpecification": {
"MetricDataQueries": [
{
"Id": "string",
"Expression": "string",
"MetricStat": {
"Metric": {
"Namespace": "string",
"MetricName": "string",
"Dimensions": [
{
"Name": "string",
"Value": "string"
}
...
]
},
"Stat": "string",
"Unit": "string"
},
"Label": "string",
"ReturnData": true|false
}
...
]
},
"CustomizedLoadMetricSpecification": {
"MetricDataQueries": [
{
"Id": "string",
"Expression": "string",
"MetricStat": {
"Metric": {
"Namespace": "string",
"MetricName": "string",
"Dimensions": [
{
"Name": "string",
"Value": "string"
}
...
]
},
"Stat": "string",
"Unit": "string"
},
"Label": "string",
"ReturnData": true|false
}
...
]
},
"CustomizedCapacityMetricSpecification": {
"MetricDataQueries": [
{
"Id": "string",
"Expression": "string",
"MetricStat": {
"Metric": {
"Namespace": "string",
"MetricName": "string",
"Dimensions": [
{
"Name": "string",
"Value": "string"
}
...
]
},
"Stat": "string",
"Unit": "string"
},
"Label": "string",
"ReturnData": true|false
}
...
]
}
}
...
],
"Mode": "ForecastAndScale"|"ForecastOnly",
"SchedulingBufferTime": integer,
"MaxCapacityBreachBehavior": "HonorMaxCapacity"|"IncreaseMaxCapacity",
"MaxCapacityBuffer": integer
}
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения перепишут значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с использованием значения, предоставленного в JSON, так как строка будет интерпретироваться буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса API. Если предоставлено значение без значения или значение input, выводит JSON-входной пример, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено значение yaml-input, будет выведен пример YAML-входа, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно проверяет входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет нестабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (логическое значение)
Включить отладку регистрации.
--endpoint-url (строка)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение по умолчанию по проверке SSL-сертификатов.
--no-paginate (логическое значение)
Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определённый профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию данного инструмента.
--color (строка)
Включение/выключение цветного вывода.
- on
- off
- auto
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификата CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет выполняться без блокировки и без таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как закодированная строка base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающего двоичный блок fileb://, всегда будет обрабатываться как двоичный и использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить кли-паджинатор для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запросить параметры входных данных CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматический запрос параметров входных данных CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в Руководстве пользователя AWS CLI.
За исключением случаев, когда оговаривается иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной оболочки. См. Раздел «Использование кавычек со строками» в Руководстве пользователя AWS CLI.
Добавление политики масштабирования по целевому показателю к группе Auto Scaling
Следующий пример применяет политику масштабирования по целевому показателю к указанной группе Auto Scaling. Вывод содержит ARN и имена двух созданных за вас сигнальных тревог CloudWatch. Если политика масштабирования с тем же именем уже существует, она будет перезаписана новой политикой масштабирования.
aws autoscaling put-scaling-policy --auto-scaling-group-name my-asg \
--policy-name alb1000-target-tracking-scaling-policy \
--policy-type TargetTrackingScaling \
--target-tracking-configuration file://config.json
Содержимое config.json:
{
"TargetValue": 1000.0,
"PredefinedMetricSpecification": {
"PredefinedMetricType": "ALBRequestCountPerTarget",
"ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff"
}
}
Вывод:
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/alb1000-target-tracking-scaling-policy",
"Alarms": [
{
"AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e",
"AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e"
},
{
"AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2",
"AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2"
}
]
}
Дополнительные примеры см. в разделе «Примеры политик масштабирования для AWS Command Line Interface (AWS CLI)» в Руководстве пользователя Amazon EC2 Auto Scaling.
Вывод
PolicyARN -> (строка)
Alarms -> (список)
Сигнальные тревоги CloudWatch, созданные для политики масштабирования по целевому показателю.
(структура)
Описание сигнальной тревоги.
AlarmName -> (строка)
AlarmARN -> (строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.