You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: charts/gitops-runtime/README.md
+178-9Lines changed: 178 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -189,6 +189,154 @@ sealed-secrets:
189
189
enabled: false
190
190
```
191
191
192
+
## High Availability
193
+
194
+
This chart installs the non-HA version of GitOps Runtime by default. If you want to run GitOps Runtime in HA mode, you can use the example values below:
195
+
196
+
> **Warning:**
197
+
> You need at least 3 worker nodes for HA mode
198
+
199
+
### HA mode with autoscaling
200
+
201
+
```yaml
202
+
global:
203
+
topologySpreadConstraints:
204
+
- maxSkew: 1
205
+
topologyKey: kubernetes.io/hostname
206
+
whenUnsatisfiable: DoNotSchedule
207
+
208
+
app-proxy:
209
+
replicaCount: 2
210
+
pdb:
211
+
enabled: true
212
+
minAvailable: 1
213
+
topologySpreadConstraints:
214
+
- maxSkew: 1
215
+
topologyKey: kubernetes.io/hostname
216
+
whenUnsatisfiable: DoNotSchedule
217
+
labelSelector:
218
+
matchLabels:
219
+
app: cap-app-proxy
220
+
221
+
gitops-operator:
222
+
replicaCount: 2
223
+
pdb:
224
+
enabled: true
225
+
minAvailable: 1
226
+
topologySpreadConstraints:
227
+
- maxSkew: 1
228
+
topologyKey: kubernetes.io/hostname
229
+
whenUnsatisfiable: DoNotSchedule
230
+
labelSelector:
231
+
matchLabels:
232
+
app: gitops-operator
233
+
234
+
internal-router:
235
+
replicaCount: 2
236
+
pdb:
237
+
enabled: true
238
+
minAvailable: 1
239
+
topologySpreadConstraints:
240
+
- maxSkew: 1
241
+
topologyKey: kubernetes.io/hostname
242
+
whenUnsatisfiable: DoNotSchedule
243
+
labelSelector:
244
+
matchLabels:
245
+
app: internal-router
246
+
247
+
cf-argocd-extras:
248
+
sourcesServer:
249
+
hpa:
250
+
enabled: true
251
+
minReplicas: 2
252
+
pdb:
253
+
enabled: true
254
+
minAvailable: 1
255
+
topologySpreadConstraints:
256
+
- maxSkew: 1
257
+
topologyKey: kubernetes.io/hostname
258
+
whenUnsatisfiable: DoNotSchedule
259
+
labelSelector:
260
+
matchLabels:
261
+
app.kubernetes.io/component: sources-server
262
+
eventReporter:
263
+
topologySpreadConstraints:
264
+
- maxSkew: 1
265
+
topologyKey: kubernetes.io/hostname
266
+
whenUnsatisfiable: DoNotSchedule
267
+
labelSelector:
268
+
matchLabels:
269
+
app.kubernetes.io/component: event-reporter
270
+
271
+
argo-cd:
272
+
redis-ha:
273
+
enabled: true
274
+
275
+
controller:
276
+
replicas: 1
277
+
278
+
server:
279
+
autoscaling:
280
+
enabled: true
281
+
minReplicas: 2
282
+
pdb:
283
+
enabled: true
284
+
minAvailable: 1
285
+
286
+
repoServer:
287
+
autoscaling:
288
+
enabled: true
289
+
minReplicas: 2
290
+
pdb:
291
+
enabled: true
292
+
minAvailable: 1
293
+
294
+
applicationSet:
295
+
replicas: 2
296
+
297
+
argo-workflows:
298
+
controller:
299
+
replicas: 2
300
+
pdb:
301
+
enabled: true
302
+
minAvailable: 1
303
+
server:
304
+
autoscaling:
305
+
enabled: true
306
+
minReplicas: 2
307
+
pdb:
308
+
enabled: true
309
+
minAvailable: 1
310
+
311
+
event-reporters:
312
+
workflow:
313
+
sensor:
314
+
replicas: 2
315
+
affinity:
316
+
podAntiAffinity:
317
+
requiredDuringSchedulingIgnoredDuringExecution:
318
+
- labelSelector:
319
+
matchExpressions:
320
+
- key: sensor-name
321
+
operator: In
322
+
values:
323
+
- workflow-reporter
324
+
topologyKey: "kubernetes.io/hostname"
325
+
rollout:
326
+
sensor:
327
+
replicas: 2
328
+
affinity:
329
+
podAntiAffinity:
330
+
requiredDuringSchedulingIgnoredDuringExecution:
331
+
- labelSelector:
332
+
matchExpressions:
333
+
- key: sensor-name
334
+
operator: In
335
+
values:
336
+
- rollout-reporter
337
+
topologyKey: "kubernetes.io/hostname"
338
+
```
339
+
192
340
## Upgrading
193
341
194
342
### To 0.23.x
@@ -230,13 +378,13 @@ gitops-operator:
230
378
| app-proxy.extraVolumeMounts | list | `[]` | Extra volume mounts for main container |
231
379
| app-proxy.extraVolumes | list | `[]` | extra volumes |
| app-proxy.image-enrichment.config.clientHeartbeatIntervalInSeconds | int | `5` | Client heartbeat interval in seconds for image enrichemnt workflow |
236
384
| app-proxy.image-enrichment.config.concurrencyCmKey | string | `"imageReportExecutor"` | The name of the key in the configmap to use as synchronization semaphore |
237
385
| app-proxy.image-enrichment.config.concurrencyCmName | string | `"workflow-synchronization-semaphores"` | The name of the configmap to use as synchronization semaphore, see https://argoproj.github.io/argo-workflows/synchronization/ |
| app-proxy.image-enrichment.config.podGcStrategy | string | `"OnWorkflowCompletion"` | Pod grabage collection strategy. By default all pods will be deleted when the enrichment workflow completes. |
241
389
| app-proxy.image-enrichment.config.ttlActiveInSeconds | int | `900` | Maximum allowed runtime for the enrichment workflow |
242
390
| app-proxy.image-enrichment.config.ttlAfterCompletionInSeconds | int | `86400` | Number of seconds to live after completion |
@@ -247,17 +395,35 @@ gitops-operator:
247
395
| app-proxy.image-enrichment.serviceAccount.name | string | `"codefresh-image-enrichment-sa"` | Name of the service account to create or the name of the existing one to use |
| app-proxy.livenessProbe.failureThreshold | int | `10` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded. |
262
428
| app-proxy.livenessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated. |
263
429
| app-proxy.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe]. |
| argo-workflows.server.authModes | list | `["client"]` | auth-mode needs to be set to client to be able to see workflow logs from Codefresh UI |
327
493
| argo-workflows.server.baseHref | string | `"/workflows/"` | Do not change. Workflows UI is only accessed through internal router, changing this values will break routing to workflows native UI from Codefresh. |
328
-
| cf-argocd-extras | object | `{"eventReporter":{"affinity":{},"container":{"image":{"registry":"quay.io","repository":"codefresh/cf-argocd-extras","tag":"v0.5.12"}},"enabled":true,"nodeSelector":{},"pdb":{"enabled":false,"maxUnavailable":"","minAvailable":"50%"},"resources":{"requests":{"cpu":"100m","memory":"128Mi"}},"serviceMonitor":{"main":{"enabled":false}},"tolerations":[]},"sourcesServer":{"affinity":{},"container":{"image":{"registry":"quay.io","repository":"codefresh/cf-argocd-extras","tag":"v0.5.12"}},"enabled":true,"hpa":{"enabled":false,"maxReplicas":10,"minReplicas":1,"targetCPUUtilizationPercentage":70},"nodeSelector":{},"pdb":{"enabled":false,"maxUnavailable":"","minAvailable":"50%"},"resources":{"requests":{"cpu":"100m","memory":"128Mi"}},"tolerations":[]}}` | Codefresh extra services for ArgoCD |
494
+
| cf-argocd-extras | object | `{"eventReporter":{"affinity":{},"container":{"image":{"registry":"quay.io","repository":"codefresh/cf-argocd-extras","tag":"v0.5.14"}},"enabled":true,"nodeSelector":{},"pdb":{"enabled":false,"maxUnavailable":"","minAvailable":"50%"},"resources":{"requests":{"cpu":"100m","memory":"128Mi"}},"serviceMonitor":{"main":{"enabled":false}},"tolerations":[]},"sourcesServer":{"affinity":{},"container":{"image":{"registry":"quay.io","repository":"codefresh/cf-argocd-extras","tag":"v0.5.14"}},"enabled":true,"hpa":{"enabled":false,"maxReplicas":10,"minReplicas":1,"targetCPUUtilizationPercentage":70},"nodeSelector":{},"pdb":{"enabled":false,"maxUnavailable":"","minAvailable":"50%"},"resources":{"requests":{"cpu":"100m","memory":"128Mi"}},"tolerations":[]}}` | Codefresh extra services for ArgoCD |
0 commit comments