blob: 52fa7bdc0f78ba495c15ca59f7c0b097047a112a [file] [log] [blame]
{{- $zoo := .Values.zookeeper -}}
{{- $service := $zoo.service -}}
{{- if .Values.zookeeper.enabled }}
apiVersion: v1
kind: Service
metadata:
name: {{ template "zoo.name" . }}
namespace: {{ template "zoo.namespace" . }}
labels:
{{- include "zoo.labels" . | nindent 4 }}
{{- with $zoo.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with $zoo.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if $service.type }}
type: {{ $service.type }}
{{- end }}
{{- if $service.clusterIP }}
clusterIP: {{ $service.clusterIP }}
{{- end }}
{{- if $service.externalIPs }}
externalIPs: {{ $service.externalIPs }}
{{- end }}
{{- if $service.loadBalancerIP }}
loadBalancerIP: {{ $service.loadBalancerIP }}
{{- end }}
{{- if $service.loadBalancerSourceRanges }}
loadBalancerSourceRanges: {{ $service.loadBalancerSourceRanges }}
{{- end }}
{{- if $service.loadBalancerClass }}
loadBalancerClass: {{ $service.loadBalancerClass }}
{{- end }}
ports:
- name: tcp-client
port: {{ template "zoo.client" . }}
targetPort: client
- name: tcp-follower
port: {{ template "zoo.follower" . }}
targetPort: follower
- name: tcp-election
port: {{ template "zoo.election" . }}
targetPort: election
selector:
app: {{ template "zoo.selector" . }}
---
apiVersion: v1
kind: Service
metadata:
name: {{ template "zoo.name" . }}-headless
namespace: {{ template "zoo.namespace" . }}
labels:
{{- include "zoo.labels" . | nindent 4 }}
{{- with .Values.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with $zoo.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
{{- if $service.type }}
type: {{ $service.type }}
{{- end }}
clusterIP: None
{{- if $service.type }}
type: {{ $service.type }}
{{- end }}
{{- if $service.externalIPs }}
externalIPs: {{ $service.externalIPs }}
{{- end }}
{{- if $service.loadBalancerIP }}
loadBalancerIP: {{ $service.loadBalancerIP }}
{{- end }}
{{- if $service.loadBalancerSourceRanges }}
loadBalancerSourceRanges: {{ $service.loadBalancerSourceRanges }}
{{- end }}
{{- if $service.loadBalancerClass }}
loadBalancerClass: {{ $service.loadBalancerClass }}
{{- end }}
{{- if $service.sessionAffinity }}
sessionAffinity: {{ $service.sessionAffinity }}
{{- end }}
{{- if $service.publishNotReadyAddresses }}
publishNotReadyAddresses: {{ $service.publishNotReadyAddresses }}
{{- end }}
ports:
- name: tcp-client
port: {{ template "zoo.client" . }}
targetPort: client
- name: tcp-follower
port: {{ template "zoo.follower" . }}
targetPort: follower
- name: tcp-election
port: {{ template "zoo.election" . }}
targetPort: election
selector:
app: {{ template "zoo.selector" . }}
{{- end -}}