希望得到一些指示,我有一个问题:我需要向具有 Clusterrole:view 的用户添加什么角色/权限,以便让该用户在 kubectl 中使用“顶级节点”和“顶级 pod”命令?我们在 1.15.7 集群 (AKS) 上使用 kubectl 版本 1.15.x(客户端),尽管我不确定这是否是相关信息。 我试图在k8s文档中找到这个,但找不到权限引用描述,只有一些示例和指南。
提前致谢!
问候,卢多
最佳答案
对于顶级节点
和顶级pod
没有特定的权限。该权限取决于您是否可以获取节点
和获取pod
。如果有获取节点
和获取pod
的权限,那么您应该能够顶级节点
和顶级pod
以及。执行获取节点
或获取pod
的权限是通过kubernetes中的RBAC定义的。
指标服务器只是通过从不同来源(例如 kubelet)收集和聚合不同资源(例如 Pod、节点)的指标来公开这些指标。这就是指标本身没有权限的原因,而是您想要查看指标的资源的权限。
执行 kubectl top pods
时调用的 API 是这样的
GET https://API-SERVER-IP:6443/apis/metrics.k8s.io/v1beta1/namespaces/default/pods
因此,当您定位到默认命名空间时,您只能看到默认命名空间中 pod 的指标。现在是否可以在默认命名空间中获取 Pod 由 RBAC 控制。
关于kubernetes:如何设置 "top node"和 "top pod"权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60042727/