Update 2 files

- /group_vars/all.yml
- /roles/cadvisor/tasks/main.yml
This commit is contained in:
Administrator 2025-11-20 10:41:55 +00:00
parent 484f195cac
commit 89832f1252
2 changed files with 58 additions and 11 deletions

View File

@ -21,13 +21,7 @@ monitoring_groups:
# Все серверы с node_exporter
node_exporter_servers:
- "{{ server_ips.olimp }}"
- "{{ server_ips.gateway }}"
- "{{ server_ips.data }}"
- "{{ server_ips.media }}"
- "{{ server_ips.photo }}"
- "{{ server_ips.nextcloud }}"
- "{{ server_ips.talk }}"
- "{{ server_ips.games }}"
- "{{ server_ips.manage }}"
# Серверы с Docker (cAdvisor)

View File

@ -5,7 +5,7 @@
ignore_errors: yes
changed_when: false
- name: Install cAdvisor (only on Docker hosts)
- name: Install cAdvisor
block:
- name: Create cAdvisor directories
file:
@ -17,6 +17,16 @@
- "{{ cadvisor_config_dir }}"
become: yes
- name: Check if port {{ cadvisor_port }} is available
wait_for:
host: localhost
port: "{{ cadvisor_port }}"
state: stopped
timeout: 5
ignore_errors: yes
register: port_check
become: no
- name: Deploy cAdvisor docker-compose
template:
src: docker-compose.yml.j2
@ -26,6 +36,13 @@
mode: '0644'
become: yes
- name: Stop existing cAdvisor container
community.docker.docker_compose_v2:
project_src: "{{ cadvisor_base_dir }}"
state: absent
become: yes
ignore_errors: yes
- name: Run cAdvisor container
community.docker.docker_compose_v2:
project_src: "{{ cadvisor_base_dir }}"
@ -35,24 +52,60 @@
- name: Wait for cAdvisor to start
wait_for:
host: localhost
port: 8080
port: "{{ cadvisor_port }}"
timeout: 30
state: started
become: no
- name: Check cAdvisor container status
community.docker.docker_container_info:
name: cadvisor
register: container_info
become: yes
- name: Verify cAdvisor is responding
uri:
url: "http://localhost:8080/metrics"
url: "http://localhost:{{ cadvisor_port }}/metrics"
status_code: 200
timeout: 10
register: cadvisor_check
become: yes
become: no
- name: Show cAdvisor status
debug:
msg: "cAdvisor is running and responding on port {{ cadvisor_internal_port }}"
msg: "cAdvisor is running and responding on port {{ cadvisor_port }}"
when: cadvisor_check.status == 200
rescue:
- name: Get cAdvisor container logs
community.docker.docker_container_logs:
name: cadvisor
tail: 50
register: cadvisor_logs
become: yes
- name: Display cAdvisor logs for debugging
debug:
var: cadvisor_logs.log
when: cadvisor_logs is defined
- name: Check running containers
command: docker ps -a
register: docker_ps
become: yes
- name: Display running containers
debug:
var: docker_ps.stdout
when: docker_ps is defined
- name: Fail with detailed error message
fail:
msg: |
cAdvisor не удалось запустить {{ inventory_hostname }}.
Порт {{ cadvisor_port }} может использоваться или контейнер выходит из строя.
Подробности смотрите в журналах выше.
when:
- docker_check.rc == 0
- cadvisor_enabled | default(true)