当前位置 : 主页 > 手机开发 > 其它 >

Kubernetes RBAC无法升级连接:Forbidden(user = system:anonymous,verb = create,resource = node

来源:互联网 收集:自由互联 发布时间:2021-06-19
我在运行RBAC的情况下运行Kubernetes 1.6.2.我创建了一个具有以下群集角色绑定的用户kube-admin kind:ClusterRoleBinding apiVersion:rbac.authorization.k8s.io/v1beta1 元数据: 名称:k8s-admin 主题: – 善良
我在运行RBAC的情况下运行Kubernetes 1.6.2.我创建了一个具有以下群集角色绑定的用户kube-admin

kind:ClusterRoleBinding
apiVersion:rbac.authorization.k8s.io/v1beta1
元数据:
  名称:k8s-admin
主题:
– 善良:用户
  名称:kube-admin
  apiGroup:rbac.authorization.k8s.io
roleRef:
  kind:ClusterRole
  name:cluster-admin
  apiGroup:rbac.authorization.k8s.io

当我尝试将kubectl exec放入正在运行的pod中时,我收到以下错误.

kubectl -n kube-system exec -it kubernetes-dashboard-2396447444-1t9jk – / bin / bash
错误:无法升级连接:Forbidden(user = system:anonymous,verb = create,resource = nodes,subresource = proxy)

我的猜测是我错过了一个ClusterRoleBinding引用,我错过了哪个角色?

kubectl和api之间的连接很好,并且正在被正确授权.

为了满足exec请求,apiserver联系运行pod的kubelet,并且该连接是被禁止的.

您的kubelet配置为对请求进行身份验证/授权,并且apiserver不提供kubelet识别的身份验证信息.

apiserver对kubelet进行身份验证的方式是使用客户端证书和密钥,使用提供给API服务器的–kubelet-client-certificate = … –kubelet-client-key = …标志进行配置.

有关更多信息,请参见https://kubernetes.io/docs/admin/kubelet-authentication-authorization/#overview.

网友评论