繁体   English   中英

特定 linux 用户无法部署到 GKE

[英]Can't deploy to GKE by a specific linux user

我们在 GCE 上有一个 Jenkins 虚拟机,用于处理部署,包括我们对 GKE 所做的部署。 我们试图部署一个我们有一段时间没有接触过的项目。 调用时部署失败

kubectl set image deployment my-deployment my-deployment=gcr.io/my-project/my-project:version-tag

收到此错误:

Error from server (Forbidden): deployments.extensions "my-deployment" is forbidden: User "client" cannot get resource "deployments" in API group "extensions" in the namespace "default"

奇怪的是,如果我登录机器,使用我的Linux用户+我的gcloud用户,我可以很好地部署。 但是,当使用su - jenkins切换到 jenkins 用户,然后向我的用户授权 gcloud 时,我遇到了与部署帐户相同的错误。

请指教如何修复。

它似乎与集群 RBAC 配置有关。 您是否为Google Groups启用了RBAC 在这种情况下,您应该按照上述文档中的说明进行操作或禁用它。

否则,ss Raman Sailopal 说,你可以试试这个:

  • 与您的普通用户一起运行kubectl config get-contexts以检索您当前的上下文
  • /home/Linux user/.kube/config复制到/home/jenkins/.kube/config
  • 将用户更改为 jenkins,并通过运行kubectl config get-contextskubectl config set-context ...确保您使用相同kubectl config set-context ...
  • 尝试您的权利:
  # Check to see if I can create deployments in any namespace
  kubectl auth can-i create deployments

  # Check to see if I can list deployments in my current namespace
  kubectl auth can-i list deployments.extensions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM