MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como acessar o host local do host de dentro do cluster kubernetes


127.0.0.1 é um localhost (lo0 ) endereço IP da interface. Hosts, nós e pods têm suas próprias interfaces localhost e não estão conectados uns aos outros.

Seu mongodb está sendo executado na máquina Host e não pode ser acessado usando o localhost (ou seu intervalo de IP) de dentro de um pod de cluster ou de dentro de vm.

No seu caso, crie um serviço headless e Endpoint para ele dentro do cluster:

Seu mongodb-service.yaml arquivo deve ficar assim:
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>

Eu adicionei o IP que você mencionou na seção de comentários.

Depois de criar o serviço e o endpoint, você pode usar o mongodb-service nome e porta <multipass-port-you-are-using> dentro de qualquer pod deste cluster como ponto de destino.

Dê uma olhada:mysql-localhost , mongodb-localhost .