Kubernetes Pod无法访问服务公开的其他Pod

时间:2019-03-26 23:03:34

标签: kubernetes google-kubernetes-engine

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上运行。

帮助表示感谢!

0 个答案:

没有答案