3d85105afd
- Switch from SQLite/PVC to CNPG PostgreSQL (3 instances, low-resource) with a transaction-mode PgBouncer pooler (2 instances) - Raise open-webui replicas to 3 with priorityClassName: power - Add PodDisruptionBudget (minAvailable: 1) - Add Gateway API sessionPersistence (cookie) on the HTTPS HTTPRoute so WebSocket connections stick to the same backend pod - Add postgres-credentials VaultStaticSecret; DATABASE_URL must be added to kv/kubernetes/namespace/open-webui/default/open-webui-credentials
34 lines
749 B
YAML
34 lines
749 B
YAML
---
|
|
apiVersion: postgresql.cnpg.io/v1
|
|
kind: Pooler
|
|
metadata:
|
|
name: open-webui-postgres-pooler
|
|
namespace: open-webui
|
|
spec:
|
|
cluster:
|
|
name: open-webui-postgres
|
|
instances: 2
|
|
pgbouncer:
|
|
parameters:
|
|
default_pool_size: "50"
|
|
max_client_conn: "200"
|
|
paused: false
|
|
poolMode: transaction
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: pooler
|
|
spec:
|
|
affinity:
|
|
podAntiAffinity:
|
|
requiredDuringSchedulingIgnoredDuringExecution:
|
|
- labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- pooler
|
|
topologyKey: kubernetes.io/hostname
|
|
containers: []
|
|
type: rw
|