暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

grafana的反向代理

爱可可的人生记录仪 2019-08-03
2984

大佬:可可,我们的大屏好像挂了,没有数据和图像显示了,你尽快处理一下,老板要看的。

可可:老大,收到。


我们的大屏就是一个led屏,显示的是grafana的图像,数据来源是zabbix的监控数据。grafana是一款可视化的工具,简单的来说,可以凸显图像的逼格,一般用来展示给领导看。

大屏挂了,说明grafana出问题了。因为之前zabbix做了反响代理,grafana和zabbix是在一台服务器上的,大屏还是用的旧的grafana的地址,当然无法显示了。这个问题简单,做一下grafana的反向代理即可。

    vi usr/local/nginx/conf.d/zabbix.keke.com.conf
    server {
    listen 80;
    server_name zabbix.keke.com;
    }
    location grafana/ {
    proxy_pass http://172.16.2.2:3000/;
    }
    nginx -s reload
    复制

    但是当我打开http://zabbix.keke.com/grafana,却没有出现想当然的结果,nginx日志报了大量的404,nginx的配置应该不可能有问题,应该是grafana的问题了,去官网看了一下,grafana有专门的反向代理配置,在配置文件加如下两行就行了。

      vi etc/grafana/grafana.ini
      domain = zabbix.keke.com
      root_url=%(protocol)s://%(domain)s:%(http_port)s/grafana
      复制

      重启grafana后,打开网址,出现了熟悉的界面,多少还是有点兴奋的。

      但是,因为zabbix的url换了,还是没有数据,只要把data source换成新的zabbix地址就行了。但是当我test的时候,又出现了一个神奇的错误。

      zabbix api plugin error:attempt ip is too long。

      zabbix允许的请求ip长度最大为39bytes,但nginx过去的请求是48bytes,超过了允许的长度。修改zabbix的api难度较大,也不现实。想着从nginx入手,找了半天也没找到限制ip大小的功能。但是,我发现zabbix的反向代理配置了,获取用户的真实ip,极有可能是因为这个功能导致请求的ip过大,取消如下配置后,成功解决问题。



        #proxy_set_header Host $host;
        #proxy_set_header X-Real-IP $remote_addr;
        #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        复制



        熟悉的大屏界面也回来了,问题成功解决,好了,今天就到此为止。至于为什么,我就不细讲了,因为我也不知道。

        文章转载自爱可可的人生记录仪,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论