71 lines
1.5 KiB
YAML
71 lines
1.5 KiB
YAML
{{- if and .Values.metrics.enabled .Values.metrics.serviceMonitor.enabled }}
|
|
|
|
{{- if .Values.metrics.prometheus.createClusterRole }}
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRole
|
|
metadata:
|
|
name: {{ .Values.metrics.prometheus.createClustrerRoleName }}
|
|
rules:
|
|
- apiGroups: [""]
|
|
resources:
|
|
- pods
|
|
- pods/metrics
|
|
- pods/status
|
|
- services
|
|
- endpoints
|
|
- nodes
|
|
- nodes/metrics
|
|
- nodes/proxy
|
|
- nodes/stats
|
|
- namespaces
|
|
- configmaps
|
|
- secrets
|
|
- serviceaccounts
|
|
- events
|
|
verbs: ["get", "list", "watch"]
|
|
- apiGroups: ["apps"]
|
|
resources:
|
|
- deployments
|
|
- daemonsets
|
|
- replicasets
|
|
- statefulsets
|
|
verbs: ["get", "list", "watch"]
|
|
- apiGroups: ["monitoring.coreos.com"]
|
|
resources:
|
|
- servicemonitors
|
|
- prometheusrules
|
|
- podmonitors
|
|
- alerts
|
|
- alertmanagers
|
|
- prometheuses
|
|
- thanosrulers
|
|
- probes
|
|
verbs: ["get", "list", "watch"]
|
|
- apiGroups: ["networking.k8s.io"]
|
|
resources:
|
|
- ingresses
|
|
- networkpolicies
|
|
verbs: ["get", "list", "watch"]
|
|
|
|
{{- end }}
|
|
|
|
---
|
|
apiVersion: rbac.authorization.k8s.io/v1
|
|
kind: ClusterRoleBinding
|
|
metadata:
|
|
name: exa-prometheus-clustre-role-binding
|
|
subjects:
|
|
- kind: ServiceAccount
|
|
name: {{ .Values.metrics.prometheus.serviceAccountName }}
|
|
namespace: {{ .Values.metrics.serviceMonitor.namespace }}
|
|
roleRef:
|
|
kind: ClusterRole
|
|
{{- if .Values.metrics.prometheus.createClusterRole }}
|
|
name: {{ .Values.metrics.prometheus.createClustrerRoleName }}
|
|
{{- else }}
|
|
name: {{ .Values.metrics.prometheus.clusterRoleName }}
|
|
{{- end }}
|
|
apiGroup: rbac.authorization.k8s.io
|
|
{{- end }}
|
|
|