fix(open-xchange): Optimize Dovecot Pro full-text search caches; review migrations.md for required upgrade steps

This commit is contained in:
Thomas Kaltenbrunner
2025-11-06 09:52:52 +01:00
committed by Thorsten Roßner
parent 850761e047
commit f3f707c9ee
4 changed files with 18 additions and 0 deletions

View File

@@ -70,6 +70,7 @@ XWiki,PersistentVolume,1
| -------------------- | ------------ | -------- | --------------------------------------------------------------------------------- | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------- | | -------------------- | ------------ | -------- | --------------------------------------------------------------------------------- | ---------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
| **ClamAV** | PVC | No | ClamAV Database | `clamav-database-clamav-simple-0` | `/var/lib/clamav` | | **ClamAV** | PVC | No | ClamAV Database | `clamav-database-clamav-simple-0` | `/var/lib/clamav` |
| **Dovecot** | PVC | Yes | openDesk CE only: User mail directories | `dovecot` | `/srv/mail` | | **Dovecot** | PVC | Yes | openDesk CE only: User mail directories | `dovecot` | `/srv/mail` |
| | PVC | No | openDesk EE only: Metacache directory | `var-lib-dovecot-dovecot-0` | `/var/lib/dovecot` |
| | S3 | Yes | openDesk EE only: User mail | `dovecot` | `dovecot` | | | S3 | Yes | openDesk EE only: User mail | `dovecot` | `dovecot` |
| | Cassandra | Yes | openDesk EE only: Metadata and ACLs | `dovecot_dictmap`, `dovecot_acl` | | | | Cassandra | Yes | openDesk EE only: Metadata and ACLs | `dovecot_dictmap`, `dovecot_acl` | |
| **Element/Synapse** | PostgreSQL | Yes | Application's main database | `matrix` | | | **Element/Synapse** | PostgreSQL | Yes | Application's main database | `matrix` | |

View File

@@ -37,11 +37,14 @@ dovecot:
value: {{ .Values.secrets.dovecot.sharedMailboxesMasterPassword | quote }} value: {{ .Values.secrets.dovecot.sharedMailboxesMasterPassword | quote }}
objectStorage: objectStorage:
bucket: {{ .Values.objectstores.dovecot.bucket | quote }} bucket: {{ .Values.objectstores.dovecot.bucket | quote }}
cacheTmpfs: {{ if .Values.technical.dovecot.objectStorage.cacheTmpfs }}true{{ else }}false{{ end }}
encryption: encryption:
privateKey: privateKey:
value: {{ requiredEnv "DOVECOT_CRYPT_PRIVATE_KEY" | quote }} value: {{ requiredEnv "DOVECOT_CRYPT_PRIVATE_KEY" | quote }}
publicKey: publicKey:
value: {{ requiredEnv "DOVECOT_CRYPT_PUBLIC_KEY" | quote }} value: {{ requiredEnv "DOVECOT_CRYPT_PUBLIC_KEY" | quote }}
fsCacheSize: {{ .Values.technical.dovecot.objectStorage.fsCacheSize | quote }}
ftsCacheSize: {{ .Values.technical.dovecot.objectStorage.ftsCacheSize | quote }}
fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }} fqdn: {{ .Values.objectstores.dovecot.endpoint | default (printf "%s.%s" .Values.global.hosts.minioApi .Values.global.domain) | quote }}
username: {{ .Values.objectstores.dovecot.username | quote }} username: {{ .Values.objectstores.dovecot.username | quote }}
password: password:

View File

@@ -16,6 +16,8 @@ persistence:
size: "1Gi" size: "1Gi"
storageClassName: ~ storageClassName: ~
dovecot: dovecot:
# With Dovecot CE this is used for the mail storage.
# Dovecot Pro (EE) uses this storage for the metacache,
size: "1Gi" size: "1Gi"
storageClassName: ~ storageClassName: ~
mariadb: mariadb:

View File

@@ -8,6 +8,18 @@ technical:
# Defines the value for the start parameter `-o:num_prespawn_children` # Defines the value for the start parameter `-o:num_prespawn_children`
numPrespawnChildren: 4 numPrespawnChildren: 4
# Dovecot EE related settings
dovecot:
objectStorage:
# Size of objectstore fs cache
fsCacheSize: "2G"
# Size of fts cache
ftsCacheSize: "2G"
# Wether fs and fts cache should reside in RAM (tmpfs) or not
# If this value is true, the cache sizes of the fs cache + fts cache
# must be considered additionally to Dovecot's memory footprint.
cacheTmpfs: false
# Nubus related settings # Nubus related settings
nubus: nubus:
# Nubus provisioning framework that is being used to actively provision data internally within # Nubus provisioning framework that is being used to actively provision data internally within