sql >> Base de Datos >  >> NoSQL >> MongoDB

No se puede conectar a un servicio mongodb en un clúster de Kubernetes

Primero, verifique que el servicio esté creado

kubectl describe svc mongo

Debería verlo mostrar que se creó y se enrutó a la IP de su pod. Si se pregunta cuál es la IP de su pod, puede consultarla a través de

kubectl get po | grep mongo

Que debería devolver algo como:mongo-deployment-<guid>-<guid> , luego haz

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

Debe asegurarse de que el pod se inicie correctamente y diga Running no algo como ImagePullBackoff . Parece que estás montando un volumen desde un gcePersistentDisk . Si está viendo su pod solo pasando el rato en el ContainerCreating indica que es muy probable que no estés montando el disco correctamente. Asegúrese de crear el disco antes de intentar montarlo como un volumen .

Si parece que su servicio está enrutando correctamente, puede verificar los registros de su pod para asegurarse de que inició Mongo correctamente:

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

Si parece que el pod y los registros son correctos, puede ejecutar en el pod y asegurarse de que mongo realmente se esté iniciando y funcionando:kubectl exec -it mongo-deployment-<guid>-<guid> sh

Lo que debería llevarlo al contenedor (Pod) y luego puede probar algo como esto para ver si su base de datos se está ejecutando.