From ef3a92f3971dd745f6178709eda943efb679a40c Mon Sep 17 00:00:00 2001 From: Lucas Hahn Date: Mon, 30 Aug 2021 10:19:43 +0000 Subject: [PATCH] Update documentation --- README.md | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) diff --git a/README.md b/README.md index a7f7bcf..35ffbf5 100644 --- a/README.md +++ b/README.md @@ -213,6 +213,73 @@ signing: gpgHome: /data/git/.gnupg ``` +## Gitea - HA + +With Version 4.1.x the helm chart supports Gitea running in HA(High Availability) +mode. To run Gitea in HA you'll need to set a few values in order to run successfully. + +### Redis + +HA requires a Queue to run, we're going to use redis as default for this. + +```yaml +redis: + enabled: true +``` + +You can also run Redis in HA mode: + +```yaml +redis-cluster: + enabled: true +``` + +Both variants can be found at [Bitnami](https://github.com/bitnami/charts). + +Once redis is enabled, the chart will automatically configure Gitea to run with +redis queue, indexer and session. Running with Redis already provides a sticky +session, which saves you the trouble from configuring your ingress running with +a sticky session. +The following values are autogenerated. +However you can overwrite any setting in the config section of the chart. + +```bash +[session] +PROVIDER = redis +PROVIDER_CONFIG = redis://:gitea@gitea-redis-master.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s + +[queue] +CONN_STR = redis://:gitea@gitea-redis-master.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s +TYPE = redis + +[queue.issue_indexer] +TYPE = redis +``` + +### Persistence + +When running in HA you cannot use the default persistence for the chart. +You'll need to setup an extra PVC running with access mode "RWX" - "ReadWriteMany". +Otherwise the chart will create a PVC for every replica. + +```yaml +persistence: + enabled: true + existingClaim: rwx-pvc-gitea +``` + +### PostgreSQL + +You can also run PostgreSQL in HA mode also provided by +[Bitnami](https://github.com/bitnami/charts). +:warning: Please disable the default PostgreSQL version, +when you enabled the HA PostgreSQL. + +```yaml +postgresql-ha: + enabled: true +``` + ## Examples ### Gitea Configuration @@ -791,6 +858,40 @@ Configure Liveness, Readiness and Startup | `gitea.startupProbe.successThreshold` | Minimum consecutive success probes | `1` | | `gitea.startupProbe.failureThreshold` | Minimum consecutive error probes | `10` | +### Redis BuiltIn + +Redis is loaded as a dependency from +[Bitnami](https://github.com/bitnami/charts/tree/master/bitnami/redis) +if enabled in the values. Complete Configuration can be taken from their website. + +The following parameters are the defaults set by this chart + +| Parameter | Description | Default | +|----------------------------|--------------------------------------------------|------------------------------| +|redis.enabled | Enable or disable redis | `false` | +|redis.global.redis.password | Redis default password | `gitea` | +|redis.auth.password | Redis default password needed for chart upgrades | `gitea` | +| redis.master.service.port | Redis default port | `6379` | +| redis.replica.replicaCount | Redis replicaCount | `2` | + +### Redis-Cluster BuiltIn + +Redis-Cluster is loaded as a dependency from +[Bitnami](https://github.com/bitnami/charts/tree/master/bitnami/redis-cluster) +if enabled in the values. Complete Configuration can be taken from their website. + +The following parameters are the defaults set by this chart + +| Parameter | Description | Default | +|------------------------------------|--------------------------------------------------|-----------| +|redis-cluster.enabled | Enable or disable redis-cluster | `false` | +|redis-cluster.global.redis.password | Redis default password | `gitea` | +|redis-cluster.password | Redis default password | `gitea` | +|redis.auth.password | Redis default password needed for chart upgrades | `gitea` | +| redis-cluster.service.port | Redis default port | `6379` | +| redis-cluster.cluster.nodes | Redis nodes | `6` | +| redis-cluster.cluster.replicas | Redis replicas | `1` | + ### Memcached BuiltIn Memcached is loaded as a dependency from @@ -839,6 +940,29 @@ The following parameters are the defaults set by this chart | `postgresql.persistence.size` | PVC Storage Request for PostgreSQL volume | `10Gi` | | `postgresql.enabled` | Enable PostgreSQL dependency | `true` | +### PostgreSQL-HA BuiltIn + +PostgreSQL-HA is loaded as a dependency from Bitnami. The chart configuration +can be found in this +[Bitnami](https://github.com/bitnami/charts/tree/master/bitnami/postgresql) repository. + +The following parameters are the defaults set by this chart + +| Parameter | Description | Default | +|-------------------------------------------------|-------------------------------------------|-----------| +|`postgresql-ha.enabled` | Enable or disable PostgreSQL-HA | `false` | +|`postgresql-ha.postgresql.password` | PostgreSQL password | `gitea` | +|`postgresql-ha.postgresql.repmgrPassword` | PostgreSQL repmgr password | `gitea` | +|`postgresql-ha.pgpool.adminPassword` | PostgreSQL pgpool password | `gitea` | +|`postgresql-ha.global.postgresql.username` | PostgreSQL username | `gitea` | +|`postgresql-ha.global.postgresql.password` | PostgreSQL admin password | `gitea` | +|`postgresql-ha.global.postgresql.database` | PostgreSQL default database | `gitea` | +|`postgresql-ha.global.postgresql.repmgrPassword` | PostgreSQL repmgr password | `gitea` | +|`postgresql-ha.global.postgresql.repmgrUsername` | PostgreSQL repmgr username | `gitea` | +|`postgresql-ha.global.postgresql.repmgrDatabase` | PostgreSQL repmgr default database | `gitea` | +|`postgresql-ha.service.port` | PostgreSQL port | `5432` | +|`postgresql-ha.persistence.size` | PVC Storage Request for PostgreSQL volume | `10Gi` | + ### MariaDB BuiltIn MariaDB is loaded as a dependency from bitnami. Configuration can be found in