Files
Movses Aslanyan bffc42c9d3 Add observability platform Ansible project
Deploys the Grafana stack (Prometheus/Alertmanager/Loki/Tempo/Grafana with
Alloy as collector) and the ELK stack (Filebeat/Logstash/Elasticsearch/
Kibana) via Docker Compose on a target host. External to the application
repo, pre-built by the mentor.
2026-09-05 08:11:34 +03:30

57 lines
1.5 KiB
YAML

---
- name: Assert supported operating system
ansible.builtin.assert:
that:
- ansible_facts.os_family == 'Debian'
- ansible_facts.distribution in ['Ubuntu', 'Debian']
fail_msg: This role supports Ubuntu and Debian hosts.
- name: Install Docker repository prerequisites
ansible.builtin.apt:
name:
- ca-certificates
- curl
- gnupg
state: present
update_cache: true
- name: Create APT keyrings directory
ansible.builtin.file:
path: /etc/apt/keyrings
state: directory
mode: "0755"
- name: Download Docker signing key
ansible.builtin.get_url:
url: "https://download.docker.com/linux/{{ ansible_facts.distribution | lower }}/gpg"
dest: /etc/apt/keyrings/docker.asc
mode: "0644"
- name: Configure Docker APT repository
ansible.builtin.apt_repository:
repo: >-
deb [arch={{ {'x86_64':'amd64','aarch64':'arm64'}.get(ansible_facts.architecture, ansible_facts.architecture) }}
signed-by=/etc/apt/keyrings/docker.asc]
https://download.docker.com/linux/{{ ansible_facts.distribution | lower }}
{{ ansible_facts.distribution_release }} stable
filename: docker
state: present
- name: Install Docker Engine and Compose plugin
ansible.builtin.apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: present
update_cache: true
- name: Enable and start Docker
ansible.builtin.systemd_service:
name: docker
state: started
enabled: true