2025-12-23 19:56:26 +08:00

92 lines
2.2 KiB
YAML

---
- name: Create Grafana Directories
become: yes
become_user: jingrow
file:
path: "{{ item }}"
state: directory
mode: 0755
with_items:
- /home/jingrow/grafana
- /home/jingrow/grafana/provisioning
- /home/jingrow/grafana/provisioning/datasources
- /home/jingrow/grafana/provisioning/dashboards
- /home/jingrow/grafana/logs
- /home/jingrow/grafana/data
- /home/jingrow/grafana/data/dashboards
- /home/jingrow/grafana/data/plugins
- name: Set Architecture
set_fact:
arch: "{{'amd64' if (ansible_architecture == 'x86_64') else 'arm64'}}"
- name: Download Grafana Archive
become: yes
become_user: jingrow
unarchive:
src: "https://dl.grafana.com/oss/release/grafana-12.2.1.linux-{{ arch }}.tar.gz"
dest: /tmp
remote_src: yes
- name: Copy Grafana Directories
become: yes
become_user: jingrow
copy:
src: "/tmp/grafana-12.2.1/{{ item }}/"
dest: "/home/jingrow/grafana/{{ item }}/"
mode: 0755
remote_src: yes
with_items:
- bin
- conf
- plugins-bundled
- public
- name: Provision Prometheus Datasource
become: yes
become_user: jingrow
template:
src: prometheus.yml
dest: /home/jingrow/grafana/provisioning/datasources/prometheus.yml
mode: 0640
- name: Configure Grafana
become: yes
become_user: jingrow
template:
src: grafana.ini
dest: /home/jingrow/grafana/grafana.ini
mode: 0640
- name: Create Grafana Systemd Service File
template:
src: grafana.service
dest: /etc/systemd/system/grafana.service
owner: root
group: root
mode: 0644
- name: Restart Grafana Service
systemd:
daemon_reload: true
name: grafana
enabled: yes
state: restarted
- name: Setup Grafana Authentication
become: yes
become_user: jingrow
command: "htpasswd -Bbc /home/jingrow/agent/nginx/grafana.htpasswd jingrow {{ grafana_password }}"
- name: Setup Grafana HTTP Authentication
become: yes
become_user: jingrow
command: "htpasswd -Bbc /home/jingrow/agent/nginx/grafana-ui.htpasswd admin {{ grafana_password }}"
- name: Setup Agent NGINX
become: yes
become_user: jingrow
command: /home/jingrow/agent/env/bin/agent setup nginx
args:
chdir: /home/jingrow/agent