Fusion de prometheus et granafa

This commit is contained in:
Adrien Reslinger 2020-04-20 18:03:28 +02:00
parent 82c43339cb
commit 2c57657fc9
39 changed files with 26968 additions and 57 deletions

View file

@ -3,13 +3,22 @@
- name: traefik setup
block:
- name: Find state of monitoring stack
set_facts:
monitoring_state: absent
when:
- prometheus_state == "absent"
- grafana_state == "absent"
- name: namespace
k8s:
state: "{{ prometheus_state }}"
state: "{{ monitoring_state }}"
context: "{{ my_context }}"
name: "{{ my_namespace }}"
api_version: v1
kind: Namespace
when:
- monitoring_state == "present"
# - name: Create a Secret object for basic authentification
# k8s:
@ -32,26 +41,63 @@
k8s:
state: "{{ prometheus_state }}"
context: "{{ my_context }}"
merge_type: merge
resource_definition: "{{ lookup('template', item) | from_yaml }}"
with_items:
# - 0-namespace.yaml
- rbac/cluster-role-binding.yaml
- rbac/cluster-role.yaml
- config.yaml
- deployment.yaml
- network-policy.yaml
- rules.yaml
- service-account.yaml
- service.yaml
- discovery/kube-controller-manager.yaml
- discovery/kube-proxy.yaml
- discovery/kube-scheduler.yaml
- exporters/kube-state-metrics/cluster-role-binding.yaml
- exporters/kube-state-metrics/cluster-role.yaml
- exporters/kube-state-metrics/deployment.yaml
- exporters/kube-state-metrics/service-account.yaml
- exporters/kube-state-metrics/service.yaml
- exporters/node-exporter/daemonset.yaml
- exporters/node-exporter/service-account.yaml
- exporters/node-exporter/service.yaml
tags: traefik
# - prometheus/0-namespace.yaml
- prometheus/rbac/cluster-role-binding.yaml
- prometheus/rbac/cluster-role.yaml
- prometheus/config.yaml
- prometheus/deployment.yaml
- prometheus/network-policy.yaml
- prometheus/rules.yaml
- prometheus/service-account.yaml
- prometheus/service.yaml
- prometheus/discovery/kube-controller-manager.yaml
- prometheus/discovery/kube-proxy.yaml
- prometheus/discovery/kube-scheduler.yaml
- prometheus/exporters/kube-state-metrics/cluster-role-binding.yaml
- prometheus/exporters/kube-state-metrics/cluster-role.yaml
- prometheus/exporters/kube-state-metrics/deployment.yaml
- prometheus/exporters/kube-state-metrics/service-account.yaml
- prometheus/exporters/kube-state-metrics/service.yaml
- prometheus/exporters/node-exporter/daemonset.yaml
- prometheus/exporters/node-exporter/service-account.yaml
- prometheus/exporters/node-exporter/service.yaml
tags: monitoring
- name: Grafana files need to be {{ grafana_state }}
k8s:
state: "{{ grafana_state }}"
context: "{{ my_context }}"
merge_type: merge
resource_definition: "{{ lookup('template', item) | from_yaml }}"
with_items:
- grafana/config.yaml
- grafana/dashboards-coredns.yaml
- grafana/dashboards-etcd.yaml
- grafana/dashboards-k8s.yaml
- grafana/dashboards-k8s-nodes.yaml
- grafana/dashboards-k8s-resources-1.yaml
- grafana/dashboards-k8s-resources-2.yaml
- grafana/dashboards-nginx-ingress.yaml
- grafana/dashboards-node-exporter.yaml
- grafana/dashboards-prom.yaml
- grafana/datasources.yaml
- grafana/deployment.yaml
- grafana/providers.yaml
- grafana/service.yaml
tags: grafana
- name: namespace
k8s:
state: "{{ monitoring_state }}"
context: "{{ my_context }}"
name: "{{ my_namespace }}"
api_version: v1
kind: Namespace
when:
- monitoring_state == "absent"
tags:
- monitoring