服务器监控Cacti

 在企业网络运维过程当中,管理员必须时刻关注服务器的运行状态,如CPU、内存、磁盘空间使用状况等。为了可以及时的发现问题,尽可能减小故障的发生。当网络中的设备,服务器等数量较多时,能够部署一套监控系统来实时跟踪服务器,咱们一般会借助一些软件来实现。今天就以Cacti套件为例,介绍服务器集中监测体系的构建和使用。php

cacti服务器监控系统与windows操做系统中的“性能监视器”属于同一类,都是为了监控cpu占用,内存使用,运行进程数,磁盘空间,网卡流量等各类数据。但不一样的是,cacti不只能够监控linux,也能够监控windows服务器,路由器,交换机等网络设备,主要基于snmp协议来搜集数据。Cacti自己是一个web界面的软件,经过调用net-snmp工具来采集检测数据,并结合RRDtool(轮询数据库工具)记录数据并绘制图片,最终以web页面展现给管理员用户。cacti须要运行在lamp平台上,配置简单,直观,并且支持插件和数据模板,可扩展其功能。下面给你们介绍搭建的过程。mysql

工做原理:linux

Cacti能够从逻辑上分为三个部分、第一部分:被检测的对象,也就是客户端。第二部分:检测平台,也就是服务器端。第三部分:管理平台。Cacti采用了两种结构实现功能,一种是C/S结构主要是实现服务器到客户端监控另一种就是B/S主要完成对Cacti平台的管理,从下图咱们能够看出,管理端是在Web上对Cacti进行管理。web

简单的整理一下Cacti的工做过程sql

首先经过LAMP平台部署Cacti监控工具,以后经过客户端的web登陆Cacti进行对其余客户端的设置,能够从下图看到Cacti采集数据时必需要使用SNMP协议来链接客户端进而可以采集数据,也就是说客户端必须支持SNMP协议,监控以后经过RRDtool来生成图表。数据库

Cacti工做原理示意图:windows

2018-02-04_220644.png

实验环境:浏览器

一台Cacti服务器、一台MySQL服务器、一台客户机服务器

2018-02-04_223932.png

1、服务器配置(主控端——Cacti)网络

  1. 安装支持软件

(1)构建数据库及web平台

2018-02-04_221627.png

编写一个PHP测试页

2018-02-03_210257.png

2018-02-03_210327.png

2018-02-03_210341.png

(2)安装net-snmp-utils软件包

Cacti平台经过snmp协议采集检测数据,这些工具程序由net-snmp-utils软件包提供

2018-02-04_222059.png

(3)安装rrdtool软件包

首先安装相关的软件包

2018-02-04_222516.png

安装rrdtool源码包

2018-02-04_223048.png

2.部署Cacti、设置数据库链接

(1)部署Cacti源码包

将下载的Cacti源码包释放至Web服务器的网页目录

2018-02-04_223509.png

 添加一个用来读写监测数据的用户帐号,并调整目录的属主,以便正常读取及写入数据

2018-02-04_223829.png

(2)创建数据库、表结构

先建立用于Cacti监测平台的数据库,并授予一个数据库用户,而后使用Cacti源码目录下的Cacti.sql脚本,导入预设的各类数据表

2018-02-03_210450.png


2018-02-03_210532.png


2018-02-03_210756.png


2018-02-03_210655.png

(3)调整Cacti配置文件

Cacti的配置文件位于源码目录中的include/文件夹下,名称为config.php。要使Cacti系统可以正确访问并使用数据库,必须修改config.php文件,确保数据库链接参数正确无误。

2018-02-03_210831.png


$database_type = "mysql";                             //指定链接的类型

$database_default = "cacti";                          //链接的库

$database_hostname = "localhost";            //登陆源

$database_username = "cacti";                    //用户名

$database_password = "cacti";                    //用户密码

$database_port = "3306";                             //链接的端口

$database_ssl = false;                                    //不启用ssl

$url_path = "/";                                              //指定cacti的根目录,这个目录是cacti的文件目录下,咱们后面还须要修改httpd的主配置文件。


2018-02-03_210930.png

3.Cacti的初始化安装

(1)调整httpd配置

修改httpd服务的主配置文件,设置好网站根目录,默认首页,默认字符集等,而后从新加载httpd服务

2018-02-03_211033.png

2018-02-03_211429.png

2018-02-03_211408.png

2018-02-03_211351.png

2018-02-03_211336.png

2018-02-03_211255.png

2018-02-03_211208.png

2018-02-03_211115.png


2018-02-03_211521.png

(2)初始化Cacti系统

在浏览器中输入http://192.168.1.1,而后根据提示安装

2018-02-04_225355.png


2018-02-04_225419.png


2018-02-04_225503.png

2018-02-04_225520.png


2018-02-04_225600.png

到此为止服务器配置完成了,下面开始配置一台linux客户端(mysql192.168.1.2),而后使用cacti监控客户端

2、配置客户端(被控端——snmpd)

不管是路由器、交换机、仍是linux或windows服务器,只要正确支持SNMP协议,并容许Client服务器采集数据,就可以对其进行监测。下面仅介绍在linux服务器中启用SNMP支持并设置共同体名的简单方法。

         ps:共同体名,值的是一种验证机制,全部的client都必须使用同一个共同体名,就像咱们以前学习的hsrp的组同样,只有组号相同才能是一个组的,这里也是如此,只有共同体名相同的时候,Cacti才能经过这个共同体名对client进行监控。

         须要安装net-snmp、lm_sensors软件包,而后经过修改其配置文件/etc/snmp/snmpd.conf,并启动snmpd服务,并创建规则,默认监听UDP的161号端口。

2018-02-04_230313.png

修改配置文件

2018-02-04_230449.png

2018-02-03_211657.png

2018-02-03_211756.png

2018-02-03_211833.png


第41行 192.168.1.1指的是Cacti的服务器IP(默认是default),表示容许其查询本机数据,public指的就是共同体名,用来识别及验证

第62行  all表示开放全部的SNMP查询权限(默认是 SystemView)

第85行   去掉注释以后,以便支持各类查询。


2018-02-03_212006.png


2018-02-04_230836.png

3、使用Cacti的Web控制台(下面以5个部分说明)

l  登陆Web控制台

l  添加被控设备/主机,设置监控项目

l  生成监测图像

l  按期采集监测数据

l  查看监测结果

一、登陆web控制台

在浏览器中输入http://192.168.1.1,输入用户名和密码登陆,默认都是admin

2018-02-03_212124.png


2、添加被控设备/主机,设置监控项目

(1)单击导航栏中的“management(管理)”下的“devices(设备)”,能够管理被控设备或主机。点击devices---Add

2018-02-03_212243.png


修改五个地方,以下图,

而后单击右下角的“create”建立,将自动链接目标执行snmp查询

2018-02-03_212355.png

2018-02-03_212424.png

(2)设置要监测的项目

成功链接被控端后会看到save successful提示,以下图

2018-02-03_212527.png

2018-02-03_212557.png


添加项的时候选择页面右侧的add,完成以后点击右下方的save按钮保存

2018-02-04_231631.png


三、生成检测图像

(1)建立图像

单击导航栏中create下的new graphs(图表),选择被控端,选中最须要的图像条目,最后单击下方的create按钮完成建立。

2018-02-03_212905.png

(2添加图像至监测树

单击导航栏中的management下的graph trees,在单击default tree就能够对默认的图像监测树进行管理。单击右侧的add,能够向监测树种添加“树项目”,完成以后点击create,并点击save保存。

2018-02-03_213106.png


2018-02-03_213136.png


2018-02-03_213204.png

四、按期采集监测数据

Cacti系统经过poller.php页面采集监测数据,能够结合计划任务按期采集(默认的刷新间隔是5分钟)

(执行完成以后,会出现不少的提示信息,通常状况下是指时区不正确,建议你将时区改成Asia/Chongqing

 因为是php报的错误,因此咱们经过php.ini这个主配置文件解决这个问题)

2018-02-03_213337.png

2018-02-03_213410.png

作一个任务计划


2018-02-04_232718.png

2018-02-03_213523.png

五、查看监测结果

单击cacti管理控制台左上方的graphs标签,而后展开左侧的default tree树,选择被控主机后便可看到各监测图像。

2018-02-03_213550.png

2018-02-03_220508.png

2018-02-03_220520.png

6.安装percona-mysql-monitor插件

Cacti工具默认的模板只能监控机器的cpu,内存和磁盘等信息,若是想要监控mysql,就须要安装插件,操做以下

在Cacti服务器上操做

2018-02-03_221012.png

2018-02-03_221056.png

mysql数据库受权用户

2018-02-04_233732.png

2018-02-04_234034.png


为设备添加项目

在Cacti管理界面中进行添加,点击Consose——Import Templates——选择文件, 将宿主机下的压缩目录解压到一个文件夹内,选择解压后的cacti\templat目录下的cacti_host_template_percona_mysql_server_ht_0.8.6i-sver1.1.4.xml,最后单击import导入。

2018-02-04_234156.png

2018-02-03_221159.png


添加模板

2018-02-04_234713.png

建立图像

2018-02-04_234751.png


2018-02-04_234820.png

从新采集

2018-02-03_213523.png

查看检测结果

2018-02-04_234945.png

2018-02-04_235002.png

相关文章
相关标签/搜索