Spec-Zone.ru › Ansible 2.7

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

Новое в версии 2.1.

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

Синопсис

  • Создает или завершает службы 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
-
Имя кластера, в котором существует служба.
delay
-
По умолчанию:
10
Время ожидания перед проверкой доступности службы.
deployment_configuration
-
добавлено в 2.3
Дополнительные параметры, контролирующие deployment_configuration; формат — '{"maximum_percent":<целое число>, "minimum_healthy_percent":<целое число>}'
desired_count
-
Количество экземпляров службы. Этот параметр требуется, когда state=present
ec2_url
-
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется.
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
boolean
добавлено в 2.7
    Варианты:
  • нет
  • да
Указывает, получает ли интерфейс эластичной сети задачи публичный IP-адрес. Этот параметр требует botocore >= 1.8.4.
security_groups
-
добавлено в 2.6
Список имен или ID групп безопасности, которые необходимо ассоциировать с задачей.
subnets
-
добавлено в 2.6
Список ID подсетей, которые необходимо ассоциировать с задачей.
placement_constraints
-
добавлено в 2.4
Ограничения размещения для задач в службе.
placement_strategy
-
добавлено в 2.4
Объекты стратегии размещения для задач в вашей службе. Вы можете указать максимум 5 правил стратегии на службу.
profile
-
добавлено в 1.6
Использует профиль 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`.
security_token
-
добавлено в 1.6
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

псевдонимы: access_token
state
- / обязательно
    Варианты:
  • present
  • absent
  • deleting
Желаемое состояние службы.
task_definition
-
Определение задачи, которую будет выполнять служба. Этот параметр требуется, когда state=present
validate_certs
boolean
добавлено в 1.5
    Варианты:
  • нет
  • да ←
Если установлено значение «нет», сертификаты 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.
- ecs_service:
    state: present
    name: console-test-service
    cluster: new_cluster
    task_definition: 'new_cluster-task:1'
    desired_count: 0

# Basic provisioning example
- ecs_service:
    name: default
    state: present
    cluster: new_cluster

- 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
complex
при существовании и удалении службы
Подробности удаленной службы в той же структуре, что и при создании службы.



Значения возврата

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

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

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

deploymentConfiguration
complex
всегда
Словарь deploymentConfiguration

maximumPercent
integer
всегда
Параметр maximumPercent

minimumHealthyPercent
integer
всегда
Параметр minimumHealthyPercent

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

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

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

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

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

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

loadBalancerName
строка
всегда
имя

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

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

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

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

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

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

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

runningCount
целое число
всегда
Количество задач в кластере, находящихся в состоянии ВЫПОЛНЕНИЯ.

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.7/modules/ecs_service_module.html

Spec-Zone.ru

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