我需要在我的 GCP kubernetes 集群上删除 POD。实际上,在 Kubernetes Engine API文档中,我只能找到 REST api 的:projects.locations.clusters.nodePools
,但没有找到 POD。
问问题
1006 次
1 回答
3
GKE API 用于在基础架构级别管理集群本身。要管理 Kubernetes 资源,您必须使用 Kubernetes API。有各种语言的客户端,当然你也可以直接调用API。
从另一个或同一个 Pod 中删除一个 Pod:
PODNAME=ubuntu-xxxxxxxxxx-xxxx
curl https://kubernetes/api/v1/namespaces/default/pods/$PODNAME \
-X DELETE -k \
-H "Authorization: Bearer $(cat /var/run/secrets/kubernetes.io/serviceaccount/token)"
从外部,您必须使用公共 Kubernetes API 服务器 URL 和有效令牌。以下是你如何让那些使用kubectl
:
APISERVER=$(kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}')
TOKEN=$(kubectl get secret $(kubectl get serviceaccount default -o jsonpath='{.secrets[0].name}') -o jsonpath='{.data.token}' | base64 --decode )
这里有更多关于访问Kubernetes API 服务器的官方信息。
于 2019-08-22T13:39:41.657 回答