Spec-Zone.ru › AWS CLI v2

[ aws . ecs ]

создание-набора-задач

Описание

Создает набор задач в указанном кластере и сервисе. Используется, когда сервис использует тип контроллера развертывания EXTERNAL. Дополнительную информацию см. в руководстве по Amazon ECS, раздел типы развертывания Amazon ECS.

Примечание

21 марта 2024 года было внесено изменение для разрешения ревизии определения задачи перед авторизацией. Если ревизия определения задачи не указана, авторизация будет выполнена с использованием последней ревизии определения задачи.

Дополнительную информацию о максимальном количестве наборов задач и других квотах см. в руководстве по Amazon ECS, раздел квоты сервисов Amazon ECS.

См. также: Документация API AWS

Синтаксис

  create-task-set
--service <value>
--cluster <value>
[--external-id <value>]
--task-definition <value>
[--network-configuration <value>]
[--load-balancers <value>]
[--service-registries <value>]
[--launch-type <value>]
[--capacity-provider-strategy <value>]
[--platform-version <value>]
[--scale <value>]
[--client-token <value>]
[--tags <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]

Параметры

--service (строка)

Короткое имя или полное Amazon Resource Name (ARN) сервиса, в котором нужно создать набор задач.

--cluster (строка)

Короткое имя или полное Amazon Resource Name (ARN) кластера, в котором размещается сервис для создания набора задач.

--external-id (строка)

Необязательная, не уникальная метка, идентифицирующая этот набор задач во внешних системах. Если набор задач связан с реестром службы обнаружения, задачи в этом наборе задач будут иметь атрибут ECS_TASK_SET_EXTERNAL_ID Cloud Map, установленный на указанное значение.

--task-definition (строка)

Определение задачи для задач в наборе задач для использования. Если ревизия не указана, используется последняя ревизия ACTIVE.

--network-configuration (структура)

Объект, представляющий конфигурацию сети для набора задач.

awsvpcConfiguration -> (структура)

Подсети VPC и группы безопасности, связанные с задачей.

Примечание

Все указанные подсети и группы безопасности должны принадлежать одному VPC.

subnets -> (список)

Идентификаторы подсетей, связанные с задачей или сервисом. Можно указать до 16 подсетей.

Примечание

Все указанные подсети должны принадлежать одному VPC.

(строка)

securityGroups -> (список)

Идентификаторы групп безопасности, связанные с задачей или сервисом. Если вы не указываете группу безопасности, используется группа безопасности по умолчанию для VPC. Можно указать до 5 групп безопасности.

Примечание

Все указанные группы безопасности должны принадлежать одному VPC.

(строка)

assignPublicIp -> (строка)

Указывает, получает ли эластичный сетевой интерфейс задачи общедоступный IP-адрес.

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

  • При использовании create-service или update-service значение по умолчанию равно DISABLED.
  • Когда сервис deploymentController находится в режиме ECS, значение должно быть DISABLED.

Сокращенный синтаксис:

awsvpcConfiguration={subnets=[string,string],securityGroups=[string,string],assignPublicIp=string}

Синтаксис JSON:

{
  "awsvpcConfiguration": {
    "subnets": ["string", ...],
    "securityGroups": ["string", ...],
    "assignPublicIp": "ENABLED"|"DISABLED"
  }
}

--load-balancers (список)

Объект балансировщика нагрузки, представляющий балансировщик нагрузки для использования с набором задач. Поддерживаемые типы балансировщиков нагрузки — балансировщик приложений или балансировщик сети.

(структура)

Настройка балансировщика нагрузки для использования с сервисом или набором задач.

При добавлении, обновлении или удалении конфигурации балансировщика нагрузки Amazon ECS запускает новое развертывание с обновленной конфигурацией Elastic Load Balancing. Это приводит к регистрации и отмене регистрации задач в балансировщиках нагрузки.

Рекомендуется проверить это в тестовой среде перед обновлением конфигурации Elastic Load Balancing.

Для сервисов, использующих несколько групп целевых серверов, требуется роль с предоставленными правами. Дополнительную информацию см. в руководстве по Amazon Elastic Container Service, раздел Использование ролей с предоставленными правами.

targetGroupArn -> (строка)

Полное Amazon Resource Name (ARN) группы (или групп) целевых серверов Elastic Load Balancing, связанных с сервисом или набором задач.

ARN группы целевых серверов указывается только при использовании балансировщика приложений или балансировщика сети.

Для сервисов, использующих контроллер развертывания ECS, можно указать одну или несколько групп целевых серверов. Дополнительную информацию см. в руководстве по Amazon Elastic Container Service, раздел Регистрация нескольких групп целевых серверов с сервисом.

Для сервисов, использующих контроллер развертывания CODE_DEPLOY, необходимо определить две группы целевых серверов для балансировщика нагрузки. Дополнительную информацию см. в руководстве по Amazon Elastic Container Service, раздел Развертывание синего/зеленого с CodeDeploy.

Предупреждение

Если определение задачи вашего сервиса использует режим сети awsvpc, вы должны выбрать ip в качестве типа целевого сервера, а не instance. Сделайте это при создании групп целевых серверов, потому что задачи, использующие режим сети awsvpc, связаны с эластичным сетевым интерфейсом, а не с экземпляром Amazon EC2. Этот режим сети необходим для типа запуска Fargate.

loadBalancerName -> (строка)

Имя балансировщика нагрузки для сопоставления с Amazon ECS сервисом или набором задач.

Если вы используете балансировщик приложений или балансировщик сети, параметр имени балансировщика нагрузки следует опустить.

containerName -> (строка)

Имя контейнера (как оно отображается в определении контейнера) для сопоставления с балансировщиком нагрузки.

Имя контейнера необходимо указать при настройке группы целевых серверов для балансировщика нагрузки Amazon ECS.

containerPort -> (целое число)

Порт в контейнере для сопоставления с балансировщиком нагрузки. Этот порт должен соответствовать containerPort в определении задачи, которую используют задачи в сервисе. Для задач, использующих тип запуска EC2, экземпляр контейнера, на котором они запускаются, должен разрешать входящий трафик на hostPort отображения портов.

Сокращенный синтаксис:

targetGroupArn=string,loadBalancerName=string,containerName=string,containerPort=integer ...

Синтаксис JSON:

[
  {
    "targetGroupArn": "string",
    "loadBalancerName": "string",
    "containerName": "string",
    "containerPort": integer
  }
  ...
]

--service-registries (список)

Подробные сведения о реестрах службы обнаружения, которые нужно назначить этому набору задач. Дополнительную информацию см. в разделе Служба обнаружения.

(структура)

Подробные сведения о реестре службы.

Каждый сервис может быть связан с одним реестром службы. Несколько реестров служб для каждого сервиса не поддерживаются.

При добавлении, обновлении или удалении конфигурации реестров службы Amazon ECS запускает новое развертывание. Новые задачи регистрируются и отменяются в реестре службы, обновленном в соответствии с конфигурацией.

registryArn -> (строка)

Amazon Resource Name (ARN) реестра службы. В настоящее время поддерживается реестр службы Cloud Map. Дополнительную информацию см. в разделе CreateService.

port -> (целое число)

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

containerName -> (строка)

Значение имени контейнера, используемое для службы обнаружения. Оно уже указано в определении задачи. Если определение задачи вашей задачи сервиса использует режим сети bridge или host, необходимо указать комбинацию containerName и containerPort из определения задачи. Если определение задачи вашей задачи сервиса использует режим сети awsvpc и используется запись SRV DNS-записи, необходимо указать либо комбинацию containerName и containerPort, либо значение port. Однако нельзя указать оба.

containerPort -> (целое число)

Значение порта, используемое для вашей службы обнаружения. Оно уже указано в определении задачи. Если определение задачи, которое использует ваша задача сервиса, использует режим сети bridge или host, необходимо указать комбинацию containerName и containerPort из определения задачи. Если определение задачи, которое использует ваша задача сервиса, использует режим сети awsvpc и используется запись SRV DNS-записи, необходимо указать либо комбинацию containerName и containerPort, либо значение port. Однако нельзя указать оба.

Сокращенный синтаксис:

registryArn=string,port=integer,containerName=string,containerPort=integer ...

Синтаксис JSON:

[
  {
    "registryArn": "string",
    "port": integer,
    "containerName": "string",
    "containerPort": integer
  }
  ...
]

--launch-type (строка)

Тип запуска, который используют новые задачи в наборе задач. Дополнительную информацию см. в руководстве по Amazon ECS, раздел типы запуска Amazon ECS.

Если указан launchType, параметр capacityProviderStrategy должен быть опущен.

Возможные значения:

  • EC2
  • FARGATE
  • EXTERNAL

--capacity-provider-strategy (список)

Стратегия поставщика ресурсов для использования в наборе задач.

Стратегия поставщика ресурсов состоит из одного или нескольких поставщиков ресурсов вместе с base и weight для их назначения. Поставщик ресурсов должен быть связан с кластером, чтобы использоваться в стратегии поставщика ресурсов. API PutClusterCapacityProviders используется для связывания поставщика ресурсов с кластером. Можно использовать только поставщиков ресурсов со статусом ACTIVE или UPDATING.

Если указана capacityProviderStrategy, параметр launchType должен быть опущен. Если не указаны capacityProviderStrategy или launchType, используется значение defaultCapacityProviderStrategy для кластера.

Если указывается поставщик ресурсов, использующий группу автоматического масштабирования, поставщик ресурсов должен быть уже создан. Новые поставщики ресурсов могут быть созданы с помощью операции API CreateCapacityProviderProvider.

Для использования поставщика ресурсов Fargate укажите либо поставщиков ресурсов FARGATE или FARGATE_SPOT. Поставщики ресурсов Fargate доступны для всех учетных записей и должны быть связаны с кластером для использования.

Операция API PutClusterCapacityProviders используется для обновления списка доступных поставщиков ресурсов для кластера после его создания.

(структура)

Подробности стратегии поставщика ресурсов. Стратегию поставщика ресурсов можно задать при использовании API RunTask или CreateCluster или в качестве стратегии по умолчанию для кластера с помощью API CreateCluster.

Можно использовать только поставщиков ресурсов, которые уже связаны с кластером и имеют статус ACTIVE или UPDATING. API PutClusterCapacityProviders используется для связывания поставщика ресурсов с кластером.

Если указывается поставщик ресурсов, использующий группу автоматического масштабирования, поставщик ресурсов должен быть уже создан. Новые поставщики ресурсов группы автоматического масштабирования могут быть созданы с помощью операции API CreateClusterCapacityProvider.

Для использования поставщика ресурсов Fargate укажите либо поставщиков ресурсов FARGATE или FARGATE_SPOT. Поставщики ресурсов Fargate доступны для всех учетных записей и должны быть связаны с кластером для использования в стратегии поставщика ресурсов.

С помощью FARGATE_SPOT вы можете запускать задачи, устойчивые к прерываниям, со скидкой по сравнению с ценой FARGATE. FARGATE_SPOT запускает задачи на свободных вычислительных ресурсах. Когда Amazon Web Services нуждается в этих ресурсах обратно, ваши задачи прерываются с двухминутным предупреждением. FARGATE_SPOT поддерживает задачи Linux с архитектурой X86_64 на версии платформы 1.3.0 или более поздней. FARGATE_SPOT поддерживает задачи Linux с архитектурой ARM64 на версии платформы 1.4.0 или более поздней.

Стратегия поставщика ресурсов может содержать не более 20 поставщиков ресурсов.

capacityProvider -> (строка)

Короткое имя поставщика ресурсов.

weight -> (целое число)

Значение weight определяет относительный процент от общего количества запускаемых задач, которые должны использовать указанного поставщика ресурсов. Значение weight учитывается после значения base, если оно определено.

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

Пример использования весов — определение стратегии, которая содержит двух поставщиков ресурсов, оба с весом 1, тогда, когда значение base выполнено, задачи будут распределены равномерно между двумя поставщиками ресурсов. Используя ту же логику, если вы укажете вес 1 для capacityProviderA и вес 4 для capacityProviderB, то для каждой задачи, запущенной с помощью capacityProviderA, четыре задачи будут использоваться capacityProviderB.

base -> (целое число)

Значение base определяет минимальное количество задач, которые должны быть запущены на указанном поставщике ресурсов. Только один поставщик ресурсов в стратегии поставщиков ресурсов может иметь определенное значение base. Если значение не указано, используется значение по умолчанию 0.

Сокращенная синтаксическая запись:

capacityProvider=string,weight=integer,base=integer ...

Синтаксис JSON:

[
  {
    "capacityProvider": "string",
    "weight": integer,
    "base": integer
  }
  ...
]

--platform-version (строка)

Версия платформы, используемая задачами в наборе задач. Версия платформы указывается только для задач, использующих тип запуска Fargate. Если она не указана, используется версия платформы LATEST.

--scale (структура)

Поплавковая точка процента от желаемого числа задач, которые следует разместить и удерживать в наборе задач.

value -> (двойное число)

Значение, указанное в процентах от общего числа desiredCount сервиса, для масштабирования набора задач. Допустимые значения — числа от 0 до 100.

unit -> (строка)

Единица измерения для значения масштабирования.

Сокращенная синтаксическая запись:

value=double,unit=string

Синтаксис JSON:

{
  "value": double,
  "unit": "PERCENT"
}

--client-token (строка)

Идентификатор, который вы предоставляете для обеспечения идемпотентности запроса. Он должен быть уникальным и регистрозависимым. Разрешается до 36 ASCII-символов в диапазоне от 33 до 126 (включительно).

--tags (список)

Метаданные, которые вы применяете к набору задач, чтобы помочь вам их классифицировать и организовать. Каждый тег состоит из ключа и необязательного значения. Вы определяет их оба. При удалении сервиса теги также удаляются.

Применяются следующие основные ограничения к тегам:

  • Максимальное количество тегов на ресурс — 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа — 128 Unicode-символов в UTF-8
  • Максимальная длина значения — 256 Unicode-символов в UTF-8
  • Если ваша схема тегов используется в нескольких сервисах и ресурсах, помните, что другие сервисы могут иметь ограничения на допустимые символы. В целом, допустимыми символами являются: буквы, цифры и пробелы, отображаемые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws: , AWS: или любые комбинации верхнего и нижнего регистров этих значений в качестве префикса для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются при подсчете лимита тегов на ресурс.

(структура)

Метаданные, которые вы применяете к ресурсу, чтобы помочь вам их классифицировать и организовать. Каждый тег состоит из ключа и необязательного значения. Вы определяет их оба.

Применяются следующие основные ограничения к тегам:

  • Максимальное количество тегов на ресурс — 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа — 128 Unicode-символов в UTF-8
  • Максимальная длина значения — 256 Unicode-символов в UTF-8
  • Если ваша схема тегов используется в нескольких сервисах и ресурсах, помните, что другие сервисы могут иметь ограничения на допустимые символы. В целом, допустимыми символами являются: буквы, цифры и пробелы, отображаемые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws: , AWS: или любые комбинации верхнего и нижнего регистров этих значений в качестве префикса для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются при подсчете лимита тегов на ресурс.

key -> (строка)

Часть пары ключ-значение, образующей тег. key — это общий ярлык, который действует как категория для более конкретных значений тегов.

value -> (строка)

Необязательная часть пары ключ-значение, образующей тег. value служит описателем внутри категории тега (ключ).

Сокращенная синтаксическая запись:

key=string,value=string ...

Синтаксис JSON:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--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 (boolean)

Включить отладку.

--endpoint-url (string)

Переопределить URL команды указанным URL.

--no-verify-ssl (boolean)

По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.

--no-paginate (boolean)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (string)

Стиль форматирования вывода команды.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (string)

Запрос JMESPath для фильтрации данных ответа.

--profile (string)

Использовать определённый профиль из файла учетных данных.

--region (string)

Регион для использования. Переопределяет параметры из конфигурации/окружения.

--version (string)

Отобразить версию этого инструмента.

--color (string)

Включить/отключить вывод в цвете.

  • on
  • off
  • auto

--no-sign-request (boolean)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент указан.

--ca-bundle (string)

Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет параметры из конфигурации/окружения.

--cli-read-timeout (int)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (int)

Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (string)

Стиль форматирования, используемый для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут представлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI версии 1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающего двоичный блок fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настроек cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (boolean)

Отключить пейджер CLI для вывода.

--cli-auto-prompt (boolean)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (boolean)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в Руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.

Для создания набора задач

Следующий create-task-set пример создаёт набор задач в сервисе, использующем внешний контроллер развертывания.

aws ecs create-task-set \
    --cluster MyCluster \
    --service MyService \
    --task-definition MyTaskDefinition:2 \
    --network-configuration "awsvpcConfiguration={subnets=[subnet-12344321],securityGroups=[sg-12344321]}"

Вывод:

{
    "taskSet": {
        "id": "ecs-svc/1234567890123456789",
        "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789",
        "status": "ACTIVE",
        "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/MyTaskDefinition:2",
        "computedDesiredCount": 0,
        "pendingCount": 0,
        "runningCount": 0,
        "createdAt": 1557128360.711,
        "updatedAt": 1557128360.711,
        "launchType": "EC2",
        "networkConfiguration": {
            "awsvpcConfiguration": {
                "subnets": [
                    "subnet-12344321"
                ],
                "securityGroups": [
                    "sg-12344321"
                ],
                "assignPublicIp": "DISABLED"
            }
        },
        "loadBalancers": [],
        "serviceRegistries": [],
        "scale": {
            "value": 0.0,
            "unit": "PERCENT"
        },
        "stabilityStatus": "STABILIZING",
        "stabilityStatusAt": 1557128360.711
    }
}

Вывод

taskSet -> (структура)

Информация о наборе задач Amazon ECS в развертывании CodeDeploy или EXTERNAL. Набор задач включает такие детали, как желаемое количество задач, количество работающих задач и то, обслуживает ли набор задач трафик производства.

id -> (строка)

Идентификатор набора задач.

taskSetArn -> (строка)

Amazon Resource Name (ARN) набора задач.

serviceArn -> (строка)

Amazon Resource Name (ARN) сервиса, в котором существует набор задач.

clusterArn -> (строка)

Amazon Resource Name (ARN) кластера, в котором существует сервис, содержащий набор задач.

startedBy -> (строка)

Тег, указанный при запуске набора задач. Если развертывание CodeDeploy создало набор задач, параметр startedBy имеет значение CODE_DEPLOY. Если набор задач был создан внешним развертыванием, поле startedBy не используется.

externalId -> (строка)

Внешний идентификатор, связанный с набором задач.

Если развертывание CodeDeploy создало набор задач, параметр externalId содержит ID развертывания CodeDeploy.

Если набор задач создан для внешнего развертывания и связан с реестром службы обнаружения, параметр externalId содержит атрибут ECS_TASK_SET_EXTERNAL_ID Cloud Map.

status -> (строка)

Статус набора задач. Ниже описано каждое состояние.

PRIMARY

Набор задач обслуживает трафик производства.

ACTIVE

Набор задач не обслуживает трафик производства.

DRAINING

Задачи в наборе задач останавливаются, а соответствующие целевые объекты дерегистрируются из группы целевых объектов.

taskDefinition -> (строка)

Определения задачи, используемые набором задач.

computedDesiredCount -> (целое число)

Вычисленное желаемое количество задач для набора задач. Это вычисляется путем умножения desiredCount сервиса на процентный показатель scale набора задач. Результат всегда округляется вверх. Например, если вычисленное желаемое количество задач равно 1,2, оно округляется до 2 задач.

pendingCount -> (целое число)

Количество задач в наборе задач, которые находятся в состоянии PENDING во время развертывания. Задача в состоянии PENDING готовится к переходу в состояние RUNNING. Набор задач переходит в состояние PENDING, когда он запускается впервые или когда он перезапускается после состояния STOPPED.

runningCount -> (целое число)

Количество задач в наборе задач, которые находятся в состоянии RUNNING во время развертывания. Задача в состоянии RUNNING запущена и готова к использованию.

createdAt -> (временная метка)

Временная метка Unix для времени создания набора задач.

updatedAt -> (временная метка)

Временная метка Unix для времени последнего обновления набора задач.

launchType -> (строка)

Тип запуска, используемый задачами в наборе задач. Более подробная информация приведена в Руководстве разработчика Amazon Elastic Container Service.

capacityProviderStrategy -> (список)

Стратегия поставщика емкости, связанная с набором задач.

(структура)

Подробности стратегии поставщика емкости. Стратегия поставщика емкости может быть задана при использовании API RunTask или CreateCluster или в качестве стратегии поставщика емкости по умолчанию для кластера с API CreateCluster.

Можно использовать только поставщиков емкости, которые уже связаны с кластером и имеют статус ACTIVE или UPDATING. Для связывания поставщика емкости с кластером используется API PutClusterCapacityProviders.

Если задан поставщик емкости, использующий группу Auto Scaling, поставщик емкости должен быть уже создан. Новые поставщики емкости группы Auto Scaling могут быть созданы с помощью операции API CreateClusterCapacityProvider.

Для использования поставщика емкости Fargate укажите поставщиков емкости FARGATE или FARGATE_SPOT. Поставщики емкости Fargate доступны всем учетным записям и должны быть связаны с кластером для использования в стратегии поставщика емкости.

С помощью FARGATE_SPOT вы можете запускать задачи, устойчивые к прерываниям, со скидкой по сравнению с ценой FARGATE. FARGATE_SPOT запускает задачи на свободных вычислительных ресурсах. Когда Amazon Web Services нуждается в возвращении ресурсов, ваши задачи прерываются с двухминутным предупреждением. FARGATE_SPOT поддерживает задачи Linux с архитектурой X86_64 на платформе версии 1.3.0 или более поздней. FARGATE_SPOT поддерживает задачи Linux с архитектурой ARM64 на платформе версии 1.4.0 или более поздней.

Стратегия поставщика емкости может содержать не более 20 поставщиков емкости.

capacityProvider -> (строка)

Короткое имя поставщика емкости.

weight -> (целое число)

Значение weight определяет относительный процент общего количества запускаемых задач, которые должны использовать указанного поставщика емкости. Значение weight учитывается после удовлетворения значения base, если оно определено.

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

Пример сценария использования весов — определение стратегии, содержащей двух поставщиков емкости, и оба имеют вес 1, затем, когда base удовлетворено, задачи будут распределены равномерно между двумя поставщиками емкости. Используя ту же логику, если вы задаете вес 1 для capacityProviderA и вес 4 для capacityProviderB, то для каждой задачи, запущенной с помощью capacityProviderA, четыре задачи будут использовать capacityProviderB.

base -> (целое число)

Значение base определяет минимальное количество задач, которые нужно запустить на указанном поставщике емкости. Только один поставщик емкости в стратегии поставщика емкости может иметь заданное base. Если значение не указано, используется значение по умолчанию 0.

platformVersion -> (строка)

Версия платформы Fargate, на которой выполняются задачи в наборе задач. Версия платформы указывается только для задач, выполняемых в Fargate. Более подробная информация приведена в Руководстве разработчика Amazon Elastic Container Service.

platformFamily -> (строка)

Операционная система, на которой выполняются ваши задачи в наборе. Семейство платформ указывается только для задач, использующих тип запуска Fargate.

Все задачи в наборе должны иметь одинаковое значение.

networkConfiguration -> (структура)

Настройка сети для набора задач.

awsvpcConfiguration -> (структура)

VPC подсети и группы безопасности, связанные с задачей.

Примечание

Все указанные подсети и группы безопасности должны быть из одной VPC.

subnets -> (список)

Идентификаторы подсетей, связанные с задачей или сервисом. Можно указать до 16 подсетей.

Примечание

Все указанные подсети должны быть из одной VPC.

(строка)

securityGroups -> (список)

Идентификаторы групп безопасности, связанные с задачей или сервисом. Если вы не указываете группу безопасности, используется группа безопасности по умолчанию для VPC. Можно указать до 5 групп безопасности.

Примечание

Все указанные группы безопасности должны быть из одной VPC.

(строка)

assignPublicIp -> (строка)

Получает ли эластический интерфейс сети задачи общедоступный IP-адрес.

Рассмотрите следующие моменты при установке этого значения:

  • При использовании create-service или update-service значение по умолчанию — DISABLED.
  • Когда сервис deploymentController находится в состоянии ECS, значение должно быть DISABLED.

loadBalancers -> (список)

Подробности о балансировщике нагрузки, используемом с набором задач.

(структура)

Настройка балансировщика нагрузки для использования с сервисом или набором задач.

При добавлении, обновлении или удалении конфигурации балансировщика нагрузки Amazon ECS запускает новый развертывание с обновленной конфигурацией Elastic Load Balancing. Это приводит к регистрации и отмене регистрации задач с балансировщиками нагрузки.

Рекомендуется проверить это в тестовой среде перед обновлением конфигурации Elastic Load Balancing.

Для сервисов, использующих несколько групп целей, требуется роль, связанная с сервисом. Дополнительную информацию см. в разделе Использование ролей, связанных с сервисом, в руководстве разработчика Amazon Elastic Container Service.

targetGroupArn -> (строка)

Полный Amazon Resource Name (ARN) группы (или групп) целей Elastic Load Balancing, связанной(ых) с сервисом или набором задач.

ARN группы целей указывается только при использовании Application Load Balancer или Network Load Balancer.

Для сервисов, использующих ECS контроллер развертывания, можно указать одну или несколько групп целей. Дополнительную информацию см. в разделе Регистрация нескольких групп целей с сервисом в руководстве разработчика Amazon Elastic Container Service.

Для сервисов, использующих CODE_DEPLOY контроллер развертывания, необходимо определить две группы целей для балансировщика нагрузки. Дополнительную информацию см. в разделе Развертывание «синий/зеленый» с CodeDeploy в руководстве разработчика Amazon Elastic Container Service.

Предупреждение

Если определение задачи вашего сервиса использует awsvpc режим сети, необходимо выбрать ip в качестве типа цели, а не instance. Сделайте это при создании групп целей, так как задачи, использующие awsvpc режим сети, связаны с интерфейсом эластичной сети, а не с экземпляром Amazon EC2. Этот режим сети необходим для типа запуска Fargate.

loadBalancerName -> (строка)

Имя балансировщика нагрузки, который нужно связать с сервисом или набором задач Amazon ECS.

Если вы используете Application Load Balancer или Network Load Balancer, параметр имени балансировщика нагрузки следует опустить.

containerName -> (строка)

Имя контейнера (как оно отображается в определении контейнера), которое нужно связать с балансировщиком нагрузки.

Имя контейнера необходимо указать при настройке группы целей для балансировщика нагрузки Amazon ECS.

containerPort -> (целое число)

Порт в контейнере, который нужно связать с балансировщиком нагрузки. Этот порт должен соответствовать containerPort в определении задачи, используемом задачами в сервисе. Для задач, использующих тип запуска EC2, экземпляр контейнера, на котором они запускаются, должен допускать входящий трафик на hostPort отображения порта.

serviceRegistries -> (список)

Подробности регистров обнаружения сервиса, которые нужно назначить этому набору задач. Дополнительную информацию см. в разделе Обнаружение сервиса.

(структура)

Подробности реестра сервиса.

Каждый сервис может быть связан с одним реестром сервиса. Несколько регистров сервиса для каждого сервиса не поддерживаются.

При добавлении, обновлении или удалении конфигурации регистров сервиса Amazon ECS запускает новое развертывание. Новые задачи регистрируются и отменяют регистрацию в обновленной конфигурации реестра сервиса.

registryArn -> (строка)

Amazon Resource Name (ARN) реестра сервиса. В настоящее время поддерживается реестр сервиса Cloud Map. Дополнительную информацию см. в разделе CreateService.

port -> (целое число)

Значение порта, используемое, если служба обнаружения сервиса указала запись SRV. Этот параметр может использоваться, если используются как awsvpc режим сети, так и записи SRV.

containerName -> (строка)

Значение имени контейнера, которое следует использовать для вашей службы обнаружения сервиса. Оно уже указано в определении задачи. Если определение задачи, используемой вашей задачей сервиса, использует bridge или host режим сети, необходимо указать комбинацию containerName и containerPort из определения задачи. Если определение задачи, используемой вашей задачей сервиса, использует awsvpc режим сети и используется запись SRV DNS, необходимо указать комбинацию containerName и containerPort или значение port. Однако оба значения нельзя указать.

containerPort -> (целое число)

Значение порта, которое следует использовать для вашей службы обнаружения сервиса. Оно уже указано в определении задачи. Если определение задачи, используемой вашей задачей сервиса, использует bridge или host режим сети, необходимо указать комбинацию containerName и containerPort из определения задачи. Если определение задачи, используемой вашей задачей сервиса, использует awsvpc режим сети и используется запись SRV DNS, необходимо указать комбинацию containerName и containerPort или значение port. Однако оба значения нельзя указать.

scale -> (структура)

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

value -> (двойное)

Значение, указанное в процентах от общего числа desiredCount сервиса, для масштабирования набора задач. Допустимые значения — числа от 0 до 100.

unit -> (строка)

Единица измерения для значения масштабирования.

stabilityStatus -> (строка)

Статус стабильности. Это указывает, достиг ли набор задач стабильного состояния. Если выполнены следующие условия, набор задач находится в состоянии STEADY_STATE:

  • Количество задач runningCount равно computedDesiredCount.
  • pendingCount равно 0.
  • Нет задач, выполняемых на экземплярах контейнеров в состоянии DRAINING.
  • Все задачи сообщают о здоровом состоянии от балансировщиков нагрузки, обнаружения сервиса и проверок состояния контейнера.

Если какие-либо из этих условий не выполнены, статус стабильности возвращает STABILIZING.

stabilityStatusAt -> (отметка времени)

Маркер Unix для времени, когда был получен статус стабильности набора задач.

tags -> (список)

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

Применяются следующие базовые ограничения к тегам:

  • Максимальное количество тегов на ресурс - 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа - 128 символов Юникода в UTF-8
  • Максимальная длина значения - 256 символов Юникода в UTF-8
  • Если ваша схема тегов используется в нескольких сервисах и ресурсах, помните, что другие сервисы могут иметь ограничения на разрешенные символы. В целом разрешены буквы, цифры, пробелы, представляемые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws: , AWS: или любую комбинацию верхнего и нижнего регистра таких префиксов для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются в вашем лимите тегов на ресурс.

(структура)

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

Применяются следующие базовые ограничения к тегам:

  • Максимальное количество тегов на ресурс - 50
  • Для каждого ресурса каждый ключ тега должен быть уникальным, и каждый ключ тега может иметь только одно значение.
  • Максимальная длина ключа - 128 символов Юникода в UTF-8
  • Максимальная длина значения - 256 символов Юникода в UTF-8
  • Если ваша схема тегов используется в нескольких сервисах и ресурсах, помните, что другие сервисы могут иметь ограничения на разрешенные символы. В целом разрешены буквы, цифры, пробелы, представляемые в UTF-8, а также следующие символы: + - = . _ : / @.
  • Ключи и значения тегов чувствительны к регистру.
  • Не используйте aws: , AWS: или любую комбинацию верхнего и нижнего регистра таких префиксов для ключей или значений, так как они зарезервированы для использования Amazon Web Services. Вы не можете редактировать или удалять ключи или значения тегов с этим префиксом. Теги с этим префиксом не учитываются в вашем лимите тегов на ресурс.

key -> (строка)

Одна часть пары ключ-значение, составляющей тег. key — это общая метка, которая действует как категория для более конкретных значений тегов.

value -> (строка)

Необязательная часть пары ключ-значение, составляющей тег. value служит описанием внутри категории тега (ключ).

fargateEphemeralStorage -> (структура)

Настройки временного хранилища Fargate для набора задач.

kmsKeyId -> (строка)

Укажите идентификатор ключа управления ключами (Key Management Service), чтобы зашифровать временное хранилище для развертывания.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

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