AWS EKS加载GenericResourceCollection/namespaces报错及命名空间不显示求助
IAM权限配置不匹配
登录EKS控制台的IAM用户/角色,和你用kubectl操作的权限是两套独立体系。哪怕kubectl能正常查询命名空间,控制台的IAM实体可能缺失eks:ListNamespaces、eks:DescribeCluster这类核心权限。检查对应IAM策略,要么给实体关联AmazonEKSClusterPolicy托管策略,要么手动添加针对目标集群ARN的相关权限动作。集群API服务器的网络访问限制
EKS控制台需要能正常访问集群的API服务器端点。如果集群是私有端点模式,而控制台所在环境没法通过VPC peering、VPN等打通网络,会直接拉取失败;或者集群安全组未开放443端口给AWS控制台的IP段。可以临时把端点切换为公有模式测试,快速确认是不是网络问题。kube-apiserver组件异常
虽然kubectl能正常获取命名空间,但控制台的API调用格式可能触发了kube-apiserver的异常逻辑。去kube-system命名空间拉取apiserver日志排查:kubectl logs -n kube-system -l component=kube-apiserver重点查找和命名空间查询相关的错误,比如认证失败、资源序列化错误之类的日志内容。
浏览器或控制台临时故障
浏览器缓存可能损坏了UI的加载状态,试试用无痕模式访问、清除浏览器缓存或者换个浏览器测试。另外也有可能是AWS控制台区域性的临时故障,可以去AWS服务健康仪表台查看EKS控制台的运行状态。集群RBAC绑定问题
如果控制台用的IAM角色对应的集群内RBAC权限不足,也会导致命名空间无法显示。检查IAM角色对应的ClusterRoleBinding:kubectl get clusterrolebindings | grep <你的IAM角色名>确保绑定的ClusterRole拥有
namespaces资源的list权限,比如临时绑定cluster-admin测试(生产环境记得改回最小权限配置)。
内容的提问来源于stack exchange,提问作者mdarwin

