dev-tools/charts/nifi/templates/nifimonitor.yaml
2026-06-04 11:46:59 +03:00

76 lines
2.3 KiB
YAML

{{- if .Values.nifiMonitor.enabled }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "nifi.fullname" . }}-monitor
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ include "nifi.name" . }}-monitor
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
replicas: {{ .Values.nifiMonitor.replicas }}
selector:
matchLabels:
app: {{ include "nifi.name" . }}-monitor
template:
metadata:
labels:
app: {{ include "nifi.name" . }}-monitor
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "5000"
prometheus.io/path: "/metrics"
spec:
containers:
- name: nifi-monitor
image: "sakkiii/nifi_exporter:latest"
imagePullPolicy: IfNotPresent
ports:
- containerPort: 5000
env:
- name: BASE_URL
value: {{ include "nifi.fullname" . }}.{{ .Release.Namespace }}
- name: CERT_FILE
value: "/opt/nifiMonitor/tls.crt"
- name: KEY_FILE
value: "/opt/nifiMonitor/tls.key"
volumeMounts:
- name: certs
mountPath: /opt/nifiMonitor
readOnly: true
resources:
{{- toYaml .Values.nifiMonitor.resources | nindent 12 }}
tolerations:
{{- toYaml .Values.nifiMonitor.tolerations | nindent 8 }}
affinity:
{{- toYaml .Values.nifiMonitor.affinity | nindent 8 }}
nodeSelector:
{{- toYaml .Values.nifiMonitor.nodeSelector | nindent 8 }}
volumes:
- name: certs
secret:
secretName: {{ include "nifi.fullname" . }}-tls # The secret created by cert-manager
optional: false # Secret must be present
restartPolicy: Always
{{- end }}
---
{{- if .Values.nifiMonitor.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ include "nifi.fullname" . }}-monitor-service
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ include "nifi.name" . }}-monitor
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
ports:
- port: 5000
targetPort: 5000
protocol: TCP
name: metrics
selector:
app: {{ include "nifi.name" . }}-monitor
type: ClusterIP
{{- end }}