109 lines
2.6 KiB
YAML
109 lines
2.6 KiB
YAML
---
|
|
- name: Simple ECS Configuration Test
|
|
hosts: inventory_hosts
|
|
become: yes
|
|
gather_facts: yes
|
|
vars:
|
|
ecs_cluster_name: "nvhi-atsila-cluster"
|
|
|
|
tasks:
|
|
- name: Test connectivity
|
|
ping:
|
|
tags: [test]
|
|
|
|
- name: Check system information
|
|
debug:
|
|
msg: |
|
|
System: {{ ansible_distribution }} {{ ansible_distribution_version }}
|
|
Hostname: {{ ansible_hostname }}
|
|
IP: {{ ansible_default_ipv4.address }}
|
|
tags: [info]
|
|
|
|
- name: Update system packages
|
|
yum:
|
|
name: '*'
|
|
state: latest
|
|
update_cache: yes
|
|
async: 300
|
|
poll: 0
|
|
register: yum_update
|
|
tags: [packages]
|
|
|
|
- name: Wait for package update
|
|
async_status:
|
|
jid: "{{ yum_update.ansible_job_id }}"
|
|
register: update_result
|
|
until: update_result.finished
|
|
retries: 30
|
|
delay: 10
|
|
tags: [packages]
|
|
|
|
- name: Install Docker and ECS components
|
|
yum:
|
|
name:
|
|
- docker
|
|
- ecs-init
|
|
- curl
|
|
- jq
|
|
state: present
|
|
tags: [install]
|
|
|
|
- name: Start Docker service
|
|
systemd:
|
|
name: docker
|
|
state: started
|
|
enabled: true
|
|
daemon_reload: true
|
|
tags: [services]
|
|
|
|
- name: Verify Docker is working
|
|
command: docker --version
|
|
register: docker_version
|
|
changed_when: false
|
|
tags: [verify]
|
|
|
|
- name: Create ECS configuration directory
|
|
file:
|
|
path: /etc/ecs
|
|
state: directory
|
|
mode: '0755'
|
|
tags: [config]
|
|
|
|
- name: Write ECS configuration
|
|
copy:
|
|
dest: /etc/ecs/ecs.config
|
|
content: |
|
|
ECS_CLUSTER={{ ecs_cluster_name }}
|
|
ECS_AVAILABLE_LOGGING_DRIVERS=["json-file","awslogs"]
|
|
ECS_ENABLE_TASK_IAM_ROLE=true
|
|
mode: '0644'
|
|
backup: yes
|
|
notify: restart ecs
|
|
tags: [config]
|
|
|
|
- name: Start ECS agent
|
|
systemd:
|
|
name: ecs
|
|
state: started
|
|
enabled: true
|
|
daemon_reload: true
|
|
tags: [services]
|
|
|
|
- name: Display configuration summary
|
|
debug:
|
|
msg: |
|
|
========================================
|
|
✅ SIMPLE CONFIGURATION COMPLETED
|
|
========================================
|
|
Docker Version: {{ docker_version.stdout }}
|
|
ECS Cluster: {{ ecs_cluster_name }}
|
|
Instance IP: {{ ansible_default_ipv4.address }}
|
|
========================================
|
|
tags: [summary]
|
|
|
|
handlers:
|
|
- name: restart ecs
|
|
systemd:
|
|
name: ecs
|
|
state: restarted
|
|
daemon_reload: true |