Spec-Zone.ru › Ansible 2.9

ecs_service – создание, завершение, запуск или остановка службы в ecs

  • Синопсис
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые данные
  • Значения возврата
  • Статус

Синопсис

  • Создаёт или завершает службы ecs.

Требования

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

  • boto
  • boto3
  • botocore
  • json
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
aws_access_key
строка
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY.

псевдонимы: ec2_access_key, access_key
aws_secret_key
строка
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY.

псевдонимы: ec2_secret_key, secret_key
client_token
-
Уникальный, чувствительный к регистру идентификатор, который вы предоставляете для обеспечения идемпотентности запроса. Допускается до 32 ASCII символов.
cluster
-
Имя кластера, в котором существует служба.
debug_botocore_endpoint_logs
логический тип
добавлен в 2.8
    Варианты:
  • нет ←
  • да
Используйте логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие» во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время выполнения книги команд.
delay
-
Значение по умолчанию:
10
Время ожидания, прежде чем проверять доступность службы.
deployment_configuration
-
Дополнительные параметры, контролирующие deployment_configuration; формат — '{"maximum_percent":<целое число>, "minimum_healthy_percent":<целое число>}'
desired_count
-
Количество экземпляров службы. Этот параметр обязателен, когда state=present.
ec2_url
строка
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковое есть.
force_new_deployment
логический тип
добавлен в 2.8
    Варианты:
  • нет
  • да
Принудительное развертывание службы даже если изменений нет.
health_check_grace_period_seconds
-
добавлен в 2.8
Секунды ожидания перед проверкой работоспособности недавно добавленных/обновлённых служб. Этот параметр требует botocore >= 1.8.20.
launch_type
-
добавлен в 2.7
    Варианты:
  • EC2
  • FARGATE
Тип запуска, на котором будет выполняться ваша служба.
load_balancers
-
Список ELB, определённых для этой службы.
name
- / обязательно
Имя службы.
network_configuration
-
Настройка сети службы. Применимо только для определений задач, созданных с awsvpc network_mode.
assign_public_ip требует botocore >= 1.8.4
assign_public_ip
логический тип
добавлен в 2.7
    Варианты:
  • нет
  • да
Присваивать ли задаче публичный IP-адрес. Этот параметр требует botocore >= 1.8.4.
security_groups
-
добавлен в 2.6
Список имён или идентификаторов групп безопасности, которые нужно связать с задачей.
subnets
-
добавлен в 2.6
Список идентификаторов подсетей, которые нужно связать с задачей.
placement_constraints
-
добавлен в 2.4
Ограничения размещения для задач в службе.
placement_strategy
-
добавлен в 2.4
Объекты стратегии размещения для задач в вашей службе. Вы можете указать не более 5 правил стратегии на службу.
profile
строка
Использует профиль boto. Работает только с boto >= 2.24.0.
region
строка
Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region

псевдонимы: aws_region, ec2_region
repeat
-
Значение по умолчанию:
10
Количество попыток проверки доступности службы.
role
-
Имя или полный Amazon Resource Name (ARN) роли IAM, которая позволяет вашему агенту Amazon ECS контейнера выполнять вызовы вашего балансировщика нагрузки от вашего имени. Этот параметр требуется только в случае использования балансировщика нагрузки со службой в режиме сети, отличном от `awsvpc`.
scheduling_strategy
-
добавлен в 2.8
    Варианты:
  • DAEMON
  • REPLICA
Стратегия планирования, по умолчанию "REPLICA", если не указано, чтобы сохранить предыдущее поведение.
security_token
строка
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

псевдонимы: access_token
service_registries
-
добавлен в 2.8
Описывает регистры обнаружения службы, с которыми эта служба будет регистрироваться.
arn
-
ARN регистра обнаружения службы.
container_name
-
Имя контейнера для регистрации обнаружения службы.
container_port
-
Порт контейнера для регистрации обнаружения службы.
state
- / обязательно
    Варианты:
  • present
  • absent
  • deleting
Желаемое состояние службы.
task_definition
-
Определение задачи, которое будет выполняться службой. Этот параметр обязателен, когда state=present.
validate_certs
логический тип
    Варианты:
  • нет
  • да ←
При значении "нет" сертификаты SSL не будут проверены для версий boto >= 2.6.0.

Примечания

Примечание

  • указанная роль службы должна быть доступна для использования (т.е. иметь отношения доверия для службы ecs, ecs.amazonaws.com)
  • подробнее о параметрах и возвращаемых значениях см. https://boto3.readthedocs.io/en/latest/reference/services/ecs.html
  • роль IAM должна быть предварительно создана
  • Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета AWS_URL или EC2_URL, AWS_ACCESS_KEY_ID или AWS_ACCESS_KEY или EC2_ACCESS_KEY, AWS_SECRET_ACCESS_KEY или AWS_SECRET_KEY или EC2_SECRET_KEY, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN, AWS_REGION или EC2_REGION
  • Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не указаны. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION можно использовать для указания региона AWS, если это необходимо, но это также можно настроить в файле конфигурации boto

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Basic provisioning example
- ecs_service:
    state: present
    name: console-test-service
    cluster: new_cluster
    task_definition: 'new_cluster-task:1'
    desired_count: 0

- name: create ECS service on VPC network
  ecs_service:
    state: present
    name: console-test-service
    cluster: new_cluster
    task_definition: 'new_cluster-task:1'
    desired_count: 0
    network_configuration:
      subnets:
      - subnet-abcd1234
      security_groups:
      - sg-aaaa1111
      - my_security_group

# Simple example to delete
- ecs_service:
    name: default
    state: absent
    cluster: new_cluster

# With custom deployment configuration (added in version 2.3), placement constraints and strategy (added in version 2.4)
- ecs_service:
    state: present
    name: test-service
    cluster: test-cluster
    task_definition: test-task-definition
    desired_count: 3
    deployment_configuration:
      minimum_healthy_percent: 75
      maximum_percent: 150
    placement_constraints:
      - type: memberOf
        expression: 'attribute:flavor==test'
    placement_strategy:
      - type: binpack
        field: memory

Возвращаемые факты

Возвращаемые этим модулем факты добавляются/обновляются в фактах хоста hostvars и могут быть использованы по имени, как и любые другие факты хоста. Для их использования не требуется регистрация.

Факт Возвращаемое значение Описание
service
сложный
при существовании и удалении службы
Подробная информация об удаленной службе в той же структуре, что и при создании службы.



Возвращаемые значения

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

Ключ Возвращаемое значение Описание
service
сложный
при создании службы
Подробная информация о созданной службе.

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

deploymentConfiguration
сложный
всегда
Словарь deploymentConfiguration

maximumPercent
целое число
всегда
Параметр maximumPercent

minimumHealthyPercent
целое число
всегда
Параметр minimumHealthyPercent

deployments
список сложных
всегда
Список развертываний службы

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

events
список сложных
всегда
Список событий службы

loadBalancers
сложный
всегда
Список объектов балансировщика нагрузки

containerName
строка
всегда
Имя контейнера, связанного с балансировщиком нагрузки.

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

loadBalancerName
строка
всегда
Название

pendingCount
целое число
всегда
Количество задач в кластере в состоянии ОЖИДАНИЕ.

placementConstraints
список сложных
всегда
Список объектов ограничений размещения

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

type
строка
всегда
Тип ограничения. Допустимые значения — distinctInstance и memberOf.

placementStrategy
список сложных
всегда
Список объектов стратегии размещения

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

type
строка
всегда
Тип стратегии размещения. Допустимые значения — random, spread и binpack.

runningCount
целое число
всегда
Количество задач в кластере в состоянии RUNNING.

serviceArn
строка
всегда
Amazon Resource Name (ARN), идентифицирующий службу. ARN содержит пространство имен arn:aws:ecs, за которым следуют регион службы, идентификатор AWS учетной записи владельца службы, пространство имен службы и затем имя службы. Например, arn:aws:ecs:region:012345678910:service/my-service.

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

status
строка
всегда
Допустимые значения — ACTIVE, DRAINING или INACTIVE.

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



Состояние

  • Этот модуль не гарантирует обратную совместимость. [превью]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • Mark Chance (@Java1Guy)
  • Darek Kaczynski (@kaczynskid)
  • Stephane Maarek (@simplesteph)
  • Zac Blazic (@zacblazic)

Подсказка

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

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/ecs_service_module.html

Spec-Zone.ru

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