42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
---
|
|
|
|
- name: Enable grafana apt-key
|
|
apt_key: url="https://apt.grafana.com/gpg.key"
|
|
|
|
- name: Enable grafana repository
|
|
apt_repository: repo="deb https://apt.grafana.com stable main"
|
|
|
|
- name: Install grafana
|
|
apt: name=grafana
|
|
|
|
- name: Ensure certificates are available
|
|
command: openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/nginx/ssl/{{ grafana_domain }}.key -out /etc/nginx/ssl/{{ grafana_domain }}.crt -days 730 -subj "/CN={{ grafana_domain }}" creates=/etc/nginx/ssl/{{ grafana_domain }}.crt
|
|
notify: Restart nginx
|
|
|
|
- name: Request nsupdate key for certificate
|
|
include_role: name=acme-dnskey-generate
|
|
vars:
|
|
acme_dnskey_san_domains:
|
|
- "{{ grafana_domain }}"
|
|
when: "'kitchen' in group_names"
|
|
|
|
- name: Configure certificate manager for grafana
|
|
template: src=certs.j2 dest=/etc/acertmgr/{{ grafana_domain }}.conf
|
|
notify: Run acertmgr
|
|
|
|
- name: Configure vhost
|
|
template: src=vhost.j2 dest=/etc/nginx/sites-available/grafana
|
|
notify: Restart nginx
|
|
|
|
- name: Enable vhost
|
|
file: src=/etc/nginx/sites-available/grafana dest=/etc/nginx/sites-enabled/grafana state=link
|
|
notify: Restart nginx
|
|
|
|
- name: Start grafana
|
|
service: name=grafana-server state=started enabled=yes
|
|
|
|
- name: Enable monitoring
|
|
include_role: name=icinga-monitor tasks_from=http
|
|
vars:
|
|
vhost: "{{ grafana_domain }}"
|