zoukankan      html  css  js  c++  java
  • CentOS7安装性能监控系统

    目录

    系统描述.

    开发环境.

    开始之前.

    安装influxdb数据库.

    安装collectd

    安装Grafana

    FAQ

          influxdb的web界面没反应.

     

    系统描述

    想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的:

    采集数据(collectd)-> 存储数据(InfluxDB) -> 显示数据(Grafana)。

    • InfluxDB 是用Go 语言开发的一个开源分布式时序数据库,非常适合存储指标、事件、分析等数据
    • collectd  是用C 语言写的一个系统性能采集工具;
    • Grafana  是纯 Javascript 开发的前端工具,用于访问 InfluxDB,自定义报表、显示图表等。

     

    开发环境

    系统版本信息

    Linux version 3.10.0-123.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) )

    按照Centos7 最小化模式安装

    使用软件版本

    Collectd:collectd-5.5.0-2.el7.x86_64

    Influxdb:influxdb-0.8.8-1.x86_64

    Garfana:grafana-2.0.2-1.x86_64

     

    开始之前

    关闭selinux:

    [root@localhost ~]# vi /etc/selinux/config

    将SELINUX=enforcing修改为SELINUX=disabled

    校准时间:

    设定为上海时区

    [root@localhost log]# timedatectl set-timezone Asia/Shanghai

    同步时间

    [root@localhost log]# /usr/sbin/ntpdate time.nist.gov

    注:

    我自己写了一个比较粗糙的一键安装三个软件的脚本,github地址:

    https://github.com/Kylinlin/install_performance_monitor_automatically

     

    安装influxdb数据库

    从该网址下载软件:https://s3.amazonaws.com/influxdb/influxdb-0.8.8-1.x86_64.rpm

    解压安装

    [root@localhost ~]# rpm -ivh influxdb-0.8.8-1.x86_64.rpm

    关闭防火墙:

    [root@localhost ~]# systemctl stop firewalld.service

    在防火墙中添加端口:

    [root@localhost ~]# firewall-cmd --zone=public --add-port=8083/tcp --permanent (添加5666端口)

    [root@localhost ~]# firewall-cmd --reload (重启防火墙)

    启动该进程:

    [root@localhost ~]# /etc/init.d/influxdb start

    1

    注意,必须出现红色方框内的字体才表示安装并且启动成功

    打开浏览器,输入地址http://192.168.1.204:8083/,可以看到启动后的画面,登陆名和密码默认都是root

    2

    创建数据库:输入数据库名称collectd,然后点击Create Database按钮

    3

    4

    数据库创建成功

    influxdb的配置文件的位置:/opt/influxdb/shared/config.toml

     

    安装collectd

    从这里下载软件:

    http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

    安装:

    [root@slave204 tmp]# rpm –ivh epel-release-7-5.noarch.rpm

    [root@slave204 tmp]# yum install collectd –y

    collectd的配置文件为/etc/collectd.conf,其执行文件位于/usr/sbin/collectd

    首先备份配置文件

    [root@slave204 tmp]# cp /etc/collectd.conf /etc/collectd.conf_backup

    然后修改配置文件:[root@localhost ~]# vi /etc/collectd.conf

    首先去掉如下注释,并修改Hostname

    5

    再去掉LoadPlugin network 和 LoadPlugin uptime前面的#

    并在Plugin Configuration下面添加一个配置项

    6

    保存并退出,执行检查命令::[root@localhost etc]# /usr/sbin/collectd –t

    如果没有任何输出,则说明配置正确

    启动:[root@localhost etc]# systemctl start collectd.service

    把collectd的数据存放到influxdb中

    首先备份influxdb的配置文件

    [root@slave204 tmp]# cp /opt/influxdb/shared/config.toml /opt/influxdb/shared/config.toml_backup

    然后修改配置文件中的[input_plugins.collectd]配置成如下:

    [root@slave204 tmp]# vim /opt/influxdb/shared/config.toml

    7

    重启influxdb

    [root@slave204 tmp]# /etc/init.d/influxdb restart

    刷新influxdb的web界面,进入collectd的数据库

    8

    9

    查看内存使用结果:select * from "influxdb/memory/memory-used"

    10

     

     

     

    安装Grafana

    下载安装包:

    https://grafanarel.s3.amazonaws.com/builds/grafana-2.0.2-1.x86_64.rpm

    [root@localhost ~]# yum install initscripts fontconfig -y

    [root@slave204 tmp]# rpm -ivh grafana-2.0.2-1.x86_64.rpm

    设置开机启动

    [root@slave204 tmp]# systemctl daemon-reload

    启动grafana服务器

    [root@slave204 tmp]# systemctl start grafana-server

    检查启动状态是否成功

    [root@slave204 tmp]# systemctl status grafana-server

    11

    登陆web界面:192.168.1.204:3000,用户名和密码都是admin

    配置数据源

    登陆后看到一片空白,通过点击图标进行所有的配置

    13

    首先修改密码:

    14

    把数据库的数据导入到granfa里,全部按照如下进行配置:

    Name: influxdb

    Type: InfluxDB 0.8.x

    Url: http://localhost:8086

    Database: collectd

    User: root Password: root

    15

    创建仪表板

    回到首页,点击Home

    16

    17

    18

    19

    上面已经创建了一个空白的仪表板,现在往仪表板中添加监视元素

    监控CPU空闲率

    给图表创建标题

    图片1

    定义查询语句

    图片2

    上图中的derivative函数的具体定义参考这里:

    https://influxdb.com/docs/v0.8/api/aggregate_functions.html

    定义坐标轴

    图片3

    监控内存

    图片4

    监控网卡

    定义图表显示的内容(series的可用值就是在influxdb的web界面执行list series后显示的内容),可以重复点击Add query来添加内容:

    23

    注意这里有多个网卡,首先确认你系统的网卡再做选择

    24

    在创建完之后,点击Back to dashboard返回首页

    25

     

    FAQ

    influxdb的web界面没反应

    安装了influxdb后,登陆了web界面,输入了用户名和密码之后点击Connect按钮没有反应。

    答:关闭防火墙即可

  • 相关阅读:
    Linux性能监测:CPU篇
    Linux性能监测:监测目的与工具介绍
    敏捷开发学习笔记
    Sonar+Hudson+Maven构建系列之三:安装Hudson
    Sonar+Hudson+Maven构建系列之二:迁移Sonar
    Sonar+Hudson+Maven构建系列之一:安装Sonar
    nohup之no hang up, kill, ps -ef, ps aux, grep
    Sonar相关资料
    自动、手动同步FishEye, JIRA的联系人信息
    SOAPFaultException
  • 原文地址:https://www.cnblogs.com/kylinlin/p/4692073.html
Copyright © 2011-2022 走看看