Skip to content

Commit ddc5afc

Browse files
committed
Add better liveness/readiness/startup probe docs that we can easily link to
Signed-off-by: jessebot <jessebot@linux.com>
1 parent f3af4fe commit ddc5afc

File tree

1 file changed

+31
-18
lines changed

1 file changed

+31
-18
lines changed

charts/nextcloud/README.md

Lines changed: 31 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ helm install my-release nextcloud/nextcloud
2020
* [Object Storage as Primary Storage Configuration](#object-storage-as-primary-storage-configuration)
2121
* [Persistence Configurations](#persistence-configurations)
2222
* [Metrics Configurations](#metrics-configurations)
23+
* [Probes Configurations](#probes-configurations)
2324
* [Cron jobs](#cron-jobs)
2425
* [Using the nextcloud docker image auto-configuration via env vars](#using-the-nextcloud-docker-image-auto-configuration-via-env-vars)
2526
* [Multiple config.php file](#multiple-configphp-file)
@@ -192,24 +193,6 @@ The following table lists the configurable parameters of the nextcloud chart and
192193
| `rbac.serviceaccount.create` | Wether to create a serviceaccount or use an existing one (requires rbac) | `true` |
193194
| `rbac.serviceaccount.name` | The name of the sevice account that the deployment will use (requires rbac) | `nextcloud-serviceaccount` |
194195
| `rbac.serviceaccount.annotations` | Serviceaccount annotations | `{}` |
195-
| `livenessProbe.enabled` | Turn on and off liveness probe | `true` |
196-
| `livenessProbe.initialDelaySeconds` | Delay before liveness probe is initiated | `10` |
197-
| `livenessProbe.periodSeconds` | How often to perform the probe | `10` |
198-
| `livenessProbe.timeoutSeconds` | When the probe times out | `5` |
199-
| `livenessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
200-
| `livenessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
201-
| `readinessProbe.enabled` | Turn on and off readiness probe | `true` |
202-
| `readinessProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `10` |
203-
| `readinessProbe.periodSeconds` | How often to perform the probe | `10` |
204-
| `readinessProbe.timeoutSeconds` | When the probe times out | `5` |
205-
| `readinessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
206-
| `readinessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
207-
| `startupProbe.enabled` | Turn on and off startup probe | `false` |
208-
| `startupProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `30` |
209-
| `startupProbe.periodSeconds` | How often to perform the probe | `10` |
210-
| `startupProbe.timeoutSeconds` | When the probe times out | `5` |
211-
| `startupProbe.failureThreshold` | Minimum consecutive failures for the probe | `30` |
212-
| `startupProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
213196
| `hpa.enabled` | Boolean to create a HorizontalPodAutoscaler. If set to `true`, ignores `replicaCount`. | `false` |
214197
| `hpa.cputhreshold` | CPU threshold percent for the HorizontalPodAutoscale | `60` |
215198
| `hpa.minPods` | Min. pods for the Nextcloud HorizontalPodAutoscaler | `1` |
@@ -410,6 +393,36 @@ helm install --name my-release -f values.yaml nextcloud/nextcloud
410393
411394
> **Tip**: You can use the default [values.yaml](values.yaml)
412395
396+
397+
### Probes Configurations
398+
399+
The nextcloud deployment includes a series of different probes you can use to determine if a pod is ready or not. You can learn more in the [Configure Liveness, Readiness and Startup Probes Kubernetes docs](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/).
400+
401+
402+
| Parameter | Description | Default |
403+
|--------------------------------------|---------------------------------------------|---------|
404+
| `livenessProbe.enabled` | Turn on and off liveness probe | `true` |
405+
| `livenessProbe.initialDelaySeconds` | Delay before liveness probe is initiated | `10` |
406+
| `livenessProbe.periodSeconds` | How often to perform the probe | `10` |
407+
| `livenessProbe.timeoutSeconds` | When the probe times out | `5` |
408+
| `livenessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
409+
| `livenessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
410+
| `readinessProbe.enabled` | Turn on and off readiness probe | `true` |
411+
| `readinessProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `10` |
412+
| `readinessProbe.periodSeconds` | How often to perform the probe | `10` |
413+
| `readinessProbe.timeoutSeconds` | When the probe times out | `5` |
414+
| `readinessProbe.failureThreshold` | Minimum consecutive failures for the probe | `3` |
415+
| `readinessProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
416+
| `startupProbe.enabled` | Turn on and off startup probe | `false` |
417+
| `startupProbe.initialDelaySeconds` | Delay before readiness probe is initiated | `30` |
418+
| `startupProbe.periodSeconds` | How often to perform the probe | `10` |
419+
| `startupProbe.timeoutSeconds` | When the probe times out | `5` |
420+
| `startupProbe.failureThreshold` | Minimum consecutive failures for the probe | `30` |
421+
| `startupProbe.successThreshold` | Minimum consecutive successes for the probe | `1` |
422+
423+
> [!Note]
424+
> If you are getting errors on initialization (such as `Fatal error: require_once(): Failed opening required '/var/www/html/lib/versioncheck.php'`, but you can get other errors as well), a good first step is to try and enable the startupProbe and/or increase the `initialDelaySeconds` for the `livenessProbe` and `readinessProbe` to something much greater (consider using `120` seconds instead of `10`. This is an especially good idea if your cluster is running on older hardware, has a slow internet connection, or you're using a slower storage class, such as NFS that's running with older disks or a slow connection.
425+
413426
## Cron jobs
414427
415428
To execute [background tasks](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/background_jobs_configuration.html) by using system cron instead of default Ajax cron, set `cronjob.enabled` parameter to `true`. Background jobs are important for tasks that do not necessarily need user intervention, but still need to be executed frequently (cleaning up, sending some notifications, pulling RSS feeds, etc.).

0 commit comments

Comments
 (0)