Cur*_*len 4 kubernetes kubectl
我在运行RBAC的情况下运行Kubernetes 1.6.2.我创建了一个kube-admin具有以下群集角色绑定的用户
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: k8s-admin
subjects:
- kind: User
name: 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
error: unable to upgrade connection: Forbidden (user=system:anonymous, verb=create, resource=nodes, subresource=proxy)
我的猜测是我错过了一个ClusterRoleBinding参考,我错过了哪个角色?
kubectl和api之间的连接很好,并且正在被正确授权.
为了满足exec请求,apiserver联系运行pod的kubelet,并且该连接是被禁止的.
您的kubelet配置为对请求进行身份验证/授权,并且apiserver不提供kubelet识别的身份验证信息.
apiserver对kubelet进行身份验证的方式是使用客户端证书和密钥,使用--kubelet-client-certificate=... --kubelet-client-key=...提供给API服务器的标志进行配置.
有关更多信息,请参阅https://kubernetes.io/docs/admin/kubelet-authentication-authorization/#overview.
| 归档时间: |
|
| 查看次数: |
3935 次 |
| 最近记录: |