查找在kubernetes服务后面提供服务的pod / VM实例

问题描述 投票:0回答:1

我有一个遗留系统(构建它的人已经辞职,无法联系)。所以它是在GKE中托管的微服务应用程序。有一项特别的服务很奇怪。这是一个redis服务(因为通过其内部IP地址使用此服务的其他pod可以使用redis服务并执行redis PING-PONG)。但是,我发现此服务0/0没有pod。知道怎么会这样吗?

该服务的YAML文件如下:

在我们的kubernetes集群中,我没有看到任何名为node-1,node-2和node-3的服务,部署或pod。所以对我来说这很奇怪。谁知道这个?

我已阅读kubernetes文档并搜索解决方案,但我找不到任何解释。

apiVersion: v1
kind: Service
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"v1","kind":"Service","metadata":{"annotations":{"kubernetes.io/change-cause":"kubectl apply --record=true --filename=production/svc/dispatchcache-shard-service.yaml"},"name":"dispatchcache-shard","namespace":"default"},"spec":{"ports":[{"name":"node-1","port":7000,"protocol":"TCP","targetPort":7000},{"name":"node-2","port":7001,"protocol":"TCP","targetPort":7000},{"name":"node-3","port":7002,"protocol":"TCP","targetPort":7000}],"type":"ClusterIP"}}
    kubernetes.io/change-cause: kubectl apply --record=true --filename=production/svc/dispatchcache-shard-service.yaml
  creationTimestamp: 2018-10-03T08:11:41Z
  name: dispatchcache-shard
  namespace: default
  resourceVersion: "297308103"
  selfLink: /api/v1/namespaces/default/services/dispatchcache-shard
  uid: f55bd4d0-c6e3-11e8-9489-42010af00219
spec:
  clusterIP: 10.171.255.152
  ports:
  - name: node-1
    port: 7000
    protocol: TCP
    targetPort: 7000
  - name: node-2
    port: 7001
    protocol: TCP
    targetPort: 7000
  - name: node-3
    port: 7002
    protocol: TCP
    targetPort: 7000
  sessionAffinity: None
  type: ClusterIP
status:
  loadBalancer: {}

我希望我能找到实际为redis服务提供服务的pods / deployment /或实例。

kubernetes redis google-kubernetes-engine
1个回答
0
投票

您可以使用以下命令轻松找到为此服务提供服务的pod的IP:

kubectl get endpoints dispatchcache-shard

之后,您可以使用以下命令通过IP地址找到实际的pod:

kubectl get pod -o wide

我想补充说,应该有非常强大的理由来定义没有标签选择器的服务。不确定这是你的情况。

© www.soinside.com 2019 - 2024. All rights reserved.