From 52ac2eaee1b06c9b6c11b5eb54a4ae75d6b0e75f Mon Sep 17 00:00:00 2001 From: WrenIX Date: Mon, 5 Feb 2024 12:52:15 +0100 Subject: [PATCH] chore(docs): improve README for ingress Signed-off-by: WrenIX --- charts/nextcloud/Chart.yaml | 2 +- charts/nextcloud/README.md | 33 +++++++++++++++++++++++++ charts/nextcloud/templates/service.yaml | 2 +- charts/nextcloud/values.yaml | 3 +-- 4 files changed, 36 insertions(+), 4 deletions(-) diff --git a/charts/nextcloud/Chart.yaml b/charts/nextcloud/Chart.yaml index fccbb9ae..14f46eca 100644 --- a/charts/nextcloud/Chart.yaml +++ b/charts/nextcloud/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: nextcloud -version: 5.5.2 +version: 5.5.3 appVersion: 29.0.4 description: A file sharing server that puts the control and security of your own data back into your hands. keywords: diff --git a/charts/nextcloud/README.md b/charts/nextcloud/README.md index 745b5231..2c682bae 100644 --- a/charts/nextcloud/README.md +++ b/charts/nextcloud/README.md @@ -16,6 +16,7 @@ helm install my-release nextcloud/nextcloud * [Installing the Chart](#installing-the-chart) * [Uninstalling the Chart](#uninstalling-the-chart) * [Configuration](#configuration) + * [Ingress-Controller](#ingress) * [Database Configurations](#database-configurations) * [Object Storage as Primary Storage Configuration](#object-storage-as-primary-storage-configuration) * [Persistence Configurations](#persistence-configurations) @@ -204,6 +205,38 @@ The following table lists the configurable parameters of the nextcloud chart and | `podAnnotations` | Annotations to be added at 'pod' level | not set | | `dnsConfig` | Custom dnsConfig for nextcloud containers | `{}` | +### Ingress +#### Ingress Sticky-Sessions + +For loadbalance over multiple Pods, it is useful to configure sticky session. + +##### NGINX Ingress-Controller +To enable sticky sessions on that ingress controller you could set the following values in this helm-chart. +For more information take a look in the [ingress-controller documentation](https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#session-affinity) +```yaml +ingress: + annotations: + nginx.ingress.kubernetes.io/affinity: cookie +``` + +##### Traefik Ingress-Controller +To enable sticky sessions on that ingress controller you could set the following values in this helm-chart. +For more information take a look in the [ingress-controller documentation](https://doc.traefik.io/traefik/routing/providers/kubernetes-ingress/#on-service) +```yaml +service: + annotations: + traefik.ingress.kubernetes.io/service.sticky.cookie: "true" +``` + +##### HAProxy Ingress-Controller (Community-Version) +To enable sticky sessions on that ingress controller you could set the following values in this helm-chart. +For more infromation take a look in the [ingress-controller documentation](https://haproxy-ingress.github.io/docs/configuration/keys/#affinity) +```yaml +ingress: + annotations: + haproxy-ingress.github.io/affinity: cookie +``` + ### Database Configurations By default, nextcloud will use a SQLite database. This is not recommended for production, but is enabled by default for testing purposes. When you are done testing, please set `internalDatabase.enabled` to `false`, and configure the `externalDatabase` parameters below. diff --git a/charts/nextcloud/templates/service.yaml b/charts/nextcloud/templates/service.yaml index 2223c945..d76b6083 100644 --- a/charts/nextcloud/templates/service.yaml +++ b/charts/nextcloud/templates/service.yaml @@ -38,4 +38,4 @@ spec: selector: app.kubernetes.io/name: {{ include "nextcloud.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} - app.kubernetes.io/component: app \ No newline at end of file + app.kubernetes.io/component: app diff --git a/charts/nextcloud/values.yaml b/charts/nextcloud/values.yaml index 8f44ff98..1f48a81d 100644 --- a/charts/nextcloud/values.yaml +++ b/charts/nextcloud/values.yaml @@ -501,9 +501,8 @@ service: port: 8080 loadBalancerIP: "" nodePort: nil + # -- use additional annotation on service for nextcloud annotations: {} - ## Insert your annotations such as below - # test/test: pumuckel ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/