InfluxDB、Grafana 与 influxdata 其它软件,构建性能监控平台

本贴最后更新于 2420 天前,其中的信息可能已经沧海桑田

介绍

Telegraf 类似 agent,可收集系统和服务的统计数据,并写入到 InfluxDB 数据库

InfluxDB 时序数据库

Chronograf web 控制面板

Kapacitor 监控报警,处理时序数据

安装

Downloads

InfluxDB

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.5.2.x86_64.rpm
sudo yum localinstall influxdb-1.5.2.x86_64.rpm

暂不更改 InfluxDB 配置 直接启动

[root@iZ2zecfp183kc1hq3nfk3kZ influxdb]# service influxdb start
Starting influxdb...
influxdb process was started [ OK ]

Telegraf

wget https://dl.influxdata.com/telegraf/releases/telegraf-1.6.1-1.x86_64.rpm
sudo yum localinstall telegraf-1.6.1-1.x86_64.rpm

修改 Telegraf 的 hostname

vi /etc/telegraf/telegraf.conf
hostname = "xxx.xxx.xxx.xxx"
[root@iZ2zecfp183kc1hq3nfk3kZ /]# service telegraf start
Starting the process telegraf [ OK ]
telegraf process was started [ OK ]

Kapacitor

wget https://dl.influxdata.com/kapacitor/releases/kapacitor-1.4.1.x86_64.rpm
sudo yum localinstall kapacitor-1.4.1.x86_64.rpm
[root@iZ2zecfp183kc1hq3nfk3kZ kapacitor]# service kapacitor start

Starting the process kapacitor [ OK ]
kapacitor process was started [ OK ]

Chronograf

web 面板我下载的 windows 版本

https://dl.influxdata.com/chronograf/releases/chronograf-1.4.4.2_windows_amd64.zip
unzip chronograf-1.4.4.2_windows_amd64.zip

直接运行 chronograf.exe 启动

使用

Chronograf 默认监听 8888 端口

访问 http://127.0.0.1:8888

1、 设置 InfluxDb 的 ip+port

influxdbpng

2、 查看当前有 Telegraf 的 Host

hostpng

3、 查看 dashboard
点击 host 和 apps 列下面的 mysql,nginx 可以查看当前的统计面板

systempng

Telegraf 配置

telegraf 已经实现了很多服务的监听,例如常见的 mysql、nginx、apache、redis

nginx 监控

配置 nginx 我们只需要增加 nginx 的配置

vi /etc/telegraf/telegraf.conf
# Read Nginx's basic status information (ngx_http_stub_status_module)
    [[inputs.nginx]]
      ## An array of Nginx stub_status URI to gather stats.
      urls = ["http://localhost/server_status"]
    
      ## Optional TLS Config
      # tls_ca = "/etc/telegraf/ca.pem"
      # tls_cert = "/etc/telegraf/cert.pem"
      # tls_key = "/etc/telegraf/key.pem"
      ## Use TLS but skip chain & host verification
      # insecure_skip_verify = false
    
      ## HTTP response timeout (default: 5s)
      response_timeout = "5s"

当然 nginx 首先要开启 stub_status, 可以通过 nginx -V 查看是否编译 stub_status Module

其它监控

github 中其它的 inputs plugin
https://github.com/influxdata/telegraf/tree/master/plugins/inputs

Kapacitor

Kapacitor 可以监控数据,设置提醒

1、 设置 Kapacitor 服务的 ip+port

2、 设置报警方式,smtp 发送邮件

3、 设置监控任务

png

2png

taskpng

task2png

为了方便测试,设置的数值特别低。面板首页可以看到报警的记录

recordpng

Grafana

Grafana 是一个牛逼的 DashBoard 开源软件 https://grafana.com/

Grafana 可以设置数据源为 InfluxDB,替代 influxdata 中的 Chronograf

grafanapng

nginxpng

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...