feat: argo-cd can deploy Redis HA (#270)

* feat: argo-cd can deploy Redis HA

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: add unarchived subchart redis-ha

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: Redis HA upgraded since 4.3.4 contains a bug on the chart

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* docs: how to configure Redis and Redis HA

* fix: add missing chart folder

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: Helm bug with subcharts and alias

* fix: Chart version

* fix: Remove archived subcharts

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: lint script

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* Revert "fix: lint script"

This reverts commit f4b81cbb6fc6d6c271f07b3d271a110b43edb9dd.

* fix: lint and publish scripts

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: align test-image versions

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: remove sudo from scripts
Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: add required repositories to helm

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: simplify expression

Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

* fix: bump up chart version
Signed-off-by: Carlos Juan Gómez Peñalver <carlosjuangp@gmail.com>

Co-authored-by: Spencer Gilbert <Spencer.Gilbert@gmail.com>
This commit is contained in:
Carlos Juan Gómez Peñalver 2020-04-09 17:31:13 +01:00 committed by GitHub
parent 567e7ce91f
commit d7da8e863f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
42 changed files with 1951 additions and 33 deletions

View file

@ -13,7 +13,7 @@ This chart currently installs the non-HA version of ArgoCD.
## Upgrading
### 1.8.7 to 2.0.0
### 1.8.7 to 2.x.x
`controller.extraArgs`, `repoServer.extraArgs` and `server.extraArgs` are not arrays of strings intead of a map
@ -75,8 +75,8 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
## ArgoCD Controller
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| Key | Default | Description |
|-----|---------|-------------|
| controller.affinity | Assign custom affinity rules to the deployment https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | `{}` |
| controller.args.operationProcessors | define the controller `--operation-processors` | `"10"` |
| controller.args.statusProcessors | define the controller `--status-processors` | `"20"` |
@ -121,8 +121,8 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
## Argo Repo Server
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| Key | Default | Description |
|-----|---------|-------------|
| repoServer.affinity | Assign custom affinity rules to the deployment https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | `{}` |
| repoServer.autoscaling.enabled | Enable Horizontal Pod Autoscaler (HPA) for the repo server | `false` |
| repoServer.autoscaling.minReplicas | Minimum number of replicas for the repo server HPA | `1` |
@ -168,8 +168,8 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
## Argo Server
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| Key | Default | Description |
|-----|---------|-------------|
| server.affinity | Assign custom affinity rules to the deployment https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | `{}` |
| server.autoscaling.enabled | Enable Horizontal Pod Autoscaler (HPA) for the server | `false` |
| server.autoscaling.minReplicas | Minimum number of replicas for the server HPA | `1` |
@ -234,8 +234,8 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
## Dex
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| Key | Default | Description |
|-----|---------|-------------|
| dex.affinity | Assign custom affinity rules to the deployment https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | `{}` |
| dex.containerPortGrpc | GRPC container port | `5557` |
| dex.containerPortHttp | HTTP container port | `5556` |
@ -263,8 +263,14 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
## Redis
| Key | Type | Default | Description |
|-----|------|---------|-------------|
When Redis is completely disabled from the chart (`redis.enabled=false`) and
an external Redis instance wants to be used or
when Redis HA subcart is enabled (`redis.enabled=true and redis-ha.enabled=true`)
but HA proxy is disabled `redis-ha.haproxy.enabled=false` Redis flags need to be specified
through `xxx.extraArgs`
| Key | Default | Description |
|-----|---------|-------------|
| redis.affinity | Assign custom affinity rules to the deployment https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ | `{}` |
| redis.containerPort | Redis container port | `6379` |
| redis.enabled | Enable redis | `true` |
@ -280,3 +286,12 @@ Helm v3 has removed the `install-crds` hook so CRDs are now populated by files i
| redis.resources | Resource limits and requests for redis | `{}` |
| redis.servicePort | Redis service port | `6379` |
| redis.tolerations | Tolerations for use with node taints https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ | `[]` |
| redis-ha | Configures Redis HA subchart https://github.com/helm/charts/tree/master/stable/redis-ha | | |
| redis-ha.enabled | Enables the Redis HA subchart and disables the custom Redis single node deployment| `false` |
| redis-ha.exporter.enabled | If `true`, the prometheus exporter sidecar is enabled | `true` |
| redis-ha.persistentVolume.enabled | Configures persistency on Redis nodes | `false`
| redis-ha.redis.masterGroupName | Redis convention for naming the cluster group: must match `^[\\w-\\.]+$` and can be templated | `argocd`
| redis-ha.redis.config | Any valid redis config options in this section will be applied to each server (see `redis-ha` chart) | `` |
| redis-ha.redis.config.save | Will save the DB if both the given number of seconds and the given number of write operations against the DB occurred. `""` is disabled | `""` |
| redis-ha.haproxy.enabled | Enabled HAProxy LoadBalancing/Proxy | `true` |
| redis-ha.haproxy.metrics.enabled | HAProxy enable prometheus metric scraping | `true` |