使用pod而不使用节点ip

时间:2015-08-18 20:30:40

标签: kubernetes

我有一个在coreOS vm上本地运行的postgres pod。 我可以使用它所使用的minion的ip访问postgres但是我试图以这样的方式设置它,以便不必知道pod正在哪个minion但仍然可以使用postgres。 / p>

这是我的pod

apiVersion: v1
kind: Pod
metadata:
  name: postgresql
  labels:
    role: postgres-client
spec:
  containers:
  - image: postgres:latest
    name: postgres
    ports:
    - containerPort: 5432
      hostPort: 5432
      name: pg-port
    volumeMounts:
      - name: nfs
        mountPath: /mnt
  volumes:
    - name: nfs
      nfs:
       server: nfs.server
       path: /

这是我尝试设置的服务,但似乎不正确

apiVersion: v1
kind: Service
metadata:
  name: postgres-client
spec:
  ports:
    - port: 5432
      targetPort: 5432
  selector:
    app: postgres-client

1 个答案:

答案 0 :(得分:0)

我猜你的服务选择器没有找到任何匹配的后端。

尝试更改

app: postgres-client

role: postgres-client

在服务定义中(反之亦然,在上面的pod定义中)。

标签选择器必须匹配键和值(即rolepostgres-client)。有关详情,请参阅Labels doc。