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.