阿里云容器服务的用户,在使用云监控接入中心的数据接入能力时,需要授予云监控服务针对集群资源的管理权限。管控面授权只在管控行为发生时生效,用户可以在管控结束后回收相关授权,不会影响数据面的数据采集行为。回收方式参考:配置禁止云产品访问ACK集群的权限。
权限说明
服务角色名称:AliyunCmsIntegrationForCSRole。
权限授权分为 OpenAPI 权限和集群内 ClusterRole 权限。前者用于云监控服务获取目标集群的链接授权。后者用于云监控服务向集群交付各类数据采集探针、采集配置资源。
阿里云 OpenAPI 权限
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cs:DescribeClusterInnerServiceKubeconfig",
"adcp:GrantUserPermission",
"adcp:DescribeHubClusterKubeconfig"
],
"Resource": "*"
}
]
}集群内 ClusterRole 权限
云监控管控服务在交付探针时,需要使用如下 ClusterRole 创建探针所需要的资源集合。创建完成后 ClusterRole 可以由用户回收。
创建资源通常只会存在于以下命名空间:
arms-prom、kube-system、cms-prom。
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: cloudmonitor-cms-integrationforcs-clusterrole
rules:
# 自定义 API 组(允许所有资源和操作),用于交付可观测扩展配置资源
- apiGroups:
- vector.oam.dev
- o11y.aliyun.dev
- monitoring.coreos.com
- monitor.aliyun.com
- log.alibabacloud.com
- telemetry.alibabacloud.com
resources:
- '*'
verbs:
- '*'
# Exporter 工作负载交付所需资源,用于交付探针工作负载
- apiGroups: [""]
resources:
- services
- configmaps
- serviceaccounts
- namespaces
- events
- secrets
verbs:
- '*'
# 应用资源(所有操作),用于交付探针工作负载
- apiGroups: [apps, extensions]
resources:
- deployments
- daemonsets
- statefulsets
verbs:
- '*'
# 网络发现资源,用于服务发现检查
- apiGroups: [discovery.k8s.io]
resources:
- endpointslices
verbs:
- get
- list
- apiGroups: [""]
resources:
- node
- pods
- endpoints
- services/proxy
verbs:
- get
- list
# API 扩展资源,用于安装可观测相关扩展 CRD
- apiGroups: [apiextensions.k8s.io]
resources:
- customresourcedefinitions
verbs:
- create
- list
- get
# RBAC 资源, 用于创建探针需要的 RBAC 资源创建
- apiGroups: [rbac.authorization.k8s.io]
resources:
- rolebindings
- roles
- clusterroles
- clusterrolebindings
verbs:
- create
- list
- get相关文档
云监控在对容器集群进行观测时,也需要涉及数据面相关权限,具体可参考容器集群面向云监控数据采集权限说明。
该文章对您有帮助吗?