È 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