Kubernetes 中是否有办法列出当前可用的所有 API 端点?这样,只要我至少有一个有效的 API 端点,我就可以获取所有可能的 API 端点的更新列表。
答案1
Kubernetes 中有没有办法列出当前可用的所有 API 端点?
是的,你可以使用以下kubectl
命令获取所有端点:
$ kubectl get endpoints --all-namespaces
您可以输入上述命令的较短版本:
$ kubectl get ep -A
(-A
从 1.14 版及更新版本开始)
上述命令的输出应如下所示:
NAMESPACE NAME ENDPOINTS AGE
default hello-service 10.32.0.10:50001,10.32.1.18:50001,10.32.2.3:50001 14s
default kubernetes AAA.BBB.CCC.DDD:443 18h
kube-system default-http-backend 10.32.0.9:8080 18h
kube-system gcp-controller-manager <none> 18h
kube-system heapster 10.32.1.3:8082 18h
kube-system kube-controller-manager <none> 18h
kube-system kube-dns 10.32.0.6:53,10.32.2.2:53,10.32.0.6:53 + 1 more... 18h
kube-system kube-scheduler <none> 18h
kube-system managed-certificate-controller <none> 18h
kube-system metrics-server 10.32.1.2:443 18h
具体来看:
default kubernetes AAA.BBB.CCC.DDD:443 18h
它是您 Kubernetes 集群的接触点。
您还可以使用以下方法$ kubectl describe endpoint EP_NAME
来获取更多信息:
Name: hello-service
Namespace: default
Labels: <none>
Annotations: endpoints.kubernetes.io/last-change-trigger-time: 2020-02-28T06:30:22Z
Subsets:
Addresses: 10.32.0.10,10.32.1.18,10.32.2.3
NotReadyAddresses: <none>
Ports:
Name Port Protocol
---- ---- --------
<unset> 50001 TCP
Events: <none>
请参考其他资源:
如果您对此有任何疑问,请告诉我。