Grafana 配置管理
Grafana 配置可来自 grafana.ini、环境变量、Helm values 与 Provisioning 文件。优先使用部署平台的声明式配置,避免生产环境直接修改容器内部文件。
1. grafana.ini 与 Server 配置
grafana.ini
[server]
protocol = http
http_addr = 127.0.0.1
http_port = 3000
domain = grafana.example.com
root_url = https://grafana.example.com
[security]
allow_embedding = false
[users]
allow_sign_up = false
TLS 通常由反向代理终止。若 Grafana 位于 /grafana/ 子路径,root_url 与 serve_from_sub_path 必须一致,否则登录回调、资源加载和分享链接会失效。
2. Database 配置
SQLite 适合单实例实验;生产多副本使用 MySQL 或 PostgreSQL。数据库连接密码应由 Secret 或受控环境变量提供,数据库本身要纳入备份、监控、权限和升级治理。
[database]
type = postgres
host = postgres.monitoring.svc:5432
name = grafana
user = grafana
ssl_mode = require
3. Authentication 配置
生产环境优先 LDAP、OAuth/OIDC 或企业 SSO,并将外部群组映射到 Grafana Team。认证配置需要明确回调地址、可信域、组映射、管理员角色和离职回收流程。不要长期依赖共享的本地 Admin 账号。
4. 配置最佳实践
- 禁用匿名访问和自助注册,展示型大屏需单独隔离。
- 固定 Grafana 与插件版本,不使用不受控的
latest。 - 把数据源与 Dashboard Provisioning 文件纳入 Git,密钥由 Secret 提供。
- 限制管理 API、插件安装和数据源变更权限。
- 每次变更后验证 SSO、数据源、关键 Dashboard 与告警通知。