forked from suse-edge/Factory
unpack obscpio files
This commit is contained in:
194
metallb-chart/templates/servicemonitor.yaml
Normal file
194
metallb-chart/templates/servicemonitor.yaml
Normal file
@@ -0,0 +1,194 @@
|
||||
{{- if .Values.prometheus.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "metallb.fullname" . }}-speaker-monitor
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "metallb.labels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: speaker
|
||||
{{- if .Values.prometheus.serviceMonitor.speaker.additionalLabels }}
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.speaker.additionalLabels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.prometheus.serviceMonitor.speaker.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.speaker.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: {{ template "metrics.exposedportname" . }}
|
||||
honorLabels: true
|
||||
{{- if .Values.prometheus.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings:
|
||||
{{- toYaml .Values.prometheus.serviceMonitor.metricRelabelings | nindent 8 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.prometheus.serviceMonitor.relabelings }}
|
||||
relabelings:
|
||||
{{- toYaml .Values.prometheus.serviceMonitor.relabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.prometheus.serviceMonitor.interval }}
|
||||
interval: {{ .Values.prometheus.serviceMonitor.interval }}
|
||||
{{- end -}}
|
||||
{{ if .Values.prometheus.secureMetricsPort }}
|
||||
bearerTokenFile: "/var/run/secrets/kubernetes.io/serviceaccount/token"
|
||||
scheme: "https"
|
||||
{{- if .Values.prometheus.serviceMonitor.speaker.tlsConfig }}
|
||||
tlsConfig:
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.speaker.tlsConfig | indent 8 }}
|
||||
{{- end }}
|
||||
{{ end }}
|
||||
{{- if .Values.speaker.frr.enabled }}
|
||||
- port: {{ template "metrics.exposedfrrportname" . }}
|
||||
honorLabels: true
|
||||
{{ if .Values.speaker.frr.secureMetricsPort }}
|
||||
{{- if .Values.prometheus.serviceMonitor.interval }}
|
||||
interval: {{ .Values.prometheus.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
bearerTokenFile: "/var/run/secrets/kubernetes.io/serviceaccount/token"
|
||||
scheme: "https"
|
||||
{{- if .Values.prometheus.serviceMonitor.speaker.tlsConfig }}
|
||||
tlsConfig:
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.speaker.tlsConfig | indent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
jobLabel: {{ .Values.prometheus.serviceMonitor.jobLabel | quote }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
selector:
|
||||
matchLabels:
|
||||
name: {{ template "metallb.fullname" . }}-speaker-monitor-service
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
prometheus.io/scrape: "true"
|
||||
{{- if .Values.prometheus.serviceMonitor.speaker.annotations }}
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.speaker.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
name: {{ template "metallb.fullname" . }}-speaker-monitor-service
|
||||
{{- include "metallb.labels" . | nindent 4 }}
|
||||
name: {{ template "metallb.fullname" . }}-speaker-monitor-service
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
selector:
|
||||
{{- include "metallb.selectorLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: speaker
|
||||
clusterIP: None
|
||||
ports:
|
||||
- name: {{ template "metrics.exposedportname" . }}
|
||||
port: {{ template "metrics.exposedport" . }}
|
||||
targetPort: {{ template "metrics.exposedport" . }}
|
||||
{{- if .Values.speaker.frr.enabled }}
|
||||
- name: {{ template "metrics.exposedfrrportname" . }}
|
||||
port: {{ template "metrics.exposedfrrport" . }}
|
||||
targetPort: {{ template "metrics.exposedfrrport" . }}
|
||||
{{- end }}
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
||||
---
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "metallb.fullname" . }}-controller-monitor
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels:
|
||||
{{- include "metallb.labels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: speaker
|
||||
{{- if .Values.prometheus.serviceMonitor.controller.additionalLabels }}
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.controller.additionalLabels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.prometheus.serviceMonitor.controller.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.controller.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: {{ template "metrics.exposedportname" . }}
|
||||
{{- if .Values.prometheus.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings:
|
||||
{{- toYaml .Values.prometheus.serviceMonitor.metricRelabelings | nindent 8 }}
|
||||
{{- end -}}
|
||||
{{- if .Values.prometheus.serviceMonitor.relabelings }}
|
||||
relabelings:
|
||||
{{- toYaml .Values.prometheus.serviceMonitor.relabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.prometheus.serviceMonitor.interval }}
|
||||
interval: {{ .Values.prometheus.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
honorLabels: true
|
||||
{{- if .Values.prometheus.secureMetricsPort }}
|
||||
bearerTokenFile: "/var/run/secrets/kubernetes.io/serviceaccount/token"
|
||||
scheme: "https"
|
||||
{{- if .Values.prometheus.serviceMonitor.controller.tlsConfig }}
|
||||
tlsConfig:
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.controller.tlsConfig | indent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
jobLabel: {{ .Values.prometheus.serviceMonitor.jobLabel | quote }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
selector:
|
||||
matchLabels:
|
||||
name: {{ template "metallb.fullname" . }}-controller-monitor-service
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
prometheus.io/scrape: "true"
|
||||
{{- if .Values.prometheus.serviceMonitor.controller.annotations }}
|
||||
{{ toYaml .Values.prometheus.serviceMonitor.controller.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
name: {{ template "metallb.fullname" . }}-controller-monitor-service
|
||||
name: {{ template "metallb.fullname" . }}-controller-monitor-service
|
||||
spec:
|
||||
selector:
|
||||
{{- include "metallb.selectorLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: controller
|
||||
clusterIP: None
|
||||
ports:
|
||||
- name: {{ template "metrics.exposedportname" . }}
|
||||
port: {{ template "metrics.exposedport" . }}
|
||||
targetPort: {{ template "metrics.exposedport" . }}
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
||||
---
|
||||
{{- if .Values.prometheus.rbacPrometheus }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ template "metallb.fullname" . }}-prometheus
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- pods
|
||||
- services
|
||||
- endpoints
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "metallb.fullname" . }}-prometheus
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "metallb.fullname" . }}-prometheus
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ required ".Values.prometheus.serviceAccount must be defined when .Values.prometheus.serviceMonitor.enabled == true" .Values.prometheus.serviceAccount }}
|
||||
namespace: {{ required ".Values.prometheus.namespace must be defined when .Values.prometheus.serviceMonitor.enabled == true" .Values.prometheus.namespace }}
|
||||
{{- end }}
|
||||
{{- end }}
|
Reference in New Issue
Block a user