kubernetes:如何设置 "top node" 和 "top pod" 权限?
kubernetes: how to set "top node" and "top pod" permissions?
希望得到一些指点,我有一个问题:我需要向拥有 Clusterrole:view 的用户添加什么 role/permissions 才能让该用户使用 'top node' 和 'top pod' kubectl 中的命令?我们在 1.15.7 集群 (AKS) 上使用 kubectl 版本 1.15.x(客户端),但我不确定这是否是相关信息。
我试图在 k8s 文档中找到这个,但找不到权限参考描述,只有一些示例和指南。
提前致谢!
此致,Ludo
top node
和 top pod
没有特定权限。权限是看你能不能做get nodes
和get pods
。如果允许执行 get nodes
和 get pods
,那么您也应该能够执行 top nodes
和 top pods
。执行 get nodes
或 get pods
的权限是通过 kubernetes 中的 RBAC 定义的。
指标服务器只是通过收集和聚合来自不同来源(例如 kubelet)的指标来公开 pods、节点等不同资源的指标。这就是指标本身没有权限的原因,而权限是针对您要查看指标的资源。
当您执行 kubectl top pods
时调用的 API 是这个
GET https://API-SERVER-IP:6443/apis/metrics.k8s.io/v1beta1/namespaces/default/pods
因此,当您定位到默认命名空间时,您只能在默认命名空间中看到 pods 的指标。现在是否可以在默认命名空间中获取 pods 由 RBAC 管理。
希望得到一些指点,我有一个问题:我需要向拥有 Clusterrole:view 的用户添加什么 role/permissions 才能让该用户使用 'top node' 和 'top pod' kubectl 中的命令?我们在 1.15.7 集群 (AKS) 上使用 kubectl 版本 1.15.x(客户端),但我不确定这是否是相关信息。 我试图在 k8s 文档中找到这个,但找不到权限参考描述,只有一些示例和指南。
提前致谢!
此致,Ludo
top node
和 top pod
没有特定权限。权限是看你能不能做get nodes
和get pods
。如果允许执行 get nodes
和 get pods
,那么您也应该能够执行 top nodes
和 top pods
。执行 get nodes
或 get pods
的权限是通过 kubernetes 中的 RBAC 定义的。
指标服务器只是通过收集和聚合来自不同来源(例如 kubelet)的指标来公开 pods、节点等不同资源的指标。这就是指标本身没有权限的原因,而权限是针对您要查看指标的资源。
当您执行 kubectl top pods
时调用的 API 是这个
GET https://API-SERVER-IP:6443/apis/metrics.k8s.io/v1beta1/namespaces/default/pods
因此,当您定位到默认命名空间时,您只能在默认命名空间中看到 pods 的指标。现在是否可以在默认命名空间中获取 pods 由 RBAC 管理。