Fix race su rs.initiate: attendi i 3 pod Mongo + directConnection in mongosh
Due bug che bloccavano deploy.sh su tenant con provisioning PVC lento: 1. Race DNS: lo step 8 aspettava solo mongodb-tenant-0 prima di rs.initiate. Se i pod 1/2 erano ancora in provisioning, i loro record DNS nel service headless non esistevano e rs.initiate falliva il quorum check con "Could not find address for mongodb-tenant-1...". Ora si attende che tutti e 3 i pod siano Ready. 2. mongosh "connection <monitor> closed": con --host 127.0.0.1, appena il replica set è inizializzato mongosh passa in modalità topology e prova a monitorare il PRIMARY via hostname annunciato, chiudendo la connessione. Sostituito con URI directConnection=true, compatibile con la localhost exception per la creazione del primo utente. Allineati gli hint diagnostici in deploy.sh e l'esempio rs.status() nel README al nuovo form directConnection. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -119,8 +119,8 @@ kubectl -n <ns> logs deploy/tenant-api --tail=100 -f
|
||||
|
||||
```bash
|
||||
ROOT_PASS=$(kubectl -n <ns> get secret mongodb-tenant-auth -o jsonpath='{.data.root-password}' | base64 -d)
|
||||
kubectl -n <ns> exec mongodb-tenant-0 -c mongodb -- mongosh \
|
||||
--tls --tlsCAFile /etc/mongo-tls/ca.crt --tlsAllowInvalidHostnames --host 127.0.0.1 \
|
||||
kubectl -n <ns> exec mongodb-tenant-0 -c mongodb -- mongosh --quiet \
|
||||
'mongodb://127.0.0.1:27017/?directConnection=true&tls=true&tlsCAFile=/etc/mongo-tls/ca.crt&tlsAllowInvalidHostnames=true' \
|
||||
-u admin -p "$ROOT_PASS" --authenticationDatabase admin \
|
||||
--eval 'rs.status()'
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user