LiveKit: switch to Recreate deployment strategy. hostPorts (TURN UDP relay range) block RollingUpdate because the new pod cannot schedule while the old one still holds the ports. OpenSearch: set OPENSEARCH_JAVA_OPTS to -Xms192m -Xmx256m. The upstream default (-Xms512m -Xmx1g) immediately OOMs the container given our 512Mi memory limit. login-ui: raise memory limit from 64Mi to 192Mi and add a 64Mi request; the previous limit was too tight and caused OOMKilled restarts under load.
44 lines
1.2 KiB
YAML
44 lines
1.2 KiB
YAML
# Base LiveKit Helm values (chart: livekit/livekit-server).
|
|
# DOMAIN_SUFFIX is replaced by overlay patches.
|
|
# API keys/secrets come from the livekit-keys Secret (loaded via extraEnv or config file).
|
|
# Reference: https://github.com/livekit/livekit-helm/blob/master/server-sample.yaml
|
|
|
|
livekit:
|
|
# LiveKit server config injected as config.yaml
|
|
port: 7880
|
|
log_level: info
|
|
|
|
rtc:
|
|
port_range_start: 49152
|
|
port_range_end: 49252
|
|
use_external_ip: true
|
|
|
|
turn:
|
|
enabled: true
|
|
domain: meet.DOMAIN_SUFFIX
|
|
tls_port: 5349
|
|
udp_port: 3478
|
|
external_tls: true
|
|
|
|
redis:
|
|
# Valkey is protocol-compatible with Redis; LiveKit sees this as a Redis endpoint
|
|
address: valkey.data.svc.cluster.local:6379
|
|
|
|
# API keys — overridden per-environment via secrets.
|
|
# At least one key must be present for the server to start.
|
|
keys:
|
|
devkey: secret-placeholder
|
|
|
|
deployment:
|
|
resources:
|
|
limits:
|
|
memory: 128Mi
|
|
requests:
|
|
memory: 64Mi
|
|
cpu: 100m
|
|
|
|
# Recreate strategy: hostPorts (TURN UDP relay range) block RollingUpdate —
|
|
# the new pod cannot schedule while the old one still holds the host ports.
|
|
deploymentStrategy:
|
|
type: Recreate
|