Kubernetes terraform eks设置-名称空间被禁止:用户无法列出资源
我一直在遵循如何使用terraform设置AWS EKS的指南 我在需要验证仪表板的部分Kubernetes terraform eks设置-名称空间被禁止:用户无法列出资源,kubernetes,terraform,amazon-eks,Kubernetes,Terraform,Amazon Eks,我一直在遵循如何使用terraform设置AWS EKS的指南 我在需要验证仪表板的部分 我已经创建了集群卷装 我已经生成了令牌 我已使用令牌登录到kubernetes仪表板kubectl代理 但是,在我登录并尝试单击任何面板以查看资源后,我得到了一组类似于以下内容的错误 名称空间被禁止:用户 无法列出“系统:服务帐户:kube系统:服务控制器” 群集范围内API组“”中的资源“命名空间” 禁止cronjobs.batch:用户 无法列出“系统:服务帐户:kube系统:服务控制器” 命名空间“d
kubectl
cli工具查看它们
kubectl describe clusterrole kubernetes-dashboard
Name: kubernetes-dashboard
Labels: k8s-app=kubernetes-dashboard
Annotations: <none>
PolicyRule:
Resources Non-Resource URLs Resource Names Verbs
--------- ----------------- -------------- -----
nodes.metrics.k8s.io [] [] [get list watch]
pods.metrics.k8s.io [] [] [get list watch]
kubectl描述集群角色kubernetes仪表板
名称:kubernetes仪表板
标签:k8s app=kubernetes仪表板
注释:
政策规则:
资源非资源URL资源名称谓词
--------- ----------------- -------------- -----
nodes.metrics.k8s.io[][]获取列表监视]
pods.metrics.k8s.io[][]获取列表监视]
以下内容将以管理员用户的身份登录,这似乎是您正在寻找的行为
$ADMIN\u USER\u TOKEN\u NAME=$(kubectl-n kube system get secret | grep ADMIN USER TOKEN | cut-d'-f1)
$echo$ADMIN\u USER\u TOKEN\u NAME
admin-user-token-k4s7r
#后缀是自动生成的
$ADMIN\u USER\u TOKEN\u VALUE=$(kubectl-n kube系统获取机密“$ADMIN\u USER\u TOKEN\u NAME”-o jsonpath='{.data.TOKEN}'| base64--解码)
$echo“$ADMIN\u USER\u TOKEN\u VALUE”
eyJhbGciOiJ。。。
………..Tg
#复制此令牌并在Kubernetes仪表板登录页面上使用它
本教程中使用的服务帐户是Service controller
,它似乎只有很少的权限
$kubectl-n kube系统描述集群角色系统:控制器:服务控制器
名称:系统:控制器:服务控制器
Labels:kubernetes.io/bootstrapping=rbac默认值
注释:rbac.authorization.kubernetes.io/autoupdate:true
政策规则:
资源非资源URL资源名称谓词
--------- ----------------- -------------- -----
事件[][]创建修补程序更新]
events.events.k8s.io[][]创建修补程序更新]
服务[][]获取列表监视]
节点[][][列表监视]
服务/状态[][][修补程序更新]
如果您有任何问题,请告诉我。以下内容将以管理员用户的身份登录,这似乎是您正在寻找的行为
$ADMIN\u USER\u TOKEN\u NAME=$(kubectl-n kube system get secret | grep ADMIN USER TOKEN | cut-d'-f1)
$echo$ADMIN\u USER\u TOKEN\u NAME
admin-user-token-k4s7r
#后缀是自动生成的
$ADMIN\u USER\u TOKEN\u VALUE=$(kubectl-n kube系统获取机密“$ADMIN\u USER\u TOKEN\u NAME”-o jsonpath='{.data.TOKEN}'| base64--解码)
$echo“$ADMIN\u USER\u TOKEN\u VALUE”
eyJhbGciOiJ。。。
………..Tg
#复制此令牌并在Kubernetes仪表板登录页面上使用它
本教程中使用的服务帐户是Service controller
,它似乎只有很少的权限
$kubectl-n kube系统描述集群角色系统:控制器:服务控制器
名称:系统:控制器:服务控制器
Labels:kubernetes.io/bootstrapping=rbac默认值
注释:rbac.authorization.kubernetes.io/autoupdate:true
政策规则:
资源非资源URL资源名称谓词
--------- ----------------- -------------- -----
事件[][]创建修补程序更新]
events.events.k8s.io[][]创建修补程序更新]
服务[][]获取列表监视]
节点[][][列表监视]
服务/状态[][][修补程序更新]
如果您有任何问题,请告诉我。您使用的是哪一版本的Kubernetes 1.15?1.16? 1.17? 1.19?您使用的是哪一版本的Kubernetes 1.15?1.16? 1.17? 1.19?我也用这个来最终登录我也用这个来最终登录
kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep service-controller-token | awk '{print $1}')
kubectl describe clusterrole kubernetes-dashboard
Name: kubernetes-dashboard
Labels: k8s-app=kubernetes-dashboard
Annotations: <none>
PolicyRule:
Resources Non-Resource URLs Resource Names Verbs
--------- ----------------- -------------- -----
nodes.metrics.k8s.io [] [] [get list watch]
pods.metrics.k8s.io [] [] [get list watch]