VPS/云主机等
优惠信息分享

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台

如果你想在宝塔面板的环境下搭建Smokeping,还是有点难度的。不过好在,我们还可以利用Grafana,因为提供了docker版本,所以在宝塔环境下搭建和部署都简单了不少。

Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。

这篇文章就来介绍下,宝塔面板面板环境下利用Dockr、Grafana、InfluxDB、Telegraf搭建VPS网络线路监控平台~~~,文章可能复杂点也稍微有点长,请耐心看完~~~

1、简介

官网:https://grafana.com/

安装:https://grafana.com/docs/grafana/latest/installation/rpm/

docker安装:https://grafana.com/docs/grafana/latest/installation/docker/

2、准备

因为是在宝塔环境下安装,所以宝塔面板必不可少:

1)宝塔面板最新版本(宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV9ub2NxdmI=

2)docker管理器

宝塔安装docker管理器,请在软件商店中搜索安装,这里略过~~

3)docker-compose

安装这个有很多方法,这里推荐一个。

pip install docker-compose

如果提示:pip: command not found:解决如下:

wget https://bootstrap.pypa.io/get-pip.pypython get-pip.pypip -V  #查看pip版本

接下来就可以随便pip安装东西了~~

3、部署

1)新建docker-compose.yml

mkdir -p /opt/pingmonitor && cd /opt/pingmonitor && vi docker-compose.yml

2)新建后,写入如下配置

[reply]

volumes:     grafana-data:    influxdb-data:services:     grafana:        image: grafana/grafana        container_name: grafana        environment:- GF_AUTH_ANONYMOUS_ENABLED=true        ports:- 3000:3000        volumes:- grafana-data:/var/lib/grafana        restart: unless-stopped    influxdb:        image: influxdb        container_name: influxdb        environment: - INFLUXDB_HTTP_AUTH_ENABLED=true- INFLUXDB_DB=telegraf- INFLUXDB_ADMIN_USER=admin- INFLUXDB_ADMIN_PASSWORD=password- INFLUXDB_USER=telegraf- INFLUXDB_USER_PASSWORD=password        ports:- 8086:8086        volumes: - influxdb-data:/var/lib/influxdb        restart: unless-stopped

[/reply]

注意:

1.GF_AUTH_ANONYMOUS_ENABLED是方便公开你的仪表板给别人访问。

2.INFLUXDB_ADMIN_PASSWORD设置HTTP身份验证的账号密码。

3.INFLUXDB_USER_PASSWORD设置数据库用户的密码。

3)运行docker

以上设置确认无误后up起来即可:

docker-compose up -d

4)访问你的IP:3000打开Grafana,默认的管理员账号密码均是admin

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图

初次登录会提示你修改密码,可以选择skip~~~

4、添加数据源

1)添加InfluxDB数据源。

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图1

注意:

URL:http://infuluxdb:8086

2)勾上BasicAuth并填写INFLUXDB的HTTP身份验证的账号密码:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图2

3)填写数据库信息

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图3

之后保存并测试,如果显示Data source is working 表示配置成功~~

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图4

5、客户端添加Telegraf

接下来在每台需要监控的VPS上安装Telegraf,Telegraf是用于监控主机系统的,不建议使用Docker安装,所以这里采用添加源的方式安装在每台机器上:

1)ubuntu安装如下:

apt -y update && apt -y install apt-transport-https wget gnupgwget -qO- https://repos.influxdata.com/influxdb.key | apt-key add -echo "deb https://repos.influxdata.com/debian buster stable" | tee /etc/apt/sources.list.d/influxdb.listapt -y updateapt -y install telegraf

2)centos安装如下:

使用yum软件包管理器安装Telegraf的最新稳定版本:

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo[influxdb]name = InfluxDB Repository - RHEL \$releaseverbaseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stableenabled = 1gpgcheck = 1gpgkey = https://repos.influxdata.com/influxdb.keyEOF

将存储库添加到yum配置后,通过运行以下命令安装并启动Telegraf服务:

sudo yum install telegrafsudo service telegraf start

如果你的操作系统使用systemd(CentOS 7 +,RHEL 7+):

sudo yum install telegrafsudo systemctl start telegraf

3)其他系统请参考官方文档

https://docs.influxdata.com/telegraf/v1.14/introduction/installation/

4)编辑telegraf的主配置文件

vi /etc/telegraf/telegraf.conf

注意:宝塔面板用户可以直接在面板中编辑该文件~~~

打开后把以下配置代码复制粘贴进去~~

[[outputs.influxdb]]  urls = ["http://服务器IP:8086"]  database = "telegraf"  username = "admin"  password = "password"

注意:

  • 服务器IP是搭建InfluxDB机器的公网IP,
  • 这里的账号和密码不是数据库的而是InfluxDB的HTTP身份验证账号密码
  • 如果不知道修改哪里,请看截图:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图5

5)接下来新建一个监控项目的配置文件

vi /etc/telegraf/telegraf.d/ping.conf

注意:宝塔用户,可以直接在这个目录新建该文件

文件新建好后,写入如下配置:

[agent]  interval = "20s"  flush_interval = "20s"  hostname = "瓦工"[[inputs.ping]]  urls = ["219.148.253.57","58.49.233.254","183.56.167.125","60.16.96.1","103.38.43.1","122.194.47.117","211.137.47.109","117.174.59.1","120.237.53.17"]  count = 5  ping_interval = 1.0  timeout = 1.0

注意:

1.注意修改hostname用于区分不同的机器。

2.测试IP都来自ipip.net的路由追踪~

6)ipip.net的路由追踪,每个IP的地理位置,可能会有少许变化请根据需要修改~

辽宁沈阳电信219.148.253.57湖北武汉电信58.49.233.254广东深圳电信183.56.167.125辽宁沈阳联通60.16.96.1湖南长沙联通103.38.43.1江苏镇江联通122.194.47.117辽宁沈阳移动211.137.47.109四川德阳移动117.174.59.1广东茂名移动120.237.53.17

7)配置好了后启动重启telegraf/设置开机自启:

systemctl restart telegraf.servicesystemctl enable telegraf.service

6、配置仪表盘

客户端配置好就可以回到Grafana就可以新建仪表板了,由于没有现成的模板,这里只能自己手动创建一个了。

1)新建仪表盘

这个略过了,登录后首页就有,先是新建数据源,下面就是新建仪表盘~~

2)先来绘制PING值数据,按照下图的方式先把SQL查询语句构造出来,具体看图:(这里先添加一个电信的数据)

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图6

3)图表这块选择Settings(先从这里开始,设置该面板的标题和描述:)

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图7

4)Visualization,可以选择一个直接喜欢的图表样式

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图8

5)Display这里选择Lines,Null value选择connected:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图9

6)Axes:Left Y的单位选择ms:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图10

7)Legend勾选Avg显示出平均值:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图11

8)其他的可以根据自己的需求改,差不多保存就可以了。

7、复制面板

1)接下来绘制标准差,之前已经创建好了一个面板,所以这次我们就可以直接偷懒复制出一个面板:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图12

2)复制好之后,点击edit,开始编辑,只需要把SELECT修改为field (standard_deviation_ms)即可:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图13

其他的可以和之前的保持一致。

3)最后再来绘制一个丢包率,还是按照之前的老套路复制一个面板出来,把SQL查询语句改为 (percent_packet_loss)即可。

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图14

4)Axes中的Left Y的单位改为percent(0-100):

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图15

5)不同的主机还是按照之前的套路复制一个面板出来,更改一下SQL查询语句内的Host就能展现出数据了:

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图16

8、效果

效果展示还是很不错的。

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图17

9、设置域名访问

用宝塔的话设置域名访问就很方便了。

宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台插图18

10、最后

如果这样来监控vps线路质量的话,效果是非常不错的,唯一的就是设置麻烦点,不过我们设置好一个就可以套用模板一直复制来解决,所以整体来说体验还是很好的。

使用宝塔环境来安装的最大优点就是,我们安装这个之外,还可以用来做别的,而且宝塔可以可视化编辑文件,相对来说,更简单一点。

以上教程只演示了电信和移动的线路,其他线路请按照教程自行添加~~~~~~

赞(0)
未经允许不得转载:遗弃你|YIQINI.COM » 宝塔面板+Docker+Grafana+InfluxDB+Telegraf搭建VPS网络线路监控平台

评论 抢沙发

评论前必须登录!

 

登录

找回密码

注册