作为一名网络工程师/运维工程师,现在都在往DevOps的方向发展。其中大家都不可避免的会往自己开发平台的方向发展。
那么如何将自己制作的 Grafana 面板 引入到自己的平台上?
一般来说,大家都会选择Python来作为自己开发的语言,并会选择Django作为Web应用的开发工具。
在Python中,引入Grafana面板只需要页面嵌入就可以了。
步骤
Grafana-Server端
推荐使用
Grafana-9.x
版本,10和11版本会出现无法滚动屏幕的问题
- 查找
grafana.ini
文件
# find / -name "grafana.ini"
/etc/grafana/grafana.ini
- 编辑
grafana.ini
文件,设置Grafana游客允许访问(只读)
注意,这个操作不安全,但是很方便,作为个人展示demo可以,但不要用到暴露到公网的生产/测试环境中。
# vim /etc/grafana/grafana.ini# 添加以下内容
[auth.anonymous]
# enable anonymous access
enabled = true
org_role = Viewer # 设定游客登录角色为只读
- 继续编辑
grafana.ini
文件,设置Grafana允许用于嵌入
# vim /etc/grafana/grafana.ini# 添加以下内容
[security]
allow_embedding = true
- 重启Grafana进程
自己的Python Web项目端
在对应需要嵌入的页面html上,大概添加是以下这段内容:
python"># 具体的样式可以调整
<div class="panel panel-default" style="margin: 0; border: none; box-shadow: none;"><iframe src="http://x.x.x.x:3000/d/xxxxxxxxx(这个url是grafana dashboard的url,可以通过 分享 获取)" frameborder="0" width="100%" scrolling="No" height="800px" leftmargin="0" topmargin="0"></iframe></div>