Spec-Zone.ru › AWS CLI v2

[ aws . ecs ]

describe-services

Описание

Описывает указанные службы, работающие в вашем кластере.

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

Синтаксис

  describe-services
[--cluster <value>]
--services <value>
[--include <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]

Параметры

--cluster (строка)

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

--services (список)

Список служб, которые нужно описать. Вы можете указать до 10 служб для описания в одной операции.

(строка)

Синтаксис:

"string" "string" ...

--include (список)

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

(строка)

Синтаксис:

"string" "string" ...

Where valid values are:
  TAGS

--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 для вывода.

--cli-auto-prompt (булево)

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

--no-cli-auto-prompt (булево)

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

Примеры

Примечание

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

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

Для описания службы

Следующий describe-services пример извлекает данные для my-http-service службы в стандартном кластере.

aws ecs describe-services --services my-http-service

Вывод:

{
    "services": [
        {
            "status": "ACTIVE",
            "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:1",
            "pendingCount": 0,
            "loadBalancers": [],
            "desiredCount": 10,
            "createdAt": 1466801808.595,
            "serviceName": "my-http-service",
            "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default",
            "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/my-http-service",
            "deployments": [
                {
                    "status": "PRIMARY",
                    "pendingCount": 0,
                    "createdAt": 1466801808.595,
                    "desiredCount": 10,
                    "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:1",
                    "updatedAt": 1428326312.703,
                    "id": "ecs-svc/1234567890123456789",
                    "runningCount": 10
                }
            ],
            "events": [
                {
                    "message": "(service my-http-service) has reached a steady state.",
                    "id": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
                    "createdAt": 1466801812.435
                }
            ],
            "runningCount": 10
        }
    ],
    "failures": []
}

Для получения дополнительной информации см. Службы в Руководстве разработчика Amazon ECS.

Вывод

services -> (список)

Список описанных сервисов.

(структура)

Подробная информация о сервисе в кластере.

serviceArn -> (строка)

Идентификатор ARN сервиса. Дополнительную информацию о формате ARN см. в разделе «Amazon Resource Name (ARN)» в руководстве для разработчиков Amazon ECS.

serviceName -> (строка)

Имя вашего сервиса. Допускается до 255 символов (заглавные и строчные буквы, цифры, символы подчеркивания и дефисы). Имена сервисов должны быть уникальными в рамках кластера. Однако вы можете иметь сервисы с одинаковыми именами в нескольких кластерах в одной области или в разных областях.

clusterArn -> (строка)

Amazon Resource Name (ARN) кластера, в котором размещается служба.

loadBalancers -> (список)

Список объектов балансировщика нагрузки Elastic Load Balancing. Он содержит имя балансировщика нагрузки, имя контейнера и порт контейнера для доступа через балансировщик. Имя контейнера — такое, как оно отображается в определении контейнера.

(структура)

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

При добавлении, обновлении или удалении конфигурации балансировщика нагрузки Amazon ECS запускает новую развертку с обновленной конфигурацией 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 контроллер развертывания, необходимо определить две целевые группы для балансировщика нагрузки. Дополнительную информацию см. в руководстве для разработчиков Amazon Elastic Container Service в разделе «Развертывание «синий/зеленый» с CodeDeploy».

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

Если определение задачи вашего сервиса использует 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. Однако вы не можете указать оба.

status -> (строка)

Состояние сервиса. Допустимые значения: ACTIVE , DRAINING или INACTIVE.

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

Желаемое количество экземпляров определения задачи, которые должны продолжаться в службе. Это значение указывается при создании службы с помощью CreateService и может быть изменено с помощью UpdateService.

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

Количество задач в кластере, которые находятся в состоянии RUNNING.

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

Количество задач в кластере, которые находятся в состоянии PENDING.

launchType -> (строка)

Тип запуска, используемый сервисом. При использовании API DescribeServices этот параметр опускается, если служба была создана с помощью стратегии поставщика емкостей.

capacityProviderStrategy -> (список)

Стратегия поставщика емкостей, используемая сервисом. При использовании API DescribeServices этот параметр опускается, если служба была создана с использованием типа запуска.

(структура)

Подробности стратегии поставщика емкостей. Стратегия поставщика емкостей может быть установлена при использовании 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. Когда в стратегии поставщика емкостей указано несколько поставщиков емкостей, по крайней мере один из поставщиков емкостей должен иметь значение веса, большее нуля, и любые поставщики емкостей с весом 0 не могут быть использованы для размещения задач. Если вы укажете в стратегии несколько поставщиков емкостей, все с весом 0, любые действия RunTask или CreateService, использующие стратегию поставщика емкостей, завершатся ошибкой.

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

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

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

platformVersion -> (строка)

Версия платформы для запуска вашего сервиса. Версия платформы указывается только для задач, размещенных на Fargate. Если она не указана, используется версия платформы LATEST. Дополнительную информацию см. в руководстве для разработчиков Amazon Elastic Container Service в разделе «Версии платформ Fargate».

platformFamily -> (строка)

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

Все задачи, выполняющиеся в рамках этой службы, должны использовать то же значение platformFamily, что и служба (например, LINUX).

taskDefinition -> (строка)

Определение задачи для использования в задачах сервиса. Это значение указывается при создании сервиса с помощью CreateService и может быть изменено с помощью UpdateService.

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

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

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

Примечание

Блокировщик цепи развертывания может использоваться только для сервисов, использующих тип развертывания поэтапного обновления (ECS).

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

enable -> (булево)

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

rollback -> (булево)

Определяет, настроить ли Amazon ECS на откат сервиса в случае сбоя развертывания сервиса. Если откат включен, при сбое развертывания сервиса сервис откатывается до последнего успешно завершенного развертывания.

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

Если сервис использует тип развертывания поэтапного обновления (ECS), параметр maximumPercent представляет собой верхний предел количества задач вашего сервиса, которые могут находиться в состоянии RUNNING или PENDING во время развертывания, в процентах от общего количества задач desiredCount (округленное вниз до ближайшего целого числа). Этот параметр позволяет определить размер пакета развертывания. Например, если ваш сервис использует планировщик сервисов REPLICA и имеет desiredCount из четырех задач и значение maximumPercent 200%, планировщик может запустить четыре новые задачи перед остановкой четырех старых задач (при условии, что доступны необходимые для этого ресурсы кластера). Значение по умолчанию maximumPercent для сервиса, использующего планировщик сервисов REPLICA, составляет 200%.

Планировщик Amazon ECS использует этот параметр для замены неисправных задач путем запуска задач-заменителей сначала, а затем остановки неисправных задач, при условии наличия ресурсов кластера для запуска задач-заменителей. Дополнительную информацию о том, как планировщик заменяет неисправные задачи, см. в разделе Amazon ECS services.

Если сервис использует типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL, а задачи в сервисе используют тип запуска EC2, значение **maximum percent** устанавливается по умолчанию. Значение **maximum percent** используется для определения верхнего предела количества задач в сервисе, которые остаются в состоянии RUNNING, в то время как экземпляры контейнеров находятся в состоянии DRAINING.

Примечание

Вы не можете указать пользовательское значение maximumPercent для сервиса, использующего типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL и имеющего задачи, использующие тип запуска EC2.

Если сервис использует типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL, а задачи в сервисе используют тип запуска Fargate, значение максимального процента не используется. Значение по-прежнему возвращается при описании вашего сервиса.

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

Если сервис использует тип развертывания поэтапного обновления (ECS), minimumHealthyPercent представляет собой нижний предел количества задач вашего сервиса, которые должны оставаться в состоянии RUNNING во время развертывания, в процентах от общего количества задач desiredCount (округленное вверх до ближайшего целого числа). Этот параметр позволяет развертывать, не используя дополнительную емкость кластера. Например, если у вашего сервиса есть desiredCount из четырех задач и minimumHealthyPercent 50%, планировщик сервиса может остановить две существующие задачи, чтобы освободить емкость кластера перед запуском двух новых задач.

Если какие-либо задачи неисправны, и maximumPercent не позволяет планировщику Amazon ECS запускать задачи-заменители, планировщик останавливает неисправные задачи по одной — используя minimumHealthyPercent как ограничение — чтобы освободить емкость для запуска задач-заменителей. Дополнительную информацию о том, как планировщик заменяет неисправные задачи, см. в разделе Amazon ECS services.

Для сервисов, не использующих балансировщик нагрузки, следует обратить внимание на следующее:

  • Сервис считается исправным, если все необходимые контейнеры в задачах сервиса проходят проверки работоспособности.
  • Если задача не имеет необходимых контейнеров с определенной проверкой работоспособности, планировщик сервиса будет ждать 40 секунд после того, как задача перейдет в состояние RUNNING, прежде чем задача будет учтена в общем количестве минимального процента работоспособных задач.
  • Если задача имеет один или несколько необходимых контейнеров с определенной проверкой работоспособности, планировщик сервиса будет ждать, пока задача достигнет состояния работоспособности, прежде чем учитывать ее в минимальном проценте работоспособных задач. Задача считается работоспособной, когда все необходимые контейнеры внутри задачи успешно прошли проверки работоспособности. Время, которое планировщик сервиса может ждать, определяется настройками проверки работоспособности контейнера.

Для сервисов, использующих балансировщик нагрузки, следует обратить внимание на следующее:

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

Значение по умолчанию для реплицированного сервиса для minimumHealthyPercent составляет 100%. Значение по умолчанию minimumHealthyPercent для сервиса, использующего планировщик сервисов DAEMON, составляет 0% для командной строки, Amazon Web Services SDK и API и 50% для консоли управления Amazon Web Services.

Минимальное количество работоспособных задач во время развертывания равно desiredCount, умноженному на minimumHealthyPercent /100, округленное до ближайшего целого значения.

Если сервис использует типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL и выполняет задачи, использующие тип запуска EC2, значение **минимального процента работоспособности** устанавливается по умолчанию. Значение **минимального процента работоспособности** используется для определения нижнего предела количества задач в сервисе, которые остаются в состоянии RUNNING, в то время как экземпляры контейнеров находятся в состоянии DRAINING.

Примечание

Вы не можете указать пользовательское значение minimumHealthyPercent для сервиса, использующего типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL и имеющего задачи, использующие тип запуска EC2.

Если сервис использует типы развертывания «синий/зеленый» (CODE_DEPLOY) или EXTERNAL и выполняет задачи, использующие тип запуска Fargate, значение минимального процента работоспособности не используется, хотя оно возвращается при описании вашего сервиса.

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

Информация о CloudWatch сигнализациях.

alarmNames -> (список)

Одно или несколько имен сигнализаций CloudWatch. Используйте «,» для разделения сигнализаций.

(строка)

rollback -> (булево)

Определяет, настроить ли Amazon ECS на откат сервиса в случае сбоя развертывания сервиса. Если откат используется, при сбое развертывания сервиса сервис откатывается до последнего успешно завершенного развертывания.

enable -> (булево)

Определяет, использовать ли опцию CloudWatch сигнализации в процессе развертывания сервиса.

taskSets -> (список)

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

(структура)

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

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 содержит идентификатор развертывания 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 ECS в руководстве разработчика 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. При указании нескольких поставщиков емкости в стратегии поставщика емкости хотя бы один из поставщиков емкости должен иметь значение веса, большее нуля, и любые поставщики емкости с весом 0 не могут быть использованы для размещения задач. Если вы указываете несколько поставщиков емкости в стратегии, которые все имеют вес 0, любые действия RunTask или CreateService, использующие стратегию поставщика емкости, завершатся ошибкой.

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

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

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

platformVersion -> (строка)

Версия платформы Fargate, на которой выполняются задачи в наборе задач. Версия платформы указывается только для задач, выполняемых на 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 режим сети и используется запись DNS типа SRV, вы должны указать комбинацию containerName и containerPort или значение port. Однако вы не можете указать оба значения.

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

Значение порта для использования вашей службы обнаружения сервисов. Оно уже указано в определении задачи. Если определение задачи вашей задачи сервиса использует bridge или host режим сети, вы должны указать комбинацию containerName и containerPort из определения задачи. Если определение задачи вашей задачи сервиса использует awsvpc режим сети и используется запись DNS типа SRV, вы должны указать комбинацию 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 -> (строка)

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

value -> (строка)

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

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

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

kmsKeyId -> (строка)

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

deployments -> (список)

Текущее состояние развертываний для службы.

(структура)

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

id -> (строка)

Идентификатор развертывания.

status -> (строка)

Состояние развертывания. Ниже описано каждое состояние.

PRIMARY

Самое последнее развертывание службы.

ACTIVE

Развертывание службы, у которой все еще работают задачи, но они в процессе замены на новое развертывание PRIMARY.

INACTIVE

Развертывание, которое было полностью заменено.

taskDefinition -> (строка)

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

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

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

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

Количество задач в развертывании, находящихся в статусе PENDING.

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

Количество задач в развертывании, находящихся в статусе RUNNING.

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

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

Примечание

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

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

Маркер Unix времени создания развертывания службы.

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

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

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.

launchType -> (строка)

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

platformVersion -> (строка)

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

platformFamily -> (строка)

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

Все задачи, выполняемые в рамках этой службы, должны использовать то же самое значение platformFamily, что и служба, например, LINUX..

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

Настройка подсети VPC и группы безопасности для задач, которые получают собственный интерфейс эластичной сети с помощью режима сетевой конфигурации awsvpc.

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

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

Примечание

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

subnets -> (список)

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

Примечание

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

(строка)

securityGroups -> (список)

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

Примечание

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

(строка)

assignPublicIp -> (строка)

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

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

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

rolloutState -> (строка)

Примечание

Состояние развертывания службы возвращается только для служб, использующих тип развертывания с постепенным обновлением (ECS), которые не находятся за классическим балансировщиком.

Состояние развертывания. Когда развертывание службы запускается, оно находится в состоянии IN_PROGRESS. Когда служба достигает стабильного состояния, развертывание переходит в состояние COMPLETED. Если служба не достигает стабильного состояния и предохранительный клапан включен, развертывание переходит в состояние FAILED. Развертывание в состоянии FAILED не запускает новые задачи. Для получения дополнительной информации см. DeploymentCircuitBreaker.

rolloutStateReason -> (строка)

Описание состояния развертывания.

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

Подробности конфигурации Service Connect, используемой данным развертыванием. Сравнивайте конфигурацию между несколькими развертываниями при устранении проблем с новыми развертываниями.

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

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

enabled -> (boolean)

Указывает, использовать ли Service Connect с данным сервисом.

namespace -> (string)

Имя именованного пространства или полное Amazon Resource Name (ARN) пространства Cloud Map для использования с Service Connect. Пространство должно находиться в той же области Amazon Web Services, что и сервис Amazon ECS и кластер. Тип пространства не влияет на Service Connect. Для получения дополнительной информации о Cloud Map, см. Работа с сервисами в Руководстве разработчика Cloud Map.

services -> (list)

Список объектов сервиса Service Connect. Это имена и псевдонимы (также известные как конечные точки), которые используются другими сервисами Amazon ECS для подключения к данному сервису.

Это поле не требуется для сервиса Amazon ECS «клиент», который является членом именованного пространства только для подключения к другим сервисам в рамках этого пространства. Примером может служить фронтэнд-приложение, принимающее входящие запросы либо от балансировщика нагрузки, присоединенного к сервису, либо другими способами.

Объект выбирает порт из определения задачи, присваивает имя сервису Cloud Map и список псевдонимов (конечных точек) и портов для ссылок клиентских приложений на данный сервис.

(structure)

Конфигурация объекта сервиса Service Connect. Для получения дополнительной информации, см. Service Connect в Руководстве разработчика Amazon Elastic Container Service.

portName -> (string)

portName должно совпадать с именем одного из portMappings из всех контейнеров в определении задачи этого сервиса Amazon ECS.

discoveryName -> (string)

discoveryName — это имя нового сервиса Cloud Map, создаваемого Amazon ECS для данного сервиса Amazon ECS. Оно должно быть уникальным в рамках именованного пространства Cloud Map. Имя может содержать до 64 символов. Имя может включать строчные буквы, цифры, подчеркивания (_) и дефисы (-). Имя не может начинаться с дефиса.

Если discoveryName не указано, используется имя сопоставления порта из определения задачи в portName.namespace.

clientAliases -> (list)

Список клиентских псевдонимов для данного сервиса Service Connect. Вы используете их для присвоения имен, которые могут быть использованы клиентскими приложениями. Максимальное количество клиентских псевдонимов в данном списке — 1.

Каждый псевдоним («конечная точка») — это полное имя и номер порта, которые другие задачи Amazon ECS («клиенты») могут использовать для подключения к данному сервису.

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

Для каждого ServiceConnectService необходимо указать как минимум один clientAlias с одним port.

(structure)

Каждый псевдоним («конечная точка») — это полное имя и номер порта, которые другие задачи («клиенты») могут использовать для подключения к данному сервису.

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

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

port -> (integer)

Номер порта прослушивания прокси-сервера Service Connect. Этот порт доступен во всех задачах в рамках того же именованного пространства.

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

dnsName -> (string)

dnsName — это имя, которое вы используете в приложениях клиентских задач для подключения к данному сервису. Имя должно быть допустимым именем DNS, но не обязательно полным. Имя может содержать до 127 символов. Имя может включать строчные буквы, цифры, подчеркивания (_), дефисы (-) и точки (.). Имя не может начинаться с дефиса.

Если этот параметр не указан, используется значение по умолчанию discoveryName.namespace. Если discoveryName не указано, используется имя сопоставления порта из определения задачи в portName.namespace.

Чтобы избежать изменения приложений в клиентских сервисах Amazon ECS, установите это значение равным имени, которое используется приложением-клиентом по умолчанию. Например, некоторые распространенные имена — database, db или строчное имя базы данных, такое как mysql или redis. Для получения дополнительной информации, см. Service Connect в Руководстве разработчика Amazon Elastic Container Service.

ingressPortOverride -> (integer)

Номер порта, на котором прокси-сервер Service Connect должен прослушивать.

Используйте значение этого поля для обхода прокси для трафика на номер порта, указанный в именованном portMapping в определении задачи этого приложения, а затем используйте его в ваших VPC-группах безопасности для разрешения трафика в прокси для данного сервиса Amazon ECS.

В режиме awsvpc и Fargate значение по умолчанию — номер порта контейнера. Номер порта контейнера указан в portMapping в определении задачи. В режиме моста значение по умолчанию — временный порт прокси-сервера Service Connect.

timeout -> (structure)

Ссылка на объект, представляющий настроенные таймауты для Service Connect.

idleTimeoutSeconds -> (integer)

Время в секундах, в течение которого подключение будет оставаться активным в режиме ожидания. Значение 0 можно установить для отключения idleTimeout.

Значение по умолчанию для idleTimeout /HTTP2 /GRPC — 5 минут.

Значение по умолчанию для idleTimeout — 1 час.

perRequestTimeoutSeconds -> (integer)

Время ожидания ответа от upstream для полного ответа на запрос. Значение 0 можно установить для отключения perRequestTimeout. perRequestTimeout можно установить только если Service Connect appProtocol не TCP. Разрешено только idleTimeout для TCP appProtocol.

tls -> (structure)

Ссылка на объект, представляющий конфигурацию Transport Layer Security (TLS).

issuerCertificateAuthority -> (structure)

Сертификат авторитета подписи.

awsPcaAuthorityArn -> (string)

ARN сертификата Amazon Web Services Private Certificate Authority.

kmsKey -> (string)

Ключ Amazon Web Services Key Management Service.

roleArn -> (string)

Amazon Resource Name (ARN) роли IAM, связанной с TLS Service Connect.

logConfiguration -> (structure)

Конфигурация журналов для контейнера. Этот параметр соответствует LogConfig в команде создания контейнера Docker и параметру --log-driver для docker run.

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

Учитывайте следующее при указании конфигурации журналов для ваших контейнеров.

  • В настоящее время Amazon ECS поддерживает подмножество драйверов журналов, доступных для демона Docker. Дополнительные драйверы журналов могут быть доступны в будущих выпусках агента контейнеров Amazon ECS. Для задач на Fargate поддерживаются драйверы журналов awslogs, splunk и awsfirelens. Для задач, размещенных на экземплярах Amazon EC2, поддерживаются драйверы журналов awslogs, fluentd, gelf, json-file, journald, ``syslog``, splunk и awsfirelens.
  • Для этого параметра требуется версия 1.18 Docker Remote API или более поздняя на вашем экземпляре контейнера.
  • Для задач, размещенных на экземплярах Amazon EC2, агент контейнеров Amazon ECS должен зарегистрировать доступные драйверы журналов с переменной среды ECS_AVAILABLE_LOGGING_DRIVERS, прежде чем контейнеры, размещенные на этом экземпляре, смогут использовать эти параметры конфигурации журналов. Дополнительную информацию см. в разделе Конфигурация агента контейнеров Amazon ECS в Руководстве разработчика Amazon Elastic Container Service.
  • Для задач на Fargate, поскольку у вас нет доступа к базовой инфраструктуре, на которой размещены ваши задачи, необходимо устанавливать любое дополнительное ПО вне задачи. Например, агрегаторы вывода Fluentd или удаленный хост, на котором работает Logstash, для отправки журналов Gelf.

logDriver -> (string)

Драйвер журналов для использования контейнером.

Для задач на Fargate поддерживаются драйверы журналов awslogs, splunk и awsfirelens.

Для задач, размещенных на экземплярах Amazon EC2, поддерживаются драйверы журналов awslogs, fluentd, gelf, json-file, journald, syslog, splunk и awsfirelens.

Дополнительную информацию об использовании драйвера журналов awslogs см. в разделе Отправка журналов Amazon ECS в CloudWatch в Руководстве разработчика Amazon Elastic Container Service.

Дополнительную информацию об использовании драйвера журналов awsfirelens см. в разделе Отправка журналов Amazon ECS в сервис Amazon Web Services или партнера Amazon Web Services.

Примечание

Если у вас есть собственный драйвер, который не указан, вы можете создать форк проекта агента контейнеров Amazon ECS, доступного на GitHub, и настроить его для работы с этим драйвером. Мы рекомендуем отправлять запросы на включение изменений, которые вы хотели бы добавить. Однако в настоящее время мы не предоставляем поддержку для запуска измененных копий этого программного обеспечения.

options -> (map)

Параметры конфигурации для отправки в драйвер логов.

Доступные параметры зависят от драйвера логов. Некоторые параметры, которые можно указать при использовании драйвера логов awslogs для маршрутизации логов в Amazon CloudWatch, включают:

awslogs-create-group

Необязательно

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

Примечание

Ваша политика IAM должна включать разрешение logs:CreateLogGroup, прежде чем вы попытаетесь использовать awslogs-create-group .

awslogs-region

Обязательно

Указывает регион Amazon Web Services, в котором драйвер логов awslogs будет отправлять ваши Docker-логи. Вы можете настроить отправку всех логов из кластеров в разных регионах в один регион CloudWatch Logs, чтобы они отображались в одном месте. В противном случае, можно разделить их по регионам для более детального анализа. Убедитесь, что указанная группа логов существует в регионе, который вы указали в этом параметре.

awslogs-group

Обязательно

Убедитесь, что вы указали группу логов, в которую драйвер логов awslogs отправляет потоки логов.

awslogs-stream-prefix

Обязательно при использовании Fargate. Необязательно при использовании EC2.

Используйте параметр awslogs-stream-prefix, чтобы связать поток логов с указанным префиксом, именем контейнера и идентификатором задачи Amazon ECS, к которой принадлежит контейнер. Если вы укажете префикс с этим параметром, то поток логов будет иметь формат prefix-name/container-name/ecs-task-id .

Если вы не укажете префикс с этим параметром, то поток логов будет назван в соответствии с идентификатором контейнера, назначенным Docker-демоном на экземпляре контейнера. Поскольку отслеживание логов до контейнера, который их отправил, только по идентификатору Docker-контейнера (который доступен только на экземпляре контейнера) затруднено, рекомендуется указывать префикс с этим параметром.

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

Вы должны указать префикс потока логов, чтобы ваши логи отображались в панели "Логи" при использовании консоли Amazon ECS.

awslogs-datetime-format

Необязательно

Этот параметр определяет шаблон начала многострочного сообщения в формате Python strftime. Сообщение лога состоит из строки, соответствующей шаблону, и всех последующих строк, которые ему не соответствуют. Соответствующая строка является разделителем между сообщениями логов.

Один из примеров использования этого формата – анализ выходных данных, таких как дамп стека, которые могут быть записаны в несколько строк. Правильный шаблон позволяет объединить их в одно сообщение.

Дополнительную информацию см. в разделе awslogs-datetime-format.

Нельзя настроить оба параметра awslogs-datetime-format и awslogs-multiline-pattern.

Примечание

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

awslogs-multiline-pattern

Необязательно

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

Дополнительную информацию см. в разделе awslogs-multiline-pattern.

Этот параметр игнорируется, если также настроен параметр awslogs-datetime-format.

Нельзя настроить оба параметра awslogs-datetime-format и awslogs-multiline-pattern.

Примечание

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

Следующие параметры применяются ко всем поддерживаемым драйверам логов.

mode

Необязательно

Допустимые значения: non-blocking | blocking

Этот параметр определяет режим передачи сообщений логов из контейнера в указанный драйвер логов с помощью logDriver. Выбранный режим передачи влияет на доступность приложения при прерывании потока логов из контейнера.

Если вы используете режим blocking и поток логов прерывается, вызовы из кода контейнера для записи в потоки stdout и stderr заблокируются. В результате заблокируется и поток логирования приложения. Это может привести к неотзываемости приложения и сбоям проверки работоспособности контейнера.

Если вы используете режим non-blocking, логи контейнера вместо этого хранятся в промежуточном буфере в оперативной памяти, настроенном с помощью параметра max-buffer-size. Это предотвращает блокировку приложения при невозможности отправки логов. Рекомендуется использовать этот режим, если вы хотите обеспечить доступность службы и готовы к некоторой потере логов. Дополнительную информацию см. в статье Предотвращение потери логов с помощью режима без блокировки в драйвере логов `awslogs` <http://aws.amazon.com/blogs/containers/preventing-log-loss-with-non-blocking-mode-in-the-awslogs-container-log-driver/>`__.

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

max-buffer-size

Необязательно

Значение по умолчанию: 1m

При использовании режима non-blocking, параметр max-buffer-size логов управляет размером буфера, используемого для промежуточного хранения сообщений. Убедитесь, что вы указали достаточный размер буфера, исходя из ваших требований к приложению. При заполнении буфера дальнейшие логи не будут храниться. Такие логи будут потеряны.

Для маршрутизации логов с помощью маршрутизатора логов splunk необходимо указать splunk-token и splunk-url.

Когда вы используете маршрутизатор логов awsfirelens для маршрутизации логов в службу Amazon Web Services или в пункт назначения Amazon Web Services Partner Network для хранения и анализа логов, вы можете установить параметр log-driver-buffer-limit для ограничения количества событий, которые буферизуются в памяти перед отправкой в контейнер маршрутизатора логов. Это может помочь решить потенциальную проблему потери логов, поскольку высокая пропускная способность может привести к исчерпанию памяти буфера внутри Docker.

Другие параметры, которые вы можете указать при использовании awsfirelens для маршрутизации логов, зависят от пункта назначения. При экспорте логов в Amazon Data Firehose вы можете указать регион Amazon Web Services с помощью region и имя потока логов с помощью delivery_stream.

При экспорте логов в Amazon Kinesis Data Streams вы можете указать регион Amazon Web Services с помощью region и имя потока данных с помощью stream.

При экспорте логов в Amazon OpenSearch Service вы можете указать параметры, такие как Name, Host (конечная точка OpenSearch Service без протокола), Port, Index, Type, Aws_auth, Aws_region, Suppress_Type_Name и tls. Дополнительную информацию см. в разделе Under the hood: FireLens for Amazon ECS Tasks.

При экспорте логов в Amazon S3 вы можете указать ведро с помощью параметра bucket. Вы также можете указать region, total_file_size, upload_timeout и use_put_object в качестве параметров.

Для этого параметра требуется версия 1.19 Docker Remote API или выше на вашем экземпляре контейнера. Чтобы проверить версию Docker Remote API на вашем экземпляре контейнера, войдите в свой экземпляр контейнера и выполните следующую команду: sudo docker version --format '{{.Server.APIVersion}}'

key -> (строка)

value -> (строка)

secretOptions -> (список)

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

(структура)

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

  • Для вставки конфиденциальных данных в ваши контейнеры в качестве переменных среды используется параметр определения контейнера secrets.
  • Для ссылки на конфиденциальную информацию в конфигурации логов контейнера используется параметр определения контейнера secretOptions.

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

name -> (строка)

Имя секрета.

valueFrom -> (строка)

Секрет, который необходимо предоставить контейнеру. Поддерживаемые значения – полный ARN секрета Secrets Manager или полный ARN параметра в SSM Parameter Store.

Сведения о требуемых разрешениях Identity and Access Management см. в разделе Требуемые разрешения IAM для секретов Amazon ECS (для Secrets Manager) или Требуемые разрешения IAM для секретов Amazon ECS (для Systems Manager Parameter Store) в руководстве разработчика Amazon Elastic Container Service.

Примечание

Если параметр SSM Parameter Store существует в том же регионе, что и запускаемая задача, то можно использовать либо полный ARN, либо имя параметра. Если параметр находится в другом регионе, то необходимо указать полный ARN.

serviceConnectResources -> (список)

Список ресурсов Service Connect, связанных с этим развертыванием. Каждый элемент списка сопоставляет имя обнаружения с именем службы Cloud Map.

(структура)

Ресурс Service Connect. Каждая конфигурация сопоставляет имя обнаружения с именем службы Cloud Map. Данные хранятся в Cloud Map в рамках конфигурации Service Connect для каждого имени обнаружения этой службы Amazon ECS.

Задача может разрешить dnsName для каждого из clientAliases службы. Однако задача не может разрешить имена обнаружения. Если вы хотите подключиться к службе, обратитесь к ServiceConnectConfiguration этой службы для получения списка clientAliases, которые вы можете использовать.

discoveryName -> (строка)

Имя обнаружения этого ресурса Service Connect.

discoveryName — это имя новой службы Cloud Map, которое создает Amazon ECS для этой службы Amazon ECS. Оно должно быть уникальным в пространстве имен Cloud Map. Имя может содержать до 64 символов. В имени могут быть строчные буквы, цифры, символы подчеркивания (_) и дефисы (-). Имя не может начинаться с дефиса.

Если discoveryName не указано, используется имя сопоставления портов из определения задачи в portName.namespace.

discoveryArn -> (строка)

Идентификатор Amazon Resource Name (ARN) для пространства имен в Cloud Map, соответствующего имени обнаружения для этого ресурса Service Connect. Вы можете использовать этот ARN в других интеграциях с Cloud Map. Однако Service Connect не может гарантировать подключение за пределами Amazon ECS.

volumeConfigurations -> (список)

Подробности тома, который был configuredAtLaunch . Вы можете настроить различные параметры, такие как размер, пропускная способность, тип тома и шифрование в ServiceManagedEBSVolumeConfiguration. name тома должен соответствовать name из определения задачи.

(структура)

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

name -> (строка)

Имя тома. Это значение должно совпадать с именем тома из объекта Volume в определении задачи.

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

Конфигурация тома Amazon EBS, который Amazon ECS создает и управляет от вашего имени. Эти параметры используются для создания каждого тома Amazon EBS, при этом для каждой задачи в службе создается один том. Тома Amazon EBS будут видны в вашей учетной записи в консоли Amazon EC2 после их создания.

encrypted -> (логическое значение)

Указывает, следует ли шифровать том. Если вы включили региональное шифрование Amazon EBS по умолчанию, но установили это значение как false, то этот параметр переопределяется, и том шифруется с помощью ключа KMS, указанного для шифрования Amazon EBS по умолчанию. Этот параметр отображается 1:1 с параметром Encrypted API CreateVolume в Справочнике по API Amazon EC2.

kmsKeyId -> (строка)

Идентификатор Amazon Resource Name (ARN) ключа управления ключами Amazon Web Services, который следует использовать для шифрования Amazon EBS. Когда ключ указан с помощью этого параметра, он переопределяет шифрование Amazon EBS по умолчанию или любой ключ KMS, который вы указали для шифрования управляемого хранилища на уровне кластера. Этот параметр отображается 1:1 с параметром KmsKeyId API CreateVolume в Справочнике по API Amazon EC2. Дополнительную информацию о шифровании томов Amazon EBS, подключенных к задачам, см. в разделе Шифрование данных, хранящихся в томах Amazon EBS, подключенных к задачам Amazon ECS.

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

Amazon Web Services аутентифицирует ключ управления ключами Amazon Web Services асинхронно. Поэтому, если вы укажете недействительный идентификатор, псевдоним или ARN, действие может показаться завершенным, но в конечном итоге потерпит неудачу.

volumeType -> (строка)

Тип тома. Этот параметр отображается 1:1 с параметром VolumeType API CreateVolume в Справочнике по API Amazon EC2. Дополнительную информацию см. в разделе Типы томов Amazon EBS в Руководстве пользователя Amazon EC2.

Поддерживаемые типы томов:

  • SSD общего назначения: gp2 |gp3
  • SSD с предварительно определенными IOPS: io1 |io2
  • HDD с оптимизацией пропускной способности: st1
  • HDD для хранения холодных данных: sc1
  • Магнитный: standard

Примечание

Тип магнитного тома не поддерживается в Fargate.

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

Размер тома в GiB. Вы должны указать либо размер тома, либо идентификатор снимка. Если вы укажете идентификатор снимка, размер снимка используется по умолчанию для размера тома. Вы можете дополнительно указать размер тома, равный или больший размера снимка. Этот параметр отображается 1:1 с параметром Size API CreateVolume в Справочнике по API Amazon EC2.

Поддерживаемые значения размера тома для каждого типа тома:

  • gp2 и gp3 : 1-16 384
  • io1 и io2 : 4-16 384
  • st1 и sc1 : 125-16 384
  • standard : 1-1024

snapshotId -> (строка)

Снимок, который Amazon ECS использует для создания томов для подключения к задачам, поддерживаемым службой. Вы должны указать либо snapshotId, либо sizeInGiB в вашей конфигурации тома. Этот параметр отображается 1:1 с параметром SnapshotId API CreateVolume в Справочнике по API Amazon EC2.

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

Скорость, в MiB/с, с которой данные извлекаются из снимка существующего тома EBS для создания новых томов для подключения к задачам, поддерживаемым службой. Этот параметр может быть указан только при указании snapshotId. Дополнительную информацию см. в разделе Инициализация томов Amazon EBS в Руководстве пользователя Amazon EBS.

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

Количество операций ввода-вывода в секунду (IOPS). Для томов gp3, io1 и io2 это число IOPS, которые зарезервированы для тома. Для томов gp2 это базовая производительность тома и скорость, с которой том накапливает кредиты ввода-вывода для повышения производительности.

Поддерживаемые значения для каждого типа тома:

  • gp3 : 3000–16 000 IOPS
  • io1 : 100–64 000 IOPS
  • io2 : 100–256 000 IOPS

Этот параметр необходим для томов типа io1 и io2. По умолчанию для томов типа gp3 — 3,000 IOPS. Этот параметр не поддерживается для томов типа st1, sc1 или standard.

Этот параметр отображается 1:1 с параметром Iops API CreateVolume в Справочнике по API Amazon EC2.

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

Пропускная способность для выделения тома в MiB/с, максимальное значение 1000 MiB/с. Этот параметр отображается 1:1 с параметром Throughput API CreateVolume в Справочнике по API Amazon EC2.

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

Этот параметр поддерживается только для томов типа gp3.

tagSpecifications -> (список)

Теги, применяемые к тому. Amazon ECS по умолчанию применяет управляемые службой теги. Этот параметр отображается 1:1 с параметром TagSpecifications.N API CreateVolume в Справочнике по API Amazon EC2.

(структура)

Параметры тегов тома Amazon EBS.

resourceType -> (строка)

Тип ресурса тома.

tags -> (список)

Теги, примененные к этому тому Amazon EBS. AmazonECSCreated и AmazonECSManaged — это зарезервированные теги, которые нельзя использовать.

(структура)

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

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

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

key -> (строка)

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

value -> (строка)

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

propagateTags -> (строка)

Определяет, следует ли распространять теги из определения задачи на том Amazon EBS. Теги могут распространяться только на SERVICE, указанный в ServiceVolumeConfiguration. Если значение не указано, теги не распространяются.

roleArn -> (строка)

ARN роли IAM, которую следует ассоциировать с этим томом. Это роль IAM инфраструктуры Amazon ECS, используемая для управления вашей инфраструктурой Amazon Web Services. Рекомендуется использовать управляемую Amazon ECS политику IAM AmazonECSInfrastructureRolePolicyForVolumes с этой ролью. Дополнительную информацию см. в разделе Роль IAM инфраструктуры Amazon ECS в Руководстве разработчика Amazon ECS.

filesystemType -> (строка)

Тип файловой системы для тома. Для томов, созданных из снимка, вы должны указать тот же тип файловой системы, который использовал том при создании снимка. Если тип файловой системы не совпадает, задачи не будут запускаться.

Доступные типы файловых систем Linux — ext3, ext4 и xfs. Если значение не указано, по умолчанию используется тип файловой системы xfs.

Доступные типы файловых систем Windows — NTFS.

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

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

kmsKeyId -> (строка)

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

vpcLatticeConfigurations -> (список)

Настройка VPC Lattice для развертывания службы.

(структура)

Настройка VPC Lattice для вашей службы, содержащая информацию о целевой группе(ах), к которой(ым) задачи Amazon ECS будут зарегистрированы.

roleArn -> (строка)

ARN роли IAM, которая должна быть связана с этой конфигурацией VPC Lattice. Это роль IAM инфраструктуры Amazon ECS, используемая для управления вашей инфраструктурой VPC Lattice.

targetGroupArn -> (строка)

Полное имя ресурса Amazon (ARN) целевой группы или групп, связанных с конфигурацией VPC Lattice, к которой(ым) будут зарегистрированы задачи Amazon ECS.

portName -> (строка)

Имя сопоставления портов для регистрации в целевой группе VPC Lattice. Это имя portMapping, которое вы определили в определении задачи.

roleArn -> (строка)

ARN роли IAM, связанной со службой. Она позволяет агенту контейнеров Amazon ECS регистрировать экземпляры контейнеров с балансировщиком нагрузки Elastic Load Balancing.

events -> (список)

Поток событий для вашей службы. Отображаются не более 100 последних событий.

(структура)

Подробная информация об событии, связанном со службой.

id -> (строка)

Строковый идентификатор события.

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

Маркер Unix времени, когда было сгенерировано событие.

message -> (строка)

Сообщение события.

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

Маркер Unix времени создания службы.

placementConstraints -> (список)

Ограничения размещения для задач в службе.

(структура)

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

Примечание

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

type -> (строка)

Тип ограничения. Используйте distinctInstance, чтобы убедиться, что каждая задача в определенной группе выполняется на разных экземплярах контейнеров. Используйте memberOf, чтобы ограничить выбор группой допустимых кандидатов.

expression -> (строка)

Выражение языка запросов кластера для применения к ограничению. Максимальная длина выражения составляет 2000 символов. Вы не можете указать выражение, если тип ограничения distinctInstance. Дополнительную информацию см. в разделе Язык запросов кластера в руководстве разработчика Amazon Elastic Container Service .

placementStrategy -> (список)

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

(структура)

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

type -> (строка)

Тип стратегии размещения. random стратегия случайным образом размещает задачи на доступных кандидатах. spread стратегия равномерно распределяет размещение по доступным кандидатам, основываясь на параметре field. binpack стратегия размещает задачи на доступных кандидатах, у которых наименьшее количество доступного ресурса, указанного в параметре field. Например, если вы используете binpack по памяти, задача размещается на экземпляре с наименьшим количеством оставшейся памяти, но при этом достаточным для запуска задачи.

field -> (строка)

Поле, к которому применяется стратегия размещения. Для стратегии размещения spread допустимые значения - instanceId (или host, что имеет тот же эффект), или любой платформенный или пользовательский атрибут, применяемый к экземпляру контейнера, например, attribute:ecs.availability-zone. Для стратегии размещения binpack допустимые значения - cpu и memory. Для стратегии размещения random это поле не используется.

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

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

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

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

Примечание

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

subnets -> (список)

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

Примечание

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

(строка)

securityGroups -> (список)

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

Примечание

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

(строка)

assignPublicIp -> (строка)

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

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

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

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

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

schedulingStrategy -> (строка)

Стратегия планирования для службы. Дополнительную информацию см. в разделе Службы .

Доступны две стратегии планировщика служб.

  • REPLICA - Стратегия планирования реплик размещает и поддерживает желаемое количество задач по всему вашему кластеру. По умолчанию планировщик служб распределяет задачи по зонам доступности. Вы можете использовать стратегии и ограничения размещения задач для настройки решений по размещению задач.
  • DAEMON - Стратегия планирования демонов развертывает ровно одну задачу на каждом активном экземпляре контейнера. Эта задача соответствует всем ограничениям размещения задач, которые вы указываете в своем кластере. Планировщик служб также оценивает ограничения размещения задач для выполняемых задач. Он останавливает задачи, которые не соответствуют ограничениям размещения.

Примечание

Задачи Fargate не поддерживают стратегию планирования DAEMON.

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

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

type -> (строка)

Тип контроллера развертывания для использования.

Доступны три типа контроллеров развертывания:

ECS

Тип развертывания поэтапного обновления (ECS) подразумевает замену текущей выполняющейся версии контейнера последней версией. Количество контейнеров, которые Amazon ECS добавляет или удаляет из службы во время поэтапного обновления, контролируется путем настройки минимального и максимального количества здоровых задач, разрешенных во время развертывания службы, как указано в DeploymentConfiguration.

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

CODE_DEPLOY

Тип развертывания синего/зеленого (CODE_DEPLOY) использует модель развертывания синего/зеленого, поддерживаемую CodeDeploy, что позволяет вам проверить новое развертывание службы перед направлением производственного трафика к нему.

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

EXTERNAL

Тип развертывания внешнего (EXTERNAL) позволяет использовать любой сторонний контроллер развертывания для полного контроля над процессом развертывания службы Amazon ECS.

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

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 — это общая метка, которая действует как категория для более конкретных значений тегов.

значение -> (строка)

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

createdBy -> (строка)

Принципал, создавший службу.

enableECSManagedTags -> (булево)

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

propagateTags -> (строка)

Определяет, распространять ли теги из определения задачи или службы на задачу. Если значение не указано, теги не распространяются.

enableExecuteCommand -> (булево)

Определяет, включена ли функция выполнения команд для службы. Если true, функция выполнения команд включена для всех контейнеров в задачах в рамках службы.

availabilityZoneRebalancing -> (строка)

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

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

failures -> (список)

Любые ошибки, связанные с вызовом.

(структура)

Неудачный ресурс. Список распространенных причин см. в разделе Причины ошибок API в *Руководстве разработчика Amazon Elastic Container Service*.

arn -> (строка)

Amazon Resource Name (ARN) неудачного ресурса.

reason -> (строка)

Причина ошибки.

detail -> (строка)

Подробности ошибки.

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

Spec-Zone.ru

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