È necessario fare riferimento al servizio mongo tramite DNS con spazio dei nomi. Quindi, se il tuo servizio mongo è mymongoapp ed è distribuito in mymongonamespace , dovresti essere in grado di accedervi come mymongoapp.mymongonamespace .
Per testare, ho usato bitnami/mongodb client Docker. Come segue:
Dall'interno di mymongonamespace , questo comando funziona
$ kubectl config set-context --current --namespace=mymongonamespace
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp
Ma quando sono passato allo spazio dei nomi predefinito non ha funzionato
$ kubectl config set-context --current --namespace=default
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp
La qualificazione dell'host con lo spazio dei nomi funziona quindi
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp.mymongonamespace