MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So greifen Sie vom Kubernetes-Cluster aus auf den localhost des Hosts zu

127.0.0.1 ist ein localhost (lo0 ) IP-Adresse der Schnittstelle. Hosts, Nodes und Pods haben ihre eigenen Localhost-Schnittstellen und sind nicht miteinander verbunden.

Ihre mongodb läuft auf dem Host-Rechner und kann nicht mit localhost aufgerufen werden (oder dessen IP-Bereich) von innerhalb eines Cluster-Pods oder von innerhalb von vm.

Erstellen Sie in Ihrem Fall einen headless service und Endpunkt dafür innerhalb des Clusters:

Ihre mongodb-service.yaml Datei sollte so aussehen:

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>

Ich habe IP hinzugefügt, die Sie im Kommentarbereich erwähnt haben.

Nachdem Sie Dienst und Endpunkt erstellt haben, können Sie mongodb-service verwenden Name und Port <multipass-port-you-are-using> innerhalb eines beliebigen Pods dieses Clusters als Zielpunkt.

Werfen Sie einen Blick auf:mysql-localhost , mongodb-localhost .