Skip to content

Commit d7a6ae2

Browse files
Merge pull request #371 from cert-manager/divyansh-gupta/high-availability
Enable high availability mode
2 parents afb9476 + 1901b70 commit d7a6ae2

File tree

2 files changed

+34
-24
lines changed

2 files changed

+34
-24
lines changed

charts/aws-pca-issuer/templates/deployment.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ metadata:
88
spec:
99
{{- if not .Values.autoscaling.enabled }}
1010
replicas: {{ .Values.replicaCount }}
11+
strategy:
12+
type: RollingUpdate
13+
rollingUpdate:
14+
maxUnavailable: 1
1115
{{- end }}
1216
revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
1317
selector:

charts/aws-pca-issuer/values.yaml

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# +docs:section=AWS Private CA Issuer
22

33
# Number of replicas to run of the issuer
4-
replicaCount: 1
4+
replicaCount: 2
55

66
image:
77
# Image repository
@@ -66,16 +66,13 @@ securityContext:
6666
allowPrivilegeEscalation: false
6767

6868
# Kubernetes pod resources requests/limits
69-
#
70-
# For example:
71-
# resources:
72-
# limits:
73-
# cpu: 100m
74-
# memory: 128Mi
75-
# requests:
76-
# cpu: 100m
77-
# memory: 128Mi
78-
resources: {}
69+
resources:
70+
limits:
71+
cpu: 50m
72+
memory: 64Mi
73+
requests:
74+
cpu: 50m
75+
memory: 64Mi
7976

8077
# Kubernetes node selector: node labels for pod assignment
8178
nodeSelector: {}
@@ -87,7 +84,7 @@ nodeSelector: {}
8784
# - operator: "Exists"
8885
tolerations: []
8986

90-
# A Kubernetes Affinity, if required; see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core
87+
# A Kubernetes Affinity; see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#affinity-v1-core
9188
#
9289
# For example:
9390
# affinity:
@@ -99,19 +96,27 @@ tolerations: []
9996
# operator: In
10097
# values:
10198
# - master
102-
affinity: {}
99+
affinity:
100+
podAntiAffinity:
101+
preferredDuringSchedulingIgnoredDuringExecution:
102+
- podAffinityTerm:
103+
labelSelector:
104+
matchExpressions:
105+
- key: app.kubernetes.io/name
106+
operator: In
107+
values:
108+
- aws-privateca-issuer
109+
topologyKey: kubernetes.io/hostname
110+
weight: 100
103111

104112
# List of Kubernetes TopologySpreadConstraints; see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#topologyspreadconstraint-v1-core
105-
#
106-
# For example:
107-
# topologySpreadConstraints:
108-
# - maxSkew: 1
109-
# topologyKey: topology.kubernetes.io/zone
110-
# whenUnsatisfiable: ScheduleAnyway
111-
# labelSelector:
112-
# matchLabels:
113-
# app.kubernetes.io/name: aws-privateca-issuer
114-
topologySpreadConstraints: []
113+
topologySpreadConstraints:
114+
- maxSkew: 1
115+
topologyKey: topology.kubernetes.io/zone
116+
whenUnsatisfiable: ScheduleAnyway
117+
labelSelector:
118+
matchLabels:
119+
app.kubernetes.io/name: aws-privateca-issuer
115120

116121
# Priority class name for the issuer pods
117122
# If specified, this will set the priority class on pods, which can influence scheduling decisions
@@ -152,7 +157,8 @@ volumeMounts: []
152157
# podDisruptionBudget:
153158
# minAvailable: 1
154159
# maxUnavailable: 1
155-
podDisruptionBudget: {}
160+
podDisruptionBudget:
161+
maxUnavailable: 1
156162

157163
# +docs:section=Autoscaling
158164

0 commit comments

Comments
 (0)