You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

132 lines
2.7 KiB
YAML

---
- name: install vnstat
pacman:
name: vnstat
state: present
- name: start and enable vnstat service
systemd:
name: vnstat.service
enabled: yes
state: started
- name: add interfaces to vnstat
command: /usr/bin/vnstat -u -i {{ item }}
args:
creates: '/var/lib/vnstat/{{ item }}'
with_items:
- bat0
- ens3
- ffmyk-mesh-vpn
- mullvad
- name: add output folder for vnstat graphs
file:
path: /srv/http/vnstat
state: directory
- name: install gd which is needed for graph generation
pacman:
name: gd
state: present
- name: add bash script to generate vnstat graphs
copy:
src: vnstat.sh
dest: /usr/local/bin/vnstat.sh
mode: 0744
- name: add cronjob to generate vnstat graphs
cron:
name: vnstat
minute: '*/5'
user: root
cron_file: fastd-api
job: '/usr/local/bin/vnstat.sh'
- name: add vnstat nginx config
copy:
src: vnstat
dest: /etc/nginx/sites-available/vnstat
register: nginx_config
- name: enable vnstat nginx config
file:
src: /etc/nginx/sites-available/vnstat
dest: /etc/nginx/sites-enabled/vnstat
state: link
- name: reload nginx
when: nginx_config.changed
systemd:
name: nginx.service
state: reloaded
- name: add bash script to check internet
copy:
src: check_internet.sh
dest: /usr/local/bin/check_internet.sh
mode: 0744
- name: add cronjob to check internet
cron:
name: check_internet
user: root
cron_file: fastd-api
job: '/usr/local/bin/check_internet.sh'
- name: install munin
pacman:
name: munin-node
state: present
- name: copy munin-node config
template:
src: munin-node.conf.j2
dest: /etc/munin/munin-node.conf
- name: copy fastd plugin
copy:
src: munin_fastd_plugin
dest: /usr/lib/munin/plugins/fastd_
mode: 0755
- name: copy dhcp-pool plugin
copy:
src: munin_dhcp_pool_plugin
dest: /usr/lib/munin/plugins/dhcp-pool
mode: 0755
- name: copy fastd plugin config
copy:
src: munin_fastd_conf
dest: /etc/munin/plugin-conf.d/fastd
- name: copy global config
copy:
src: munin_global_conf
dest: /etc/munin/plugin-conf.d/global
- name: install netstat
pacman:
name: net-tools
state: present
- name: install perl-lwp-protocol-https
pacman:
name: perl-lwp-protocol-https
state: present
- name: enable munin plugins
file:
path: /etc/munin/plugins/{{ item.name }}
src: /usr/lib/munin/plugins/{{ item.plugin | default( item.name ) }}
state: link
with_items: "{{ munin_node_plugins }}"
- name: start and enable munin-node
systemd:
name: munin-node.service
enabled: yes
state: started