Я хочу развернуть свои контейнеры в ECS на EC2 с помощью Ansible.
- name: Create ECS task definition
ecs_taskdefinition:
state: present
launch_type: EC2
network_mode: bridge
family: taskdef
execution_role_arn: "{{ execution_role_arn }}"
cpu: '{{ cpu }}'
memory: '{{ memory }}'
containers:
- name: app
essential: true
image: "{{ image }}"
portMappings:
- containerPort: "{{ port }}"
hostPort: "{{ port }}"
logConfiguration:
logDriver: awslogs
options:
awslogs-group: "{{ env }}-cw-app"
awslogs-region: "{{ region }}"
awslogs-stream-prefix: ecs
register: ecs_taskdefinition_output
tags:
- taskdef
- name: Create or update ECS Service
ecs_service:
state: present
name: "service"
cluster: "{{ env }}-app"
task_definition: "app-taskdef:{{ ecs_taskdefinition_output.taskdefinition.revision }}"
load_balancers:
- targetGroupArn: "{{ loadbalancer.load_balancers[0].listeners[0].default_actions[0].target_group_arn }}"
containerName: app
containerPort: "{{ port }}"
desired_count: "1"
launch_type: EC2
network_configuration:
assign_public_ip: no
security_groups: "{{ vpc_config.security_groups[0].group_id }}"
subnets: ["{{ vpc_subnets.subnets[0].subnet_id }}", "{{ vpc_subnets.subnets[1].subnet_id }}"]
tags:
- service
У меня есть ALB с типом целевой группы instance
. Теперь у меня есть:
- определение задачи с bridge
сетевым режимом
- alb + tg instance
тип
Если я делаю это вручную с помощью веб-консоли, все работает нормально, но с ansible у меня возникает ошибка
Не удалось создать службу: произошла ошибка (InvalidParameterException) при вызове операции CreateService: Конфигурация сети недопустима для данного networkMode этого определения задачи.
Как это сделать с ansible?