How to get Kubernetes cluster name from K8s API提到
curl http://metadata/computeMetadata/v1/instance/attributes/cluster-name -H "Metadata-Flavor: Google"
(来自集群内),或
kubectl run curl --rm --restart=Never -it --image=appropriate/curl -- -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name
(从集群外部),可用于检索集群名称。这样可行。
有没有办法使用库以编程方式执行相同的操作k8s client-go
?也许使用 RESTClient()?我试过了,但一直在得到the server could not find the requested resource
。
更新
我要做的是cluster-name
从在本地计算机或 k8s 集群中运行的应用程序中获取。k8sclient-go
允许初始化clientset
通过集群或集群外的身份验证。
使用顶部提到的两个命令是可以实现的。我想知道图书馆是否有办法client-go
实现相同的目标,而不是必须这样做kubectl
或curl
取决于服务的运行位置。