Kubernetes RBAC无法升级连接:禁止(用户=系统:匿名,动词=创建,资源=节点,子资源=代理)

柯蒂斯·艾伦

我正在启用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进入运行中的吊舱时,出现以下错误。

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裁判,我缺少哪个角色?

乔丹·利吉特(Jordan Liggitt)

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

为了满足执行请求,apiserver与运行pod的kubelet联系,并且该连接是禁止的。

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

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

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章