Skip to content

Commit fde6977

Browse files
committed
feat(chart): VPA Updater PodDisruptionBudget
Signed-off-by: phuhung273 <[email protected]>
1 parent ed74077 commit fde6977

File tree

4 files changed

+36
-4
lines changed

4 files changed

+36
-4
lines changed

vertical-pod-autoscaler/charts/vertical-pod-autoscaler/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ type: application
1515
# This is the chart version. This version number should be incremented each time you make changes
1616
# to the chart and its templates, including the app version.
1717
# Versions are expected to follow Semantic Versioning (https://semver.org/)
18-
version: 0.5.0
18+
version: 0.6.0
1919

2020
# This is the version number of the application being deployed. This version number should be
2121
# incremented each time you make changes to the application. Versions are not expected to

vertical-pod-autoscaler/charts/vertical-pod-autoscaler/README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ WARNING: This chart is currently under development and is not ready for producti
44

55
Automatically adjust resources for your workloads
66

7-
![Version: 0.5.0](https://img.shields.io/badge/Version-0.5.0-informational?style=flat-square)
7+
![Version: 0.6.0](https://img.shields.io/badge/Version-0.6.0-informational?style=flat-square)
88
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square)
99
![AppVersion: 1.5.1](https://img.shields.io/badge/AppVersion-1.5.1-informational?style=flat-square)
1010

@@ -98,5 +98,8 @@ The Vertical Pod Autoscaler (VPA) automatically adjusts the CPU and memory resou
9898
| updater.image.repository | string | `"registry.k8s.io/autoscaling/vpa-updater"` | |
9999
| updater.image.tag | string | `nil` | |
100100
| updater.podAnnotations | object | `{}` | |
101+
| updater.podDisruptionBudget.enabled | bool | `true` | |
102+
| updater.podDisruptionBudget.maxUnavailable | int or string | `nil` | Maximum number/percentage of pods that can be unavailable after the eviction. IMPORTANT: You can specify either 'minAvailable' or 'maxUnavailable', but not both. |
103+
| updater.podDisruptionBudget.minAvailable | int or string | `1` | Minimum number/percentage of pods that must be available after the eviction. IMPORTANT: You can specify either 'minAvailable' or 'maxUnavailable', but not both. |
101104
| updater.podLabels | object | `{}` | |
102-
| updater.replicas | int | `1` | |
105+
| updater.replicas | int | `2` | |
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{{- if and .Values.updater.enabled .Values.updater.podDisruptionBudget.enabled -}}
2+
apiVersion: policy/v1
3+
kind: PodDisruptionBudget
4+
metadata:
5+
name: {{ include "vertical-pod-autoscaler.updater.fullname" . }}
6+
namespace: {{ .Release.Namespace }}
7+
labels:
8+
{{- include "vertical-pod-autoscaler.updater.labels" . | nindent 4 }}
9+
spec:
10+
selector:
11+
matchLabels:
12+
{{- include "vertical-pod-autoscaler.updater.selectorLabels" . | nindent 6 }}
13+
{{- if .Values.updater.podDisruptionBudget.minAvailable }}
14+
minAvailable: {{ .Values.updater.podDisruptionBudget.minAvailable }}
15+
{{- end }}
16+
{{- if .Values.updater.podDisruptionBudget.maxUnavailable }}
17+
maxUnavailable: {{ .Values.updater.podDisruptionBudget.maxUnavailable }}
18+
{{- end }}
19+
{{- end -}}

vertical-pod-autoscaler/charts/vertical-pod-autoscaler/values.yaml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,10 +191,20 @@ updater:
191191
pullPolicy: IfNotPresent
192192

193193
# Number of Updater replicas to create.
194-
replicas: 1
194+
replicas: 2
195195

196196
# Labels to add to the Updater pod.
197197
podLabels: {}
198198

199199
# Annotations to add to the Updater pod.
200200
podAnnotations: {}
201+
202+
# PodDisruptionBudget for the Updater.
203+
podDisruptionBudget:
204+
enabled: true
205+
# -- (int or string) Minimum number/percentage of pods that must be available after the eviction.
206+
# IMPORTANT: You can specify either 'minAvailable' or 'maxUnavailable', but not both.
207+
minAvailable: 1
208+
# -- (int or string) Maximum number/percentage of pods that can be unavailable after the eviction.
209+
# IMPORTANT: You can specify either 'minAvailable' or 'maxUnavailable', but not both.
210+
maxUnavailable:

0 commit comments

Comments
 (0)