mirror of https://github.com/linkerd/linkerd2.git
Add rolling update strategy to multi-replica pods (#4267)
This introduces a rolling update strategy to Linkerd deployments that have three replicas during HA deployments. This allows for at most one pod to begin terminating before a new pod ready is ready. This allows for upgrades to take place on three node clusters. As a pod begins terminating, it opens up the node for the new pod to start initializing. `.Values.enablePodAntiAffinity` was chosen as the conditional here because it is set by the `values-ha.yaml` config on HA deployments
This commit is contained in:
parent
8e56166774
commit
b13e2442b1
|
@ -45,6 +45,11 @@ spec:
|
|||
{{.Values.global.controllerComponentLabel}}: controller
|
||||
{{.Values.global.controllerNamespaceLabel}}: {{.Values.global.namespace}}
|
||||
{{- include "partials.proxy.labels" .Values.global.proxy | nindent 6}}
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
|
@ -45,6 +45,11 @@ spec:
|
|||
{{.Values.global.controllerComponentLabel}}: destination
|
||||
{{.Values.global.controllerNamespaceLabel}}: {{.Values.global.namespace}}
|
||||
{{- include "partials.proxy.labels" .Values.global.proxy | nindent 6}}
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
|
@ -65,6 +65,11 @@ spec:
|
|||
{{.Values.global.controllerComponentLabel}}: identity
|
||||
{{.Values.global.controllerNamespaceLabel}}: {{.Values.global.namespace}}
|
||||
{{- include "partials.proxy.labels" .Values.global.proxy | nindent 6}}
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
|
@ -24,6 +24,11 @@ spec:
|
|||
selector:
|
||||
matchLabels:
|
||||
{{.Values.global.controllerComponentLabel}}: proxy-injector
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
|
@ -43,6 +43,11 @@ spec:
|
|||
selector:
|
||||
matchLabels:
|
||||
{{.Values.global.controllerComponentLabel}}: sp-validator
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
|
@ -48,6 +48,11 @@ spec:
|
|||
{{.Values.global.controllerComponentLabel}}: tap
|
||||
{{.Values.global.controllerNamespaceLabel}}: {{.Values.global.namespace}}
|
||||
{{- include "partials.proxy.labels" .Values.global.proxy | nindent 6}}
|
||||
{{- if .Values.enablePodAntiAffinity }}
|
||||
strategy:
|
||||
rollingUpdate:
|
||||
maxUnavailable: 1
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
|
|
Loading…
Reference in New Issue