node-config(k1m1-runner): record data.forgejo.org IPv4 pin + capacità=6
Documenti il live on-node change: dati. forgejo.org è IPv6-solo e k1m1 non ha percorso IPv6, così i contenitori di lavoro hanno appeso ~133s e azioni/checkout n...
Rimuovere gli script NATS morti k0m1/3-nodo+config (nodi recuperati)
Corretto FPBXCONF heredoc + repoint Universe Scilla
- freepbx: il delimitatore di chiusura qui-documento FPBXCONF è stato indentato (8 spazi); < i delimitatori della colonna 0, così start-up.sh morì con l'estremi...
Nota tassitack Forgejo: 3000 nodo di configurazione del registro
tassitack app tirare dal registro di sistema Forgejo 192.168.4.22:3000 (domanda HTTP, auth richiesto), che deve essere aggiunto ai registri di ogni nodo. yaml (...
Pin kamo Traefik a k1m1; fare auto-cert single-cluster
Errori SSL: kamo Traefik è un LoadBalancer con esterniIPs 192.168.4.22 (k1m1) + esternaTrafficPolicy=locale, quindi deve funzionare su k1m1 — il riequilibrio de...
Consolidare klusterservices su singolo cluster k1m1+k3m1
- NATS: singolo pod standalone pinned k1m1 (drop k2m1 + varianti cluster generiche) - CockroachDB: pin k1m1, single-node --join - MySQL: singola istanza spostat...
Bootstrap universo-minio segreto + ugc secchio nota (§14)
Aggiungi il passo 6 a bootstrap-universe.sh: crea il segreto dell'universo-minio (ACCESS KEY/SECRET KEY dai credi delle radici dell'universo-backup-s3) e nota c...
Aggiornare k1m1 nodo immagine v24.2.4 -> v24.3.33
Rotolando l'aggiornamento principale del nodo k1m1 CRDB StatefulSet. Nota: il cluster non finalizzare a 24.3 fino a quando il nodo k3m1 viene anche aggiornato (...
Gettare la sezione di cluster k2m1 disattivata
k2m1 (10.8.2.1:6443) è decommissionato e irraggiungibile; i suoi passi vissuti nello stesso dispiegare services e fallire (mandere kubeconfig / no route) anche ...
I corpi quidoc di rientro in modo che l'avvio.sh configmap sia valido YAML
Il blocco startup.sh scalar incorporato 5 shell heredocs (rtp.conf, http.conf, an SQL blocco, WebRTC endpoints, freepbx.conf) i cui corpi sono stati seduti alla...
Non lasciare che un dir cache kubectl mancante uccida l'intero lavoro
Il passo kubectl-install funziona 'set -eo pipefail' quindi Trova il tuo nome. -name kubectl ... | testa -1 Quando il dir della cache è assente (chiamato tra il...
Aggiornamento v3.0 -> v3.3 (fisso intermittente WebSocket scollegare)
v3.0.0 intermittently completa l'aggiornamento WS 101 quindi chiude la presa prima di qualsiasi flussi di frame — il ricorrente 'sconnettersi su carico' nel cli...
Spostare le maildirs di Dovecot in un PVC di percorso locale (soff rclone/MinIO FUSE)
Maildirs erano su hostPath /mnt/shared-files/email/mail — il montaggio FUSE rclone supportato da MinIO object storage, che non può ospitare in modo sicuro un ma...
Mettere MySQL datadir su un PVC locale-percorso invece di rclone/MinIO FUSE
La mail MySQL datadir (e maildirs) erano su hostPath /mnt/shared-files, un rclone FUSE supportato dallo storage di oggetti MinIO, che non può duramente o ospita...
Drop CON revision history da backup (solo intraprendente); core BACKUP è OSS
node-config: documento k1m1 forgejo-runner config (--add-host for submodule DNS)
I contenitori di lavoro su k1m1 rientrano nel DNS pubblico, quindi la flotta-swept http://k1m1:3000 .gitmodules URLs non riescono a clonare lì. Pin k1m1 nel lav...
node-config: document k1m1 docker daemon insecure-registries
Il forgejo-runner k1 costruisce spingere al registro HTTP Forgejo; il daemon.json spedito con solo:5000 voci, quindi ogni atterraggio di lavori di costruzione s...
Registro delle immagini K1m1 sostituendo k0m1:5000 in pensione (stesse credenziali)
Loki 6.x SingleBinary ha bisogno di obiettivi scalabili a zero; crdb exec via localhost (cert SANs)
Kamo-universe namespace+quota+valkey, backup CockroachDB, stack di osservabilità
- universo/: namespace + ResourceQuota, valkey-universe (AOF, hostPath k1m1), nightly CockroachDB backup CronJob, operatore bootstrap script - Monitoraggio/: va...
Unisciti a cluster bidirezionale condiviso con k3m1 su LAN; isolamento account
Ritirare le rotte WireGuard (10.8.x.x.x) per le rotte LAN (192.168.4.22 <-> 192.168.4.36 :6222) con i cred incorporati negli URL del percorso. Rinominare il clu...
Aggiungi nodo k3m1 + peering cluster di migrazione a IP LAN
- statofulset: pubblicizzare/aggiungere oltre 192.168.4.x (k1m1=.22, k3m1=.36); WireGuard è caduto (k3m1 wg0 10.8.0.1 colliso con l'IP di pubblicità di k0m1). -...
Refresh TLSStore ogni ciclo così nuovi certs vengono serviti
update tls store() ha eseguito solo all'avvio e alle importazioni di stoccaggio condiviso, quindi un cert appena rilasciato da cert-manager (HTTP-01) era pronto...
Dare reindirizzamento solo route un backend così Traefik v3 consente
Traefik v3 disabilita un router IngressRoute con servizi: [] quando consentireEmptyServices è spento (come è qui), quindi il dominio-agnostico Il router redirec...
Reindirizza tutti gli host HTTP a HTTPS + gate auto-cert a domini reali org
Doganale org (ad esempio login.sign.pink) ha restituito il nudo di Traefik "404 pagina non trovata" su HTTP normale: l'unico router redirect port-80 E' stato co...
Pre-seed sign.pink + www.sign.pink in STATIC DOMAINS
sign.pink è un nuovo dominio apex (consumer e-signature brand / white-label Kamo inquilino org). Pre-seed apex + www così un cert di crittografia esiste prima p...
Aggiornare sottodominio mappa commento KamoLOS → KamoMLOS
Il progetto /Next.js/KamoLOS è stato rinominato KamoMLOS (Kamo Mortgage Sistema di origine). Il nome KamoLOS è ora utilizzato per il nuovo servizio personale. I...
node-config: raise k1m1 kubelet max-pods 110 -> 200
Predefinito RKE2 max-pods=110 è stato colpito, bloccando kamolos rolling-update distribuisce (maxSurge:1,maxNon disponibile:0 ha bisogno di slot per creare nuov...
Documento alias myloan per KamoLOS
Aggiunge `myloan` alla lista di riconoscimento SUBDOMAINS e riscrive il commento per rendere esplicito lo scopo della lista (è documentario; il dinamico Traefik...
Conservare FQDN completo per sottodomini più profondi di due etichette
organizzato by root() estraeva solo la prima etichetta e le ultime due etichette di ogni nome host traefik. Per il caso comune a due livelli (login.b11capital.c...
Gestire mail.kamocrm.com TLS end-to-end
Auto-cert ora disposizioni e mantiene il cert Let's Encrypt per mail.kamocrm.com (HTTP-01 via Traefik sul porto 80) e mantiene il postfix consumatore in sincron...
Rimuovere il gateway Janus WebRTC disattivato
Janus non è più in uso. Rimuove gli orfani KlusterServices/janus/ manifesti (Janus è stato installato host, non cluster-deployed, e non è in esecuzione su k1m1)...
Pubblico IP 47.181.8.83 per i media esterni
JVB-k1m1 stava pubblicizzando 75.83.113.11 e coturn stava pubblicizzando node's LAN IP via status.hostIP — entrambi rotto esterno WebRTC media ora che il pubbli...
Sostituisci quidoc con eco raggruppati in modo da YAML parses blocco letterale
Il corpo /etc/odbc.ini heredoc si è seduto alla colonna 1, che ha detenuto fuori dalla start-up.sh circostante: | literal-block scalar e rotto `kubectl applicar...
Seguire i rimontaggi rclone tramite la propagazione del supporto HostToContainer
Senza la propagazione degli schiavi il baccello cattura il supporto FUSE una volta al avvio contenitore; se rclone-mount. servizio riavvia sull'host, la capsula...
Prezzo inversoturbo.com apex + jolly via k1m1 con TLS
k1m1 Traefik termina ora HTTPS per priceturbo.com e qualsiasi *.priceturbo.com sottodominio, invio di HTTP normale al Traefik a monte a 192.168.4.36:80 con l'in...
Scala a 2 repliche per assorbire il traffico di sincronizzazione + runtime
Una singola replica è il collo di bottiglia per il flusso di lavoro di sincronizzazione del dizionario: ogni operaio di gunicorn gestisce una richiesta poi auto...
Tasso inverso-proxy.loans/stack.loans host via k1m1 con TLS
k1m1 Traefik termina ora HTTPS per api.rate.loans, www.rate.loans, e www.stack.loans, invio di HTTP normale al Traefik a monte 192.168.4.36:80. Auto-cert semi p...
Goccia non riconosciuta --lavoratori arg causa crashloop
Il libretranslate CLI non accetta --lavoratori, solo il gunicorn processo dentro di esso. Passandolo ha causato il pod a fallire argparse su boot e CrashLoopBac...
Aggiungi pricing@kamocrm.com mailbox e IMAP NodePort esterno
- Nuova posta di servizio/dovecot-imap-esterno (NodePort 30143 -> 143) IMAP può essere raggiunto da fuori del cluster su $NODE:30143. - Seed pricing@kamocrm.com...
Probe timeout 10s and 2 gunicorn workers
LibreTranslate's /languages probe blocks on the gunicorn worker event loop. With a single worker translating a long chat message, the probe times out at the def...
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
Rewrite /etc/odbc.ini to point at $MARIADB_HOST on every boot
The escomputers/freepbx:17 image bakes /etc/odbc.ini with Server=db (the docker-compose link target). On this Kubernetes deployment MariaDB lives at \$MARIADB_H...
Configurare STUN in modo che il browser ICE possa completare bidirezionale
Due parti browser-a-browser chiamate connesse allo strato SIP ma non aveva audio o direzione. Voicemail (one-way Asterisk → browser) ha lavorato perché Asterisk...
Seed pbx.k1.kluster.kamocrm.com come dominio statico
Il softphone del browser ha bisogno di SIP-over-WSS per atterrare su un hostname con un reale TLS cert. Aggiungi il nome host di FreePBX admin / WS a STATIC DOM...
Host browser SIP WSS su internal.kamocrm.com (vera cert)
I browser hanno rifiutato il collegamento di WebSocket a... con il codice vicino 1006 perché Traefik stava servendo il suo cert di default auto-firmato per quel...
Rendere WebRTC configurazione sopravvivere pod riavvio
L'approccio precedente (http custom.conf con [general] override) non è stato effettivamente prendere effetto perché il parser INI di Asterisk non onora più [gen...
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.