目录

系统描述.

开发环境.

开始之前.

安装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

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

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

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

数据库创建成功

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

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

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

保存并退出,执行检查命令::[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

重启influxdb

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

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

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

安装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

登陆web界面:192.168.1.204:3000,用户名和密码都是admin配置数据源

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

首先修改密码:

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

Name: influxdb

Type: InfluxDB 0.8.x

Url: http://localhost:8086

Database: collectd

User: root Password: root

创建仪表板

回到首页,点击Home

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

给图表创建标题

定义查询语句

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

https://influxdb.com/docs/v0.8/api/aggregate_functions.html定义坐标轴

监控内存

监控网卡

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

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

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

FAQ

influxdb的web界面没反应

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

答:关闭防火墙即可

linux 安装监控系统,CentOS7安装性能监控系统相关推荐

  1. 安装部署 —— CentOS6/CentOS7 安装配置mysql 5.7

    本文记录下使用CentOS6.5 和7 使用yum安装mysql的过程&一些常见问题 CentOS7 安装MySQL8:CentOS7安装MySQL8.0图文教程_闰土的猹猹君的博客-CSDN ...

  2. Win10双系统CentOS7安装完无法启动Win10的解决方法

    有部分用户由于工作需要在 Win10系统下载安装CentOS7系统组成双系统,不过发现在安装好CentOS7系统后,Win10系统无法启动,无法加载,那么如何处理呢? 安装CentOS 7的时候,并没 ...

  3. linux设置docker自动启动,CentOS7安装Docker配置服务端和容器自启动

    接上一篇,在VirtualBox上安装配置好了CentOS7,继续在这个虚拟机上装好docker并总结一下使用到的常用功能. 安装Docker 安装直接参考官网来安装就OK,没有遇到什么问题,值得注意 ...

  4. linux es数据库 head,centos7安装Elasticsearch及Es-head插件详细教程(图文)

    懒惰了很久,今天来写一下Elasticsearch在centos7上安装教程以及安装过程中可能出现的报错解决方式,有不对的地方,烦请各位看官多多指教! 一.ES安装 1.环境检查 确保有java环境, ...

  5. Linux环境搭建:CentOS7安装Oracle

    CentOS7 安装Oracle 11.2.0 材料 [root@bogon yum.repos.d]# rpm -qi centos-release Name : centos-release Ve ...

  6. Linux如何打开cp2k,centos7安装并行版cp2k6.1-POPT

    centos7安装并行版cp2k6.1-POPT centos7安装并行版cp2k6.1-POPT 一.环境介绍 系统:Centos7.6 所需软件包:cp2k-6.1.tar.bz2,libint- ...

  7. linux dhcp 服务失败,Centos7安装及配置DHCP服务,安装程序配置服务失败

    Centos7安装及配置DHCP服务,安装程序配置服务失败 DHCP服务概述: 名称:DHCP  - Dynamic Host Configuration Protocol  动态主机配置协议. 功能 ...

  8. linux oracle swd.oui,centos7安装oracle11g报错,请问怎么解?

    centos7安装oracle11g报错,请问怎么解? 在centos7下安装oracle11g到85%时报错提示Error in invoking target 'install' of makef ...

  9. centos7 安装mysql php,Centos7安装mysql与php的方法

    本文主要和大家分享Centos7安装mysql与php的方法,希望能帮助到大家. 相关mysql视频教程推荐:<mysql教程> 官网下载安装mysql-server 依次使用下面三个命令 ...

  10. 安装oracle12c之前,centos7安装oracle12c数据库的坑

    写下这篇文章时候,我刚刚看到这个页面: 除了心累,还叹了口气. 因为之前没有接触过oracle数据库,而且我linux其实也是比较菜的.尽管搜索了种种教程,但是踩坑不断.我现在可能细数不过来,有多少坑 ...

最新文章

  1. 敏捷开发之道(二)极限编程XP
  2. Android设置Settings:预读取设置的选项和更新设置结果【2】
  3. jpg图片转eps 用于LaTeX
  4. MATLAB实战系列(十九)-遗传算法解决TSP(旅行商)问题-应用及解析(文末附MATLAB源码)
  5. 设计模式C++实现(10)——桥接模式
  6. iTerm2 的配置与美化
  7. JAVA 封装的简单运用
  8. spring boot 报错
  9. 消息队列技术终结者(一)—通俗深刻地认识JMS(即Java Message Service)
  10. matlab如何分解矩阵,Matlab中矩阵的分解
  11. 手把手教你搭建FastDFS集群(中)
  12. Oracle下载及安装超详细教程
  13. 软考试题希赛网爬取过程分享二
  14. 嵌入式单片机高级篇(一)Stm32F103电容触摸按键
  15. 趣头条自媒体审核不过怎么办,趣头条伪原创工具教程
  16. Python学习17(GUI图形用户界面编程)
  17. Codevs 3100 蜗牛的旅行
  18. bert常用基准数据集:GLUE数据集介绍以及数据集资源
  19. 【洛谷】P3957 [NOIP2017 普及组] 跳房子
  20. 内网穿透保姆级教程——内网穿透建立个人网站、远程控制

热门文章

  1. 2017.4.16 车站 思考记录
  2. 南京航空航天大学计算机网课,南京航空航天大学课程教学大纲-南京航空航天大学计算机科学与技术(9页)-原创力文档...
  3. php滚动图代码,JS上下、左右滚动代码(支持图片滚动)
  4. Django中使用Celery(附赠代码)
  5. IDEA 点击进入方法内部_一份最详细的 IDEA调试教程,让bug无处藏身!
  6. PyCharm编辑器的安装
  7. nginx 启动命令_Windows环境下将Nginx安装到服务中的方法
  8. Predicate函数式接口
  9. Office web apps 服务器运行一段时间之后CPU就是达到100%
  10. 用python写网络爬虫 -从零开始 4 用正则表达式 编写链接爬虫