MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Impossible de se connecter à un service mongodb dans un cluster Kubernetes

Vérifiez d'abord que le service est créé

kubectl describe svc mongo

Vous devriez le voir montrer qu'il est à la fois créé et acheminé vers l'adresse IP de votre pod. Si vous vous demandez quelle est l'adresse IP de votre pod, vous pouvez la vérifier via

kubectl get po | grep mongo

Qui devrait retourner quelque chose comme :mongo-deployment-<guid>-<guid> , puis faites

kubectl describe po mongo-deployment-<guid>-<guid>

Vous devez vous assurer que le pod est démarré correctement et indique Running pas quelque chose comme ImagePullBackoff . Il semble que vous montiez un volume à partir d'un gcePersistentDisk . Si vous voyez votre pod traîner dans le ContainerCreating indiquez qu'il est très probable que vous ne montiez pas le disque correctement. Assurez-vous de créer le disque avant d'essayer de le monter en tant que volume .

S'il semble que votre service route correctement, vous pouvez vérifier les journaux de votre pod pour vous assurer qu'il a correctement démarré mongo :

kubectl logs mongo-deployment-<guid>-<guid>

S'il semble que le pod et les journaux sont corrects, vous pouvez lancer une exécution dans le pod et vous assurer que mongo démarre et fonctionne réellement :kubectl exec -it mongo-deployment-<guid>-<guid> sh

Ce qui devrait vous amener dans le conteneur (Pod) et ensuite vous pouvez essayer quelque chose comme ça pour voir si votre base de données est en cours d'exécution.