在哪里可以看到在 Kubernetes Discovery 中注册的服务列表?
Where can I see list of services registered in Kubernetes Discovery?
如果使用 eureka(+ Spring 引导),您可以到达特殊端点,其中可以找到当前注册实例的列表。例如。:
Kubernetes 服务发现是否有这样的端点或者可能是其他机制来查看所有当前注册的实例?
UPD:kubernetes api 是否有可能通过 kubectl 做到这一点?
没有。 Eureka 是一个服务发现和注册系统。 spring kubernetes 上服务发现的云实现仅从 kubernetes api 读取。您可能可以通过 kubectl 获取信息。
Kubernetes 有一个基于 HTTP 的 API,您可以通过多种方式与之交互(例如:kubectl
),当然您也可以使用 curl
。
方法如下:Access Clusters Using the Kubernetes API
如果你对你的pods感到好奇,你可以这样做:
kubectl get pods
或 kubectl get pods -o json
curl http://localhost:8080/api/v1/pods
如果你的意思是services
(以及他们注册的目标):
kubectl get services
或 kubectl services pods -o json
curl http://localhost:8080/api/v1/services
一段时间后我设法解决了问题。
- 在您的微服务中添加端点。示例 here
- 向您的 kubernetes 集群添加角色:
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: yours
name: service-reader
rules:
- apiGroups: [""] # "" indicates the core API group
resources: ["services"]
verbs: ["get", "watch", "list"]
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: service-reader-pod
subjects:
- kind: ServiceAccount
name: default
namespace: yours
roleRef:
kind: ClusterRole
name: service-reader
apiGroup: rbac.authorization.k8s.io
如果使用 eureka(+ Spring 引导),您可以到达特殊端点,其中可以找到当前注册实例的列表。例如。:
Kubernetes 服务发现是否有这样的端点或者可能是其他机制来查看所有当前注册的实例? UPD:kubernetes api 是否有可能通过 kubectl 做到这一点?
没有。 Eureka 是一个服务发现和注册系统。 spring kubernetes 上服务发现的云实现仅从 kubernetes api 读取。您可能可以通过 kubectl 获取信息。
Kubernetes 有一个基于 HTTP 的 API,您可以通过多种方式与之交互(例如:kubectl
),当然您也可以使用 curl
。
方法如下:Access Clusters Using the Kubernetes API
如果你对你的pods感到好奇,你可以这样做:
kubectl get pods
或kubectl get pods -o json
curl http://localhost:8080/api/v1/pods
如果你的意思是services
(以及他们注册的目标):
kubectl get services
或kubectl services pods -o json
curl http://localhost:8080/api/v1/services
一段时间后我设法解决了问题。
- 在您的微服务中添加端点。示例 here
- 向您的 kubernetes 集群添加角色:
kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: namespace: yours name: service-reader rules: - apiGroups: [""] # "" indicates the core API group resources: ["services"] verbs: ["get", "watch", "list"] apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: service-reader-pod subjects: - kind: ServiceAccount name: default namespace: yours roleRef: kind: ClusterRole name: service-reader apiGroup: rbac.authorization.k8s.io