reduce redis pods and update doc

This commit is contained in:
pat-s 2023-11-15 00:13:36 +01:00
parent 7499fecc1a
commit 38a71e5716
No known key found for this signature in database
GPG Key ID: 3C6318841EF78925
3 changed files with 18 additions and 11 deletions

View File

@ -10,7 +10,7 @@
- [Database defaults](#database-defaults) - [Database defaults](#database-defaults)
- [Server defaults](#server-defaults) - [Server defaults](#server-defaults)
- [Metrics defaults](#metrics-defaults) - [Metrics defaults](#metrics-defaults)
- [Rootless defaults](#rootless-defaults) - [Rootless Defaults](#rootless-defaults)
- [Single-Pod Configurations](#single-pod-configurations) - [Single-Pod Configurations](#single-pod-configurations)
- [Additional _app.ini_ settings](#additional-appini-settings) - [Additional _app.ini_ settings](#additional-appini-settings)
- [User defined environment variables in app.ini](#user-defined-environment-variables-in-appini) - [User defined environment variables in app.ini](#user-defined-environment-variables-in-appini)
@ -99,10 +99,8 @@ When upgrading, please refer to the [Upgrading](#upgrading) section at the botto
## High Availability ## High Availability
⚠️ **EXPERIMENTAL** ⚠️ Since version 9.0.0 this chart supports running Gitea and it's dependencies in HA mode.
Care must be taken for production use as not all implementation details of Gitea core are officially HA-ready yet.
Since version 9.0.0 this chart has experimental support for running Gitea and it's dependencies in a HA setup.
The setup is still experimental and care must be taken for production use as Gitea core is not yet officially HA-ready.
Deploying a HA-ready Gitea instance requires some effort including using HA-ready dependencies. Deploying a HA-ready Gitea instance requires some effort including using HA-ready dependencies.
See the [HA Setup](docs/ha-setup.md) document for more details. See the [HA Setup](docs/ha-setup.md) document for more details.
@ -990,10 +988,12 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
### redis-cluster ### redis-cluster
| Name | Description | Value | | Name | Description | Value |
| --------------------------- | -------------------------------------- | ------- | | -------------------------------- | -------------------------------------------- | ------- |
| `redis-cluster.enabled` | Enable redis | `true` | | `redis-cluster.enabled` | Enable redis | `true` |
| `redis-cluster.usePassword` | Whether to use password authentication | `false` | | `redis-cluster.usePassword` | Whether to use password authentication | `false` |
| `redis-cluster.cluster.nodes` | Number of redis cluster master nodes | `3` |
| `redis-cluster.cluster.replicas` | Number of redis cluster master node replicas | `0` |
### PostgreSQL-ha ### PostgreSQL-ha

View File

@ -1,7 +1,5 @@
# High Availability # High Availability
⚠️ **EXPERIMENTAL** ⚠️
All components (in-memory DB, volume/asset storage, code indexer) used by Gitea must be deployed in a HA-ready fashion to achieve a full HA-ready Gitea deployment. All components (in-memory DB, volume/asset storage, code indexer) used by Gitea must be deployed in a HA-ready fashion to achieve a full HA-ready Gitea deployment.
The following document explains how to achieve this for all individual components. The following document explains how to achieve this for all individual components.
@ -97,6 +95,10 @@ To do so, you need to set the following configuration values yourself:
- `gitea.config.cache.ADAPTER`: `redis` - `gitea.config.cache.ADAPTER`: `redis`
- `gitea.config.cache.HOST`: `<your redis connection string>` - `gitea.config.cache.HOST`: `<your redis connection string>`
By default, the `redis-cluster` chart provisions three standalone master nodes of which each has a single replica.
To reduce the number of pods for a default Gitea deployment, we decided to omit the replicas (`replicas: 0`) and only use the minimum required number of master pods for a functional `redis-cluster` setup.
For a "proper" `redis-cluster` setup however, we recommend to set `replicas: 1` and `nodes: 6`.
## Object and asset storage ## Object and asset storage
Object/asset storage refers to the storage of attachments, avatars, LFS files, etc. Object/asset storage refers to the storage of attachments, avatars, LFS files, etc.

View File

@ -479,9 +479,14 @@ gitea:
## @section redis-cluster ## @section redis-cluster
## @param redis-cluster.enabled Enable redis ## @param redis-cluster.enabled Enable redis
## @param redis-cluster.usePassword Whether to use password authentication ## @param redis-cluster.usePassword Whether to use password authentication
## @param redis-cluster.cluster.nodes Number of redis cluster master nodes
## @param redis-cluster.cluster.replicas Number of redis cluster master node replicas
redis-cluster: redis-cluster:
enabled: true enabled: true
usePassword: false usePassword: false
cluster:
nodes: 3 # default: 6
replicas: 0 # default: 1
## @section postgresql-ha ## @section postgresql-ha
# #