feat: add blackbox monitoring and app3 deployment

- Add blackbox exporter role and playbooks
- Add cadvisor, docker, httpbin roles
- Add app3 deployment playbooks
- Configure blackbox monitoring
This commit is contained in:
Freazzzing
2026-02-04 10:20:24 +00:00
parent d70c2813de
commit aa3e0c8f54
19 changed files with 1045 additions and 0 deletions

View File

@ -0,0 +1,76 @@
---
- name: Configure Prometheus for Blackbox monitoring
hosts: 192.168.0.105
become: yes
vars:
blackbox_targets:
# Основные сервисы стенда (из ИП)
- "http://192.168.0.110/"
- "http://192.168.0.111:9187/metrics" # postgres_exporter
- "http://192.168.0.112:8080/get" # httpbin
- "http://192.168.0.112:8081/metrics" # cadvisor
- "http://192.168.0.100:3000/" # forgejo
- "http://192.168.0.101:9100/metrics" # ansible node_exporter
- "http://192.168.0.103:8200/ui/" # vault
- "http://192.168.0.104:8428/metrics" # victoriametrics
- "http://192.168.0.105:9090/metrics" # prometheus
- "http://192.168.0.106:3000" # grafana
# Основные домены (первые для теста)
- "http://forgejo.pvenode.ru/"
- "http://grafana.pvenode.ru/"
- "http://prometheus.pvenode.ru/"
- "http://app1.pvenode.ru/"
- "http://wiki.pvenode.ru/"
tasks:
- name: Backup original Prometheus config
copy:
src: /etc/prometheus/prometheus.yml
dest: /etc/prometheus/prometheus.yml.backup-{{ ansible_date_time.epoch }}
remote_src: yes
tags: prometheus
- name: Add blackbox exporter to Prometheus
blockinfile:
path: /etc/prometheus/prometheus.yml
insertafter: ' # cAdvisor container metrics'
block: |
# Blackbox Exporter probes
- job_name: 'blackbox'
metrics_path: /probe
params:
module: [http_2xx]
static_configs:
- targets:
{% for target in blackbox_targets %}
- "{{ target }}"
{% endfor %}
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 192.168.0.112:8083 # blackbox-exporter
marker: "# {mark} ANSIBLE MANAGED BLOCK - blackbox"
tags: prometheus
- name: Check Prometheus configuration
command: promtool check config /etc/prometheus/prometheus.yml
register: promtool_check
failed_when: promtool_check.rc != 0
tags: prometheus
- name: Reload Prometheus
systemd:
name: prometheus
state: reloaded
when: promtool_check.rc == 0
tags: prometheus
- name: Show configured targets
debug:
msg: "Added {{ blackbox_targets|length }} targets to blackbox monitoring"
tags: prometheus