mgmt/ansible/install-monitoring-agents.yml

70 lines
1.9 KiB
YAML

---
- name: 批量安装监控代理软件
hosts: nomad_cluster
become: yes
vars:
ansible_python_interpreter: /usr/bin/python3
tasks:
- name: 添加Grafana APT源
apt_repository:
repo: "deb [trusted=yes] https://packages.grafana.com/oss/deb stable main"
state: present
filename: grafana
when: ansible_distribution == "Debian" or ansible_distribution == "Ubuntu"
tags:
- grafana-repo
- name: 更新APT缓存
apt:
update_cache: yes
tags:
- update-cache
- name: 检查node-exporter是否已安装
command: which prometheus-node-exporter
register: node_exporter_check
failed_when: false
changed_when: false
- name: 安装prometheus-node-exporter
apt:
name: prometheus-node-exporter
state: present
update_cache: yes
when: node_exporter_check.rc != 0
register: node_exporter_install
- name: 显示node-exporter安装结果
debug:
msg: "{{ inventory_hostname }}: {{ '已安装' if node_exporter_check.rc == 0 else '安装完成' if node_exporter_install.changed else '安装失败' }}"
- name: 检查promtail是否已安装
command: which promtail
register: promtail_check
failed_when: false
changed_when: false
- name: 安装promtail
apt:
name: promtail
state: present
update_cache: yes
when: promtail_check.rc != 0
register: promtail_install
- name: 显示promtail安装结果
debug:
msg: "{{ inventory_hostname }}: {{ '已安装' if promtail_check.rc == 0 else '安装完成' if promtail_install.changed else '安装失败' }}"
- name: 创建promtail数据目录
file:
path: /opt/promtail/data
state: directory
owner: promtail
group: nogroup
mode: '0755'
when: promtail_check.rc != 0 or promtail_install.changed
tags:
- promtail-dirs