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

Cómo acceder al host local del host desde el interior del clúster de kubernetes

127.0.0.1 es un localhost (lo0 ) dirección IP de la interfaz. Los hosts, nodos y pods tienen sus propias interfaces de host local y no están conectados entre sí.

Tu mongodb se está ejecutando en la máquina host y no se puede acceder a él mediante localhost (o su rango de IP) desde dentro de un pod de clúster o desde dentro de VM.

En su caso, cree un servicio sin cabeza y Endpoint para ello dentro del clúster:

Tu mongodb-service.yaml el archivo debería verse así:

apiVersion: v1
kind: Service
metadata:
   name: mongodb-service
spec:
   clusterIP: None
   ports:
   - protocol: TCP
     port: <multipass-port-you-are-using>
     targetPort: <multipass-port-you-are-using>
   selector:  
     name:  example
   type: ClusterIP
---
apiVersion: v1
kind: Endpoints
metadata:
  name: mongodb-service
subsets:
  - addresses:
    - ip: 10.62.176.1
    ports:
      - port: <multipass-port-you-are-using>

He agregado la IP que mencionaste en la sección de comentarios.

Después de crear el servicio y el punto final, puede usar mongodb-service nombre y puerto <multipass-port-you-are-using> dentro de cualquier pod de este clúster como punto de destino.

Eche un vistazo:mysql-localhost , mongodb-localhost .