forked from CCCHH/ansible-infra
		
	
		
			
				
	
	
		
			141 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			141 lines
		
	
	
	
		
			5.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| docker_compose__compose_file_content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/compose.yaml.j2') }}"
 | |
| docker_compose__configuration_files:
 | |
|   - name: grafana.ini
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/grafana.ini.j2') }}"
 | |
|   - name: grafana-datasource.yml
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/grafana-datasource.yml') }}"
 | |
|   - name: prometheus.yml
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/prometheus.yml') }}"
 | |
|   - name: alertmanager.yaml
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/alertmanager.yaml.j2') }}"
 | |
|   - name: prometheus_alerts.rules.yaml
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/prometheus_alerts.rules.yaml') }}"
 | |
|   - name: prometheus_alerts-fux.rules.yaml
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/prometheus_alerts-fux.rules.yaml') }}"
 | |
|   - name: alertmanager_alert_templates.tmpl
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/alertmanager_alert_templates.tmpl') }}"
 | |
|   - name: loki.yaml
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/docker_compose/loki.yaml') }}"
 | |
|   - name: ntfy-alertmanager-ccchh-critical
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/ntfy-alertmanager-ccchh-critical.j2') }}"
 | |
|   - name: ntfy-alertmanager-ccchh
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/ntfy-alertmanager-ccchh.j2') }}"
 | |
|   - name: ntfy-alertmanager-fux-critical
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/ntfy-alertmanager-fux-critical.j2') }}"
 | |
|   - name: ntfy-alertmanager-fux
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/docker_compose/ntfy-alertmanager-fux.j2') }}"
 | |
| 
 | |
| certbot__version_spec: ""
 | |
| certbot__acme_account_email_address: le-admin@hamburg.ccc.de
 | |
| certbot__certificate_domains:
 | |
|   - "grafana.hamburg.ccc.de"
 | |
|   - "loki.hamburg.ccc.de"
 | |
|   - "metrics.hamburg.ccc.de"
 | |
| 
 | |
| certbot__new_cert_commands:
 | |
|   - "systemctl reload nginx.service"
 | |
| 
 | |
| nginx__version_spec: ""
 | |
| nginx__deploy_redirect_conf: false
 | |
| nginx__deploy_htpasswds: true
 | |
| nginx__htpasswds:
 | |
|   - name: loki
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/nginx/loki.htpasswd.j2') }}"
 | |
|   - name: metrics
 | |
|     content: "{{ lookup('ansible.builtin.template', 'resources/chaosknoten/grafana/nginx/metrics.htpasswd.j2') }}"
 | |
| nginx__configurations:
 | |
|   - name: redirectv6
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/redirect.conf') }}"
 | |
|   - name: grafana.hamburg.ccc.de
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/grafana.hamburg.ccc.de.conf') }}"
 | |
|   - name: loki.hamburg.ccc.de
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/loki.hamburg.ccc.de.conf') }}"
 | |
|   - name: metrics.hamburg.ccc.de
 | |
|     content: "{{ lookup('ansible.builtin.file', 'resources/chaosknoten/grafana/nginx/metrics.hamburg.ccc.de.conf') }}"
 | |
| 
 | |
| 
 | |
| alloy_config: |
 | |
|   prometheus.remote_write "default" {
 | |
|     endpoint {
 | |
|       url = "https://metrics.hamburg.ccc.de/api/v1/write"
 | |
|       basic_auth {
 | |
|         username = "chaos"
 | |
|         password = "{{ secret__metrics_chaos }}"
 | |
|       }
 | |
|     }
 | |
|   }
 | |
|   loki.write "default" {
 | |
|     endpoint {
 | |
|       url = "https://loki.hamburg.ccc.de/loki/api/v1/push"
 | |
|       basic_auth {
 | |
|         username = "chaos"
 | |
|         password = "{{ secret__loki_chaos }}"
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   loki.relabel "journal" {
 | |
|     forward_to = []
 | |
| 
 | |
|     rule {
 | |
|       source_labels = ["__journal__systemd_unit"]
 | |
|       target_label  = "systemd_unit"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["__journal__hostname"]
 | |
|       target_label = "instance"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["__journal__transport"]
 | |
|       target_label = "systemd_transport"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["__journal_syslog_identifier"]
 | |
|       target_label = "syslog_identifier"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["__journal_priority_keyword"]
 | |
|       target_label  = "level"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["__journal__hostname"]
 | |
|       target_label = "host"
 | |
|       regex  = "([^:]+)"
 | |
|       replacement = "${1}.hamburg.ccc.de"
 | |
|       action = "replace"
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   loki.source.journal "read_journal"  {
 | |
|     forward_to    = [loki.write.default.receiver]
 | |
|     relabel_rules = loki.relabel.journal.rules
 | |
|     format_as_json = true
 | |
|     labels        = {component = "loki.source.journal", org = "ccchh"}
 | |
|   }
 | |
| 
 | |
|   logging {
 | |
|     level = "info"
 | |
|   }
 | |
|   prometheus.exporter.unix "local_system" {
 | |
|     enable_collectors = ["systemd"]
 | |
|   }
 | |
| 
 | |
|   prometheus.relabel "default" {
 | |
|     forward_to = [prometheus.remote_write.default.receiver]
 | |
|     rule {
 | |
|       target_label = "org"
 | |
|       replacement = "ccchh"
 | |
|     }
 | |
|     rule {
 | |
|       source_labels = ["instance"]
 | |
|       target_label = "host"
 | |
|       regex  = "([^:]+)"
 | |
|       replacement = "${1}.hamburg.ccc.de"
 | |
|       action = "replace"
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   prometheus.scrape "scrape_metrics" {
 | |
|     targets           = prometheus.exporter.unix.local_system.targets
 | |
|     forward_to        = [prometheus.relabel.default.receiver]
 | |
|   }
 |