在GCP项目中,我有一个包含2个集群的K8s架构。
我已经从内部测试了我的mongodb集群,并确保其正常工作。 我现在想做的是从另一个群集上的Pod连接。我已经使用 mongodb 集群上的节点端口公开了mongo服务:
<tr>
<td>Time:</td>
<td>
<asp:TextBox ID="TxtTime" runat="server" Width="250px" TextMode="Date" />
</td>
</tr>
使用我的 mongodb 群集的IP:
apiVersion: v1
kind: Service
metadata:
labels:
name: mongo
name: mongodb-service
annotations:
cloud.google.com/load-balancer-type: "Internal"
spec:
externalTrafficPolicy: Local
ports:
- name: port-mongodb
port: 27017
protocol: TCP
targetPort: 27017
selector:
role: mongo
sessionAffinity: None
type: NodePort
以及我的NodePort的端口:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://35.240.47.130
name: gke_myproject_europe-west1-b_mongodb
从带有python的新pod进入 microservice 集群(与从内部测试mongodb集群所使用的完全相同),我执行以下python脚本:
mongodb-service NodePort 10.3.248.249 <none> 27017:32752/TCP 6m
结果始终是错误:
from pymongo import MongoClient
client = MongoClient("mongodb://login:pass@35.240.47.130:32752")
database = client["testdb"]
collection = database["testcollection"]
inserted_id =
collection.insert_one({"moonlight":"sonata"}).inserted_id
我在做什么错了?
更新
此外,这是来自 microservices 集群的一些nslookup测试。首先,我检查mongodb NodePort服务IP
pymongo.errors.ServerSelectionTimeoutError: mongo:32752: timed out
此外,我使用群集IP检查群集是否看到另一个。
root@pybbox-55bdc76ddb-nw5gm:/# nslookup 10.3.248.249
Server: 10.35.240.10
Address: 10.35.240.10#53
** server can't find 249.248.3.10.in-addr.arpa: NXDOMAIN