snel.kubernetes-cluster/roles/k8s_rancher_monitoring/tasks/main.yml

86 lines
2.9 KiB
YAML

---
- name: Helm add Rancher Monitoring repo
delegate_to: "{{ kubectl_host }}"
run_once: true
kubernetes.core.helm_repository:
name: rancher-monitoring
repo_url: "https://raw.githubusercontent.com/rancher/charts/release-v2.8"
- name: Namespace
delegate_to: "{{ kubectl_host }}"
kubernetes.core.k8s:
kubeconfig: "{{ kubeconfig }}"
resource_definition:
apiVersion: v1
kind: Namespace
metadata:
name: cattle-monitoring-system
labels:
pod-security.kubernetes.io/audit: privileged
pod-security.kubernetes.io/enforce: privileged
pod-security.kubernetes.io/warn: privileged
- name: Helm deploy Rancher Monitoring
delegate_to: "{{ kubectl_host }}"
kubernetes.core.helm:
kubeconfig: "{{ kubeconfig }}"
chart_ref: rancher/rancher
release_name: rancher
release_namespace: cattle-monitoring-system
create_namespace: false
wait: true
# https://github.com/rancher/charts/blob/release-v2.8/charts/rancher-monitoring/102.0.1%2Bup40.1.2/values.yaml
values:
global:
cattle:
url: "https://{{ rancher_hostname }}"
grafana:
# https://github.com/grafana/helm-charts/blob/main/charts/grafana/values.yaml
grafana.ini:
server:
domain: "{{ rancher_hostname }}"
root_url: "https://{{ rancher_hostname }}/api/v1/namespaces/cattle-monitoring-system/services/http:rancher-monitoring-grafana:80/proxy/"
persistence:
accessModes:
- ReadWriteOnce
enabled: true
size: 1Gi
storageClassName: mayastor-2replicas
type: pvc
sidecar:
dashboards:
enabled: true
searchNamespace: ALL
kube-state-metrics:
metricLabelsAllowlist:
- pods=[*]
- deployments=[app.kubernetes.io/name,app.kubernetes.io/component,app.kubernetes.io/instance]
prometheus:
serviceMonitorSelectorNilUsesHelmValues: false
podMonitorSelectorNilUsesHelmValues: false
prometheusSpec:
externalUrl: "https://{{ rancher_hostname }}/api/v1/namespaces/cattle-monitoring-system/services/http:rancher-monitoring-prometheus:9090/proxy"
retentionSize: 10GiB
scrapeInterval: 60s
resources:
limits:
memory: 6000Mi
cpu: 2000m
requests:
memory: 3000Mi
cpu: 1500m
storageSpec:
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
storageClassName: mayastor-2replicas
alertmanager:
alertmanagerSpec:
externalUrl: "https://{{ rancher_hostname }}/api/v1/namespaces/cattle-monitoring-system/services/http:rancher-monitoring-alertmanager:9093/proxy"
logLevel: debug