diff --git a/chart/templates/pdb.yaml b/chart/templates/pdb.yaml index 66bd52f8..592961f9 100644 --- a/chart/templates/pdb.yaml +++ b/chart/templates/pdb.yaml @@ -1,3 +1,4 @@ +{{- if .Values.podDisruptionBudget.enabled }} apiVersion: policy/v1 kind: PodDisruptionBudget metadata: @@ -5,7 +6,16 @@ metadata: labels: {{- include "kube-httpcache.labels" . | nindent 4 }} spec: - maxUnavailable: 1 + {{- if .Values.podDisruptionBudget.maxUnavailable }} + maxUnavailable: {{ .Values.podDisruptionBudget.maxUnavailable }} + {{- end }} + {{- if .Values.podDisruptionBudget.minAvailable }} + minAvailable: {{ .Values.podDisruptionBudget.minAvailable }} + {{- end }} + {{- if .Values.podDisruptionBudget.unhealthyPodEvictionPolicy }} + unhealthyPodEvictionPolicy: {{ .Values.podDisruptionBudget.unhealthyPodEvictionPolicy }} + {{- end }} selector: matchLabels: {{- include "kube-httpcache.selectorLabels" . | nindent 6 }} +{{- end }} diff --git a/chart/values.yaml b/chart/values.yaml index 688554bf..23891bda 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -242,6 +242,14 @@ autoscaling: targetCPUUtilizationPercentage: 80 # targetMemoryUtilizationPercentage: 80 +podDisruptionBudget: + enabled: true + # You can use either maxUnavailable or minAvailable (but not both) and also you have to setup another one to null. + maxUnavailable: 1 + minAvailable: null + # Additional spec configuration + # unhealthyPodEvictionPolicy: IfHealthyBudget + nodeSelector: {} tolerations: []