Disable mod_token_verification via custom plugin override to stop guest kicks
The MUC token_verification module re-validates tokens and demotes guests from PARTICIPANT to VISITOR after ~60 seconds, causing Jicofo to kick them. The module ...
Add guest domain to token_verification_allowlist, increase smacks timeout
Guests authenticate via Meet-anonymous on guest.meet.Meet but the MUC token_verification module was re-checking them and demoting their role from PARTICIPANT to...
Disable Jicofo auth module to prevent 1-minute participant kick
Jicofo's AbstractAuthAuthority has a hardcoded 1-minute auth session lifetime that ignores the config file setting. After 60 seconds, Prosody demotes participan...
Use room names (not full JIDs) for all brewery MUC configs
Both Jicofo and JVB Docker images append @XMPP_INTERNAL_MUC_DOMAIN to the brewery room name automatically. Using full JIDs like **************** caused double-d...
Use TCP probe on port 9090 for JVB health checks instead of HTTP on 8080
JVB's REST API port 8080 conflicts with CockroachDB's admin UI on the same hostNetwork. The JVB_OHTTP_SERVER_PORT env var is not recognized by this JVB image ve...
解决 JVB 崩溃循环——错误的 MUC JID + 端口 8080 冲突
两个问题导致JVB在43+小时的循环中崩溃: 1. JVB BREWERY MUC是... (满分) 但 JVB 附件自动创建 XMPP INTRENAL MUC DOMAIN 哪个? 有 @ 在域中 — XmppStringprep Exception crash. 平按:只作"jvbbrewery"作"平"作"平...
JVB BREWERY MUC 应该是房间名称,而不是完整的 JID
是导致JVB建造的 双域 JID QQ 在域名中包含一个 @ —— 用 XmppStringprep Excession 崩溃 JVB 。 JVB 附加自动 XMPP INTERNAL MUC DOMAIN.
Add dnsPolicy ClusterFirstWithHostNet to JVB StatefulSets so hostNetwork pods can resolve cluster DNS
Reference *** instead of non-existent turn-secret in Prosody deployment
Enable auto-truncate on embedding model to prevent 413 errors
Add --auto-truncate flag so inputs exceeding the 256 token limit are silently truncated instead of rejected with a validation error.
Load embedding model from local hostPath to prevent HuggingFace download failures
The embedding-model pod was in CrashLoopBackOff because it couldn't download the model from HuggingFace on startup (network/DNS issue). Mount the model from a h...
Auto-cert service not renewing expired SSL certificates
The auto-cert service was importing expired certs from shared storage and skipping Certificate CR creation, so cert-manager couldn't manage renewals. Also fixed...
Fix kubectl not found in pod, add docs alias, proactive SUBDOMAINS
- Mount /usr/local/bin/kubectl from host via hostPath instead of failing apt-get install (kubectl not in default Debian repos) - Add "docs" to SUBDOMAINS list...
Remove forced WebSocket headers from media middleware
Traefik v3 handles WebSocket Upgrade/Connection headers natively. Remove forced headers that broke non-WebSocket API requests.
Add system account to all NATS configs
Add $SYS account with admin credentials to k0m1, k1m1, and k2m1 NATS configs. Enables nats CLI cluster management operations (peer removal, step-down, etc.) for...
Resilient probes so cluster stays up when one node is offline
- Liveness: tcpSocket on 4222 (do not depend on JetStream meta leader) - Readiness: initialDelay 90s, period 15s, failureThreshold 10 so k0m1+k1m1 can form qu...
Skip CockroachDB init job if any pods exist - cluster already initialized
Improve CockroachDB init check to wait for pods and verify cluster state
Prevent CockroachDB init job from running when cluster is already initialized
Update CockroachDB probes, HTTP redirect, and MinIO service endpoints
Add CORS middleware to theme routes to allow cross-origin access from all websites
将主机端口添加到 Traefik 部署, 用于直接端口访问
- 使用主机Port 443作为网络安全入口,绕过节点Port - 允许路由器将443号口直接转发至Traefik - 还为Web(30080)和管理员(30646)设置主机端口,以便保持一致
更新 CockroachDB 根据节点主机名使用动态 VPN IP 的状态Set
- 固定广告添加器,使用VPN IP(k1m1, 10.8.1.1, 10.8.2.1, k2m1) - 更新加入参数以使用VPN IP而不是主机名 - 更新节点证书,以包括所有VPN IP(10.8.0.1, 10.8.1.1, 10.8.2.1)和主机名称
在 CockroachDB 秘密创建中添加节点证书
- 在蟑螂目录中添加节点.crt和节点.key - 更新 CI/CD 工作流程,以便在创建 *** 秘密时包含节点证书 - 解决CockroachDB CrashLoopBackOff问题
处理 BackoffLimit 通过删除失败的工作并重试而超越
- 当与 BackoffLimit Excessed 的工作失败时, 和被清理、删除和重新创建的工作 - 这样我们就能从新舱取出新的日志 - 在重试时检查“ 已经初始化” 错误
处理 BackoffLimit 通过删除和重试它的任务而超额完成
- 当与 BackoffLimit Excessed 的工作失败时, 和被清理、删除和重新创建的工作 - 如果集群已初始化, 允许任务重试并成功 。 - 更好地处理临时故障
Improve CockroachDB init job error handling when pods are cleaned up
- Check previous pod logs if current pods are not found - Test cluster connectivity to verify if already initialized - Better handling of failed jobs with clean...
Resolve Traefik, NATS, and CockroachDB deployment issues
- Remove hostPort from Traefik deployment (conflicts with NodePort service) - Fix NATS deployment to only deploy server-specific statefulsets (nats-k1m1, nats-k...
Improve CockroachDB init job error handling - check pod status and logs after timeout
删除此文doc 白空间问题 - 使用回声命令和配置图
这里的文档显示 YAML 缩进导致解析错误的白空间 - 使用回声命令创建 dovecot.conf 而不引导白空间 - 从 ConfigMap (无空白问题) 上挂载 auth- sql.conf.ext - 来自 ConfigMap 的多维科特-sql.conf.ext 上山 - 添加调试输出以查看实际配置内容
Use driver=sql with sql_driver=mysql and inline connect
Based on official Dovecot 2.4 examples found online: - Named sections: passdb sql { and userdb sql { - driver = sql (not driver = mysql) - sql_driver = mysql (s...
Use driver=mysql (not driver=sql) with inline connect in Dovecot 2.4
Based on official Dovecot 2.4 examples: - Named sections: passdb sql { and userdb sql { - Use driver = mysql (not driver = sql) - Inline connect, default_pass_s...
Dovecot 2.4 requires SQL settings inline, not args parameter
- Dovecot 2.4 removed 'args' parameter for passdb/userdb - SQL connection settings must be specified directly in passdb/userdb blocks - Put driver=mysql, connec...
Disable idle timeout for WebSocket connections
- Added idleTimeout=0 to websecure entrypoint - Prevents Traefik from closing WebSocket connections due to inactivity - Fixes SockJS WebSocket timeout issues
Split port ranges to avoid conflicts
- Coturn relay: 52000-65535 (13,536 ports) - Avoids: Janus RTP (10000-49151) and WireGuard (51820-51821) - No overlap between services
Adjust relay port range to avoid WireGuard/VPN ports
- Changed max-port from 65535 to 51800 to avoid conflicts - Avoids WireGuard on UDP 51820 and other VPN services on 51821 - Provides 2,649 ports (49152-51800) f...
Resolve CrashLoopBackOff by fixing probes and config
- Replace netstat-based health probes with TCP socket checks (netstat not available in coturn/coturn:latest Alpine image) - Remove conflicting no-stdout-log dir...
Add Connection: Upgrade header to WebSocket upgrade middleware
- Add Connection: Upgrade header along with Upgrade: websocket - Both headers are required for proper WebSocket upgrade handshake - This ensures HTTP/2 Extended...