Vous devez référencer le service mongo par un DNS à espace de noms. Donc, si votre service mongo est mymongoapp et il est déployé dans mymongonamespace , vous devriez pouvoir y accéder en tant que mymongoapp.mymongonamespace .
Pour tester, j'ai utilisé le bitnami/mongodb client docker. Comme suit :
Depuis mymongonamespace , cette commande fonctionne
$ kubectl config set-context --current --namespace=mymongonamespace
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp
Mais lorsque je suis passé à l'espace de noms par défaut, cela n'a pas fonctionné
$ kubectl config set-context --current --namespace=default
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp
La qualification de l'hôte avec l'espace de noms fonctionne alors
$ kubectl run mongodbclient --rm --tty -i --image bitnami/mongodb --command -- mongo --host mymongoapp.mymongonamespace