kubezero/charts/kubezero-metrics/charts/kube-prometheus-stack/templates/prometheus/service.yaml

61 lines
2.3 KiB
YAML

{{- if .Values.prometheus.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ template "kube-prometheus-stack.fullname" . }}-prometheus
namespace: {{ template "kube-prometheus-stack.namespace" . }}
labels:
app: {{ template "kube-prometheus-stack.name" . }}-prometheus
self-monitor: {{ .Values.prometheus.serviceMonitor.selfMonitor | quote }}
{{ include "kube-prometheus-stack.labels" . | indent 4 }}
{{- if .Values.prometheus.service.labels }}
{{ toYaml .Values.prometheus.service.labels | indent 4 }}
{{- end }}
{{- if .Values.prometheus.service.annotations }}
annotations:
{{ toYaml .Values.prometheus.service.annotations | indent 4 }}
{{- end }}
spec:
{{- if .Values.prometheus.service.clusterIP }}
clusterIP: {{ .Values.prometheus.service.clusterIP }}
{{- end }}
{{- if .Values.prometheus.service.externalIPs }}
externalIPs:
{{ toYaml .Values.prometheus.service.externalIPs | indent 4 }}
{{- end }}
{{- if .Values.prometheus.service.loadBalancerIP }}
loadBalancerIP: {{ .Values.prometheus.service.loadBalancerIP }}
{{- end }}
{{- if .Values.prometheus.service.loadBalancerSourceRanges }}
loadBalancerSourceRanges:
{{- range $cidr := .Values.prometheus.service.loadBalancerSourceRanges }}
- {{ $cidr }}
{{- end }}
{{- end }}
ports:
- name: {{ .Values.prometheus.prometheusSpec.portName }}
{{- if eq .Values.prometheus.service.type "NodePort" }}
nodePort: {{ .Values.prometheus.service.nodePort }}
{{- end }}
port: {{ .Values.prometheus.service.port }}
targetPort: {{ .Values.prometheus.service.targetPort }}
{{- if .Values.prometheus.thanosIngress.enabled }}
- name: grpc
{{- if eq .Values.prometheus.service.type "NodePort" }}
nodePort: {{ .Values.prometheus.thanosIngress.nodePort }}
{{- end }}
port: {{ .Values.prometheus.thanosIngress.servicePort }}
targetPort: {{ .Values.prometheus.thanosIngress.servicePort }}
{{- end }}
{{- if .Values.prometheus.service.additionalPorts }}
{{ toYaml .Values.prometheus.service.additionalPorts | indent 2 }}
{{- end }}
selector:
app.kubernetes.io/name: prometheus
prometheus: {{ template "kube-prometheus-stack.fullname" . }}-prometheus
{{- if .Values.prometheus.service.sessionAffinity }}
sessionAffinity: {{ .Values.prometheus.service.sessionAffinity }}
{{- end }}
type: "{{ .Values.prometheus.service.type }}"
{{- end }}