REST APIs for Google Kubernetes Engine (GKE)



什么是可用于GKE的RESP完整API,我该如何调用它们?目前,我想将 GKE 与我的本地工具集成,以便在 GKE 上部署容器。我已经构建了所有必需的映像,并希望在 GKE 中触发 API 调用来部署我的 docker 映像。我应该调用哪个 API?我该为身份验证提供什么以及如何提供?

可用的 Google KubernetesEngines REST Resource API 列表,例如可以在 Google Kubernetes Engine 公共文档中找到

这是与集互而不是与 Kubernetes 交互的 Restful API。要与 Kubernetes 和容器管理交互,请使用 Kubectl。

根据您的身份验证方法,如果您通过浏览器进行身份验证,则可以使用 Google OAuth 2.0 身份验证,如果您在代码中进行身份验证,则可以使用 API,或使用 Kubectl。

正如 @Sunny J. 所提到的,在 GKE 文档中,您只能找到与集互的 API,仅用于配置。如果你想管理工作负载,你需要与 Kubernetes API 服务器进行交互。这是 API 参考。首先,您需要获取 API 服务器正在侦听的地址和端口:

kubectl config view --minify | grep server | cut -f 2- -d ":" | tr -d " "

如果需要对群集的根访问权限,可以创建服务帐户和群集角色绑定到cluster-admin

apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kube-system

现在显示其令牌:

kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}')

发出请求时,请以这种方式设置 Authorization 标头,将token替换为您使用上一个命令收到的标头:

Authorization: "Bearer <token>"

祝你在 Kubernetes 上好运:(

最新更新