In case of using eureka (+ Spring Boot) you can reach special endpoint where list of currently registered instances can be found. E.g.:
Does Kubernetes service discovery have such endpoint or may be other mechanism to see all currently registered instances? UPD: Does kubernetes api have any possibilities to do this, may be via kubectl?
Kubernetes has an HTTP-based API that you can interact with in many ways (e.g.: kubectl
), of course you can use curl
too.
Here's how: Access Clusters Using the Kubernetes API
If you are curious about your pods, you can do:
kubectl get pods
or kubectl get pods -o json
curl http://localhost:8080/api/v1/pods
If you mean services
(and their registered targets):
kubectl get services
or kubectl services pods -o json
curl http://localhost:8080/api/v1/services
I managed to solve problem after a while.
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
No. Eureka is a service discovery AND registration system. The spring cloud implementation of service discovery on kubernetes only reads from the kubernetes api. You could probably get the information via kubectl.