Azure环境下Grafana监控K8s服务:登录及指标导入问题求助
问题解答
1. Grafana登录及Azure Monitor指标导入步骤
1.1 获取Grafana管理员凭证并登录
kube-prometheus-stack安装的Grafana默认生成管理员账户,密码存储在Kubernetes Secret中,操作步骤如下:
- 列出Prometheus命名空间下的Secret,定位Grafana相关的Secret:
Secret名称通常为kubectl get secrets -n Prometheus<release-name>-grafana,若使用默认发布名,一般是kube-prometheus-stack-grafana - 提取管理员密码:
管理员用户名默认是kubectl get secret <grafana-secret-name> -n Prometheus -o jsonpath='{.data.admin-password}' | base64 -dadmin,使用该用户名和提取出的密码即可登录localhost:9090的Grafana界面。
1.2 导入Azure Monitor指标到Grafana仪表盘
步骤1:添加Azure Monitor数据源
- 登录Grafana后,点击左侧菜单栏「Configuration」→「Data sources」→「Add data source」
- 在数据源列表中选择「Azure Monitor」,进入配置页面:
- 服务主体方式(通用场景):
- 在Azure门户创建服务主体(Service Principal),并为其分配「Monitoring Reader」角色(权限范围可设为订阅或目标资源组)
- 在Grafana配置页填写:
- Tenant ID:Azure租户ID
- Client ID:服务主体的应用ID
- Client Secret:服务主体的密钥
- Azure Cloud:选择对应云环境(如Azure Public Cloud)
- 点击「Save & test」验证连接是否成功
- 托管标识方式(Azure AKS场景):
若Grafana部署在Azure AKS集群,可使用托管标识:- 为Grafana的Kubernetes Service Account绑定Azure托管标识,并分配「Monitoring Reader」角色
- 在Grafana配置页选择「Authentication method」为「Managed Identity」,填写租户ID后保存测试连接
- 服务主体方式(通用场景):
步骤2:导入/创建Azure Monitor仪表盘
- 导入官方仪表盘:点击左侧菜单栏「Create」→「Import」,输入Azure Monitor相关仪表盘ID(例如Azure VM监控仪表盘ID
10956),选择已配置的Azure Monitor数据源,完成导入 - 自定义面板:若需要特定指标,创建新面板后选择Azure Monitor数据源,在查询编辑器中选择对应资源类型、指标名称、聚合方式等,配置完成后保存面板到仪表盘
2. RBAC及服务主体相关说明
- Grafana登录本身:默认使用内置admin账户登录,无需额外配置Kubernetes RBAC。仅当你配置Grafana使用Kubernetes OAuth作为登录方式时,才需要配置对应的Kubernetes RBAC规则,允许用户/服务账户访问Grafana认证接口。
- 访问Azure Monitor指标:必须通过服务主体或托管标识获取Azure侧权限,需为其分配Azure RBAC角色(如「Monitoring Reader」),否则无法读取Azure Monitor指标数据。这部分是Azure的RBAC配置,与Kubernetes RBAC无关。
注:你之前的Helm命令存在拼写和格式错误,正确命令应为:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo update helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack -n Prometheus --create-namespace
内容的提问来源于stack exchange,提问作者lorn
相关产品推荐
相关产品推荐

