Kubernetes的新功能。
为了构建我们的测试环境,我试图在Kubernetes中设置一个PostgreSQL实例,测试集群中的其他Pod可以访问它。
Pod和服务在语法上均有效且正在运行。两者都显示在kubectl get [svc/pods]
的输出中。但是,当另一个Pod尝试访问数据库时,它会超时。
这是吊舱的规格:
# this defines the postgres server
apiVersion: v1
kind: Pod
metadata:
name: postgres
labels:
app: postgres
spec:
hostname: postgres
restartPolicy: OnFailure
containers:
- name: postgres
image: postgres:9.6.6
imagePullPolicy: IfNotPresent
ports:
- containerPort: 5432
protocol: TCP
这是服务的定义:
# this defines a "service" that makes the postgres server publicly visible
apiVersion: v1
kind: Service
metadata:
name: postgres
spec:
selector:
app: postgres
type: ClusterIP
ports:
- port: 5432
protocol: TCP
我敢肯定至少其中之一出了问题,但是我对Kubernetes不够了解,无法知道哪个。
如果相关,我们正在Google Kubernetes Engine上运行。
帮助表示感谢!