自动化监控体系

监控概述

(1)监控是运维工作中比较重要的!Linux运维中几乎所有的都需要监控。

(2)监控不仅仅支持zabbix工具的使用

故事主角:小王

任务:接到公司的任务公司的监控

1.将硬件设备监控起来,使用IPMI监控硬件服务器,缺点如果硬件损坏,无法获取硬盘信息,但是我们可以使用MegaCli工具查看Raid磁盘阵列状态

使用MegaCli工具查看Raid磁盘阵列状态

http://www.ttlsa.com/tools/megacli-tool-query-raid-status/

2.将系统状态监控起来,监控CPU,内存,硬盘,网络状态,通过编写脚本监控

3.将系统运行的服务监控起来,如apache,nginx,mysql进行应用监控


 

但是以上的监控需要通过脚本实现,是在很复杂,这时我们就需要引入zabbix监控工具

zabbix官网:http://www.zabbix.com/

优点:所有的配置都可以在web界面配置


 

Ngios主要针对于监控报警,但是图像功能差,为了弥补需要引入cacti工具,缺点是报警,这两个工具可以结合在一起使用

Ngios官网:https://www.nagios.org/

cacti官网:http://www.cacti.net/


 

思路:做监控要站点业务的高度去思考

硬件监控

(1)专业的机房运维人员对服务器进行定期的巡检

(2)查看服务器指示灯的各种状态,如果网线松动造成网络时常丢包

(3)检查服务器标签是否完整,是否标签贴错

(4)通过服务器的远程控制卡进行监控,买服务器的时候建议安装

(5)通过IPMI监控硬件服务器状态,使用 ipmitool 实现 Linux 系统下对服务器的 ipmi 管理

相关资料:http://www.ibm.com/developerworks/cn/linux/l-ipmi/


 

IPMI的安装与使用,虚拟机无法使用,物理机可以。

yum -y install OpenIPMI ipmitool              #安装方法

[root@linux-node1 ~]# /etc/init.d/ipmi start           #因为是虚拟机,所以无法启动,物理机可以

Starting ipmi drivers:                                     [失败]

[root@linux-node1 ~]# lsmod|grep ipmi          #查看ipmi内核模块

以下为物理机启动成功后内核模块的状态

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql

[root@linux-node1 ~]# ipmitool sensor --help #帮助手册

[root@linux-node1 ~]# ipmitool sensor list               #打印传感器相关的数据

我们一般可以使用IPMI监控服务器温度,如果过高自动报警

缺点:无法获取硬盘状态

但是我们可以使用MegaCli工具查看Raid磁盘阵列状态

使用MegaCli工具查看Raid磁盘阵列状态

http://www.ttlsa.com/tools/megacli-tool-query-raid-status/

系统监控

(1)我们监控某个对象,需要了解某个对象的原理,不然监控是没有意义的,

(2)要了解监控的基准线,知道什么是好,什么是坏

(3)需要明白如何去做监控


 

对于系统监控我们需要监控哪些?

(1)CPU:查看监控CPU信息的常见命令

[root@linux-node1 ~]# cat /proc/cpuinfo

[root@linux-node1 ~]# lscpu             #查看CPU的信息

[root@linux-node1 ~]# uptime       #查看CPU的负载分别为1分钟5分钟10分钟

 12:12:22 up  1:27,1 user,  load average: 0.00, 0.00, 0.00

[root@linux-node1 ~]# top                #查看CPU的使用率,常用的监控工具

[root@linux-node1 ~]# vmstat 1      #每秒查看CPU的信息

[root@linux-node1 ~]# mpstat 1     #每秒查看CPU的使用率,专门监控CPU的

提示:用户态与内核态的使用比率为3:7

(2)内存:查看监控内存信息的常见命令

[root@linux-node1 ~]# free              #查看剩余内存

提示:一般是监控内存的使用率

(3)硬盘:查看监控硬盘信息的常见命令

监控磁盘的使用率

[root@linux-node1 ~]# df -h              #查看磁盘的使用量

监控磁盘的IO

[root@linux-node1 ~]# iotop            #默认是没有安装的,需要配置epel源安装

-bash: iotop: command not found

[root@linux-node1 ~]# yum -y install iotop

[root@linux-node1 ~]# iotop            #监控磁盘的IO读取速度

Total DISK READ: 0.00 B/s | Total DISK WRITE: 0.00 B/s

  TID  PRIOUSER     DISK READ  DISK WRITESWAPIN     IO>    COMMAND                          

    1 be/4 root        0.00 B/s    0.00 B/s0.00 %  0.00 % init

    2 be/4 root        0.00 B/s    0.00 B/s0.00 %  0.00 % [kthreadd]

(4)网络:查看网络信息的常见命令

监控网卡的流量

[root@linux-node1 ~]# iftop                                #查看网卡的流量

[root@linux-node1 ~]# iftop -F eth0                  #监控指定的网卡


 

提示:当然我们也可以使用nmon工具将上述的所有内容监控起来(运维必会)

以下为相关博文资料

Linux下使用NMON监控、分析系统性能

http://blog.itpub.net/23135684/viewspace-626439/

Nmon工具的使用以及通过nmon_analyse生成分析报表

http://phpseyo.iteye.com/blog/1958502


 

网络监控

提示:无论使用什么做网络监控就不会很准确

常见的网络监控品牌:

监控宝:http://www.jiankongbao.com/

基调:http://www.tingyun.com/sem1.html

博睿:http://www.bonree.com/

smokeping 免费开源的网络监控软件,特点支持分布式

安装博文:http://www.xuliangwei.com/xubusi/507.html

提示:可以使用站长工具检查网站的网络性能http://tool.chinaz.com/


 

1.监控网络常见命令iftop,一般TCP比较大的情况下会用到

[root@linux-node1 ~]# iftop

-bash: iftop: command not found

[root@linux-node1 ~]# yum -y install iftop

[root@linux-node1 ~]# iftop

12.5Kb             25.0Kb              37.5Kb             50.0Kb        62.5Kb

└──────────────────┴──────────────────┴─────────linux-node1ぉぉぉぉぉ丞ぉぉぉぉぉぉ=> 10.0.0.1──────┴───────2.72Kb  3.70Kb  3.70Kb─                                 <=                                      320b    424b424b

linux-node1                        => public1.alidns.com                     0b    270b270b

                                   <=                                        0b    488b488b

[root@linux-node1 ~]# iftop -F eth0                  #监控指定的网卡


 

课后作业:

smokeping 免费开源的网络监控软件,特点支持分布式

安装博文:http://www.xuliangwei.com/xubusi/507.html

应用监控

(1)apache 的mod-status状态监控

Apache模块 mod_status

http://www.t086.com/code/apache2.2/mod/mod_status.html

(2)nginx的状态监控

使用 Nginx 提升网站访问速度

https://www.ibm.com/developerworks/cn/web/wa-lo-nginx/


 

提示:所有的应用程序都会提供监控的接口

Zabbix Documentation 2.4

准备环境

1.查看CentOS的系统信息

[root@m01 ~]# cat /etc/redhat-release                  ß系统版本

CentOS release 6.7 (Final)

[root@m01 ~]# uname -r                                              ß系统内核

2.6.32-573.el6.x86_64

[root@m01 ~]# uname -m                                            ß系统位数

x86_64

[root@m01 ~]# /etc/init.d/iptables status               ß防火墙是否开启

iptables: Firewall is not running.

[root@m01 ~]# getenforce                                         ßLinux是否关闭

Disabled

2.Installing repository configuration package

Zabbix 2.4 for RHEL6, Oracle Linux 6, CentOS 6:

rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm

yum repolist

[root@linux-node1 ~]# rpm -ql zabbix-release         #查看更新的zabbix源的yum配置文件

/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX

/etc/yum.repos.d/zabbix.repo

/usr/share/doc/zabbix-release-2.4

/usr/share/doc/zabbix-release-2.4/GPL

[root@linux-node1 ~]# yum repolist                           #查看系统可用的zabbix源

安装部署

1.安装zabbix相关的软件

yum -y install zabbix zabbix-agent zabbix-server-mysql zabbix-web-mysql

2.安装mysql相关的软件

yum -y install mysql mysql-server

检查软件包是否全部安装完成

rpm -qa zabbix-server-mysql zabbix-web-mysql zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-get mysql mysql-server

服务配置

3.配置并启动MySQL数据库

[root@linux-node1 ~]# \cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

[root@linux-node1 ~]# vi /etc/my.cnf      ß编辑MySQL配置文件

# The MySQL server                   ß在此处添加如下三行,主要作用就是设置MySQL的字符集

[mysqld]

character-set-server = utf8

init-connect = 'SET NAMES utf8'

collation-server = utf8_general_ci

4.启动zabbix存储数据的数据库MySQL

[root@linux-node1 ~]#/etc/init.d/mysqld start       ß将MySQL数据库进行初始化启动

Initializing MySQL database:  Installing MySQL system tables...

160705 15:36:39 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Please use '--skip-external-

To do so, start the server, then issue the following commands:

You can start the MySQL daemon with:

cd /usr ; /usr/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl

cd /usr/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script! [  OK  ]

Starting mysqld:[  OK  ]

#现在我们使用mysql命令进入数据库测试

[root@linux-node1 ~]# mysql           ß进入MySQL的命令

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

mysql> create database zabbix;                ß创建数据库

mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';                ß创建一个用户并设置有管理zabiix数据库的权限,并设置密码为zabbix

mysql> flush privileges;             #刷新用户权限

mysql> exit                                   #退出mysql数据库

提示关于上面创建数据库的并设置用户管理的方法,可以直接进入数据库设置,也可以使用以下的方法进行设置。


 

5.导入zabbix基本数据库到数据库中

[root@linux-node1 ~]# cd /usr/share/doc/zabbix-server-mysql-2.4.8/create/

[root@linux-node1 create]# ls                   ß你会看到有三个数据库文件,我们只需分别将其导入zabbix数据库即可

data.sqlimages.sql  schema.sql

#提示以下数据库数据的导入,必须按照顺序来,不然会导致错误

[root@linux-node1 create]# mysql zabbix<schema.sql            ß首先将数据表导入

[root@linux-node1 create]# mysql zabbix<images.sql             ß然后导入图形数据

[root@linux-node1 create]# mysql zabbix<data.sql                           ß最后导入data数据

[root@linux-node1 create]# mysql -uroot zabbix<data.sql              ß此行不需要操作,只是导入的参考

[root@linux-node1 create]# mysqladmin -uroot password oldboy          ß设置MySQL数据库的密码

6. 初始化apache服务的zabbix配置

[root@linux-node1 ~]# sed -i 's#\# php_value date.timezone Europe/Riga#php_value date.timezone Asia/Shanghai#g' /etc/httpd/conf.d/zabbix.conf               将apache配置文件zabbix的配置文件进行修改,将时区修改为亚洲上海

[root@linux-node1 ~]# grep Shanghai /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai

7.初始化zabbix server配置

[root@linux-node1 ~]# cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.oldboy.ori           备份配置文件

[root@linux-node1 ~]# ll /etc/zabbix/zabbix_server.conf*               检查备份文件是否备份

-rw-r----- 1 root zabbix 13543 May  4 13:37 /etc/zabbix/zabbix_server.conf

-rw-r----- 1 root root   13543 Jul5 15:43 /etc/zabbix/zabbix_server.conf.oldboy.ori

[root@linux-node1 ~]# sed -i 's@# DBPassword=@DBPassword=zabbix@g' /etc/zabbix/zabbix_server.conf       修改zabbix的密码

[root@linux-node1 ~]# sed -i 's@# DBHost=localhost@DBHost=localhost@g' /etc/zabbix/zabbix_server.conf

修改前后对比:

[root@linux-node1 ~]# diff /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.oldboy.ori         对比修改前后的配置文件变化diff命令可以对比两个文件的变化

72c72

< DBHost=localhost

---

> # DBHost=localhost

106c106

< DBPassword=zabbix

---

> # DBPassword=

服务启动

8.启动zabbix server及web服务

[root@linux-node1 ~]# /etc/init.d/zabbix-server start             ß将zabbix服务进行启动

Starting Zabbix server:                                    [  OK  ]

[root@linux-node1 ~]# lsof -i :10051|wc -l                         ß检查zabbix服务是否启动

55

[root@linux-node1 ~]# netstat -ltnp|grep 10051   ß检查zabbix服务是否启动

tcp0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      4643/zabbix_server 

tcp0      0 :::10051                    :::*                        LISTEN      4643/zabbix_server

[root@linux-node1 ~]# /etc/init.d/httpd start                  ß将apache服务启动

Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.16.1.61 for ServerName         [OK  ]

[root@linux-node1 ~]# lsof -i :80|wc -l                       ß检查apache服务是否启动

10

到此,zabbix server端的命令行配置告一段落了,接下来就是Web界面里管理了,使用Web管理对我这样老鸟实在不习惯,还是喜欢Nagios批量自动化脚本管理,更快,更舒服。

9.最后我们需要设置mysqld,zabbix-server,开机自动启动

[root@linux-node1 ~]# chkconfig mysqld on                 设置Mysql开机自启动

[root@linux-node1 ~]# chkconfig --list mysqld

mysqld0:off   1:off   2:on3:on    4:on    5:on6:off

[root@linux-node1 ~]# chkconfig zabbix-server on    设置zabbix服务端开机自启动

[root@linux-node1 ~]# chkconfig --list zabbix-server      

zabbix-server0:off   1:off   2:on3:on    4:on    5:on6:off

[root@linux-node1 ~]# chkconfig zabbix-agent on             设置zabbix agent端开机自启动

[root@linux-node1 ~]# chkconfig --list zabbix-agent

zabbix-agent0:off   1:off   2:on3:on    4:on    5:on6:off

[root@linux-node1 ~]# chkconfig httpd on                   设置apache服务开机自启动

[root@linux-node1 ~]# chkconfig --list httpd

httpd0:off   1:off   2:on3:on    4:on    5:on6:off

Web安装

1、浏览器打开http://10.0.0.61/zabbix(最好火狐或谷歌)

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_02

2.点击上面Next按钮,进入下一步

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_03

3.查看检查环境是否OK,如果OK,直接按Next按钮进入下一步

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_04

3.请输入数据库的账号及密码,然后点击下面的测试连接数据库

按照前面设定的授权数据库的用户、密码等填充选框,测试成功方可继续

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_05

4.如果出现ok则表示数据库连接正常,然后就可以点击Next进行下一步操作

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_06

5.保持设置默认即可,点击Next继续下一步

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_07

6.点击进行下一步,最终会生成如下文件:/etc/zabbix/web/zabbix.conf.php

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_08

7.点击下面的确认。并完成。

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_09

8.输入账号密码登录即可,注意:用户是Admin,密码是zabbix。

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_10

9. 登录成功后的界面,这仅仅是万里长城的第一步


 

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_11

10.修改上面的profile设置,将界面修改为中文界面

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_12

11.点击Updata按钮即可

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_13

12.最后我们的zabbix就变成了中文界面啦!


 

客户端配置

安装zabbix agent端

参考官方安装手册:

https://www.zabbix.com/documentation/3.0/manual/installation/install_from_packages#red_hat_enterprise_linuxcentos

1.现在开始更新zabbix的YUM源

wget -q http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm

下载更新zabbixYUM源的rpm包

[root@m01 ~]# rpm -ivh zabbix-release-2.4-1.el6.noarch.rpm     ß这个软件可以更新zabbix的yum源

Preparing...(########################################### [100%]

1:zabbix-release                                                     (########################################### [100%]

[root@m01 ~]# rpm -ql zabbix-release   ß查看更新的zabbix源的yum配置文件

/etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX

/etc/yum.repos.d/zabbix.repo

/usr/share/doc/zabbix-release-3.0

/usr/share/doc/zabbix-release-3.0/GPL

[root@m01 ~]# yum repolist            ß查看系统可用的zabbix源

zabbix                Zabbix Official Repository - x86_64                    54

[root@m01 ~]# yum list zabbix

2.开始安装zabbix agent(被监控端)

[root@web01 ~]# yum -y install zabbix-agent                   #<== ZABBIX客户端

[root@web01 ~]# yum -y install zabbix-get                       #<==zabbix命令行工具

[root@web01 ~]# rpm -q zabbix-agent zabbix-get          ß检查软件是否被安装


 

zabbix-agent-2.4.8-1.el6.x86_64

zabbix-get-2.4.8-1.el6.x86_64

3.配置zabbix agent服务相关配置文件

[root@web01 ~]# grep Server= /etc/zabbix/zabbix_agentd.conf  ß查看默认的配置

# Server=

Server=127.0.0.1

 [root@web01 ~]# sed -i 's#Server=127.0.0.1# Server=172.16.1.61#g' /etc/zabbix/zabbix_agentd.conf    ß这里的IP地址一定要修改为zabbix服务端的IP地址

[root@web01 ~]# grep Server= /etc/zabbix/zabbix_agentd.conf  ß检查修改是否完成

# Server=

Server=172.16.1.61

5.启动zabbix agent服务

[root@web01 ~]# /etc/init.d/zabbix-agent start             ß启动zabbix客户端的服务

Starting Zabbix agent:                                     [  OK  ]

[root@web01 ~]# chkconfig zabbix-agent on                  ß设置zabbix agent端开机自启动

[root@web01 ~]# chkconfig --list zabbix-agent

zabbix-agent0:off   1:off   2:on3:on    4:on    5:on6:off

[root@web01 ~]# netstat -ltnp|grep zabbix                     ß检查服务是否开启

tcp0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      1486/zabbix_agentd 

tcp0      0 :::10050                    :::*                        LISTEN      1486/zabbix_agentd 

[root@web01 ~]# tailf /var/log/zabbix/zabbix_agentd.log              ß查看zabbix日志

6.至此,linux下zabbix客户端安装完毕。

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_14

7.我们切换到zabbix监控端的界面,找到组态-----主机---点击进去,即可查看到被管理的主机,默认为停用的,我们这是直接点击进去

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_15

8.将带来接口的IP地址修改为172.16.1.61为监控端的IP地址,也就是m01的本机IP地址

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_16

9.找到系统代理程式检测,设置已启用,最后点击更新即可

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_17

最后我们查找主机已启用


 


 


 

Zabbix Documentation 3.0

自定义监控

用户在线人数监控

对于一定模块的监控,默认是没有的,这时我们就需要自定义的监控,比如监控nginx服务

[root@m01 ~]# yum -y install zabbix-get                  安装可以从客户端获取数据的命令,默认已经安装

[root@m01 ~]# zabbix_get -s 172.16.1.8 -p 10050 -k "system.cpu.load[all,avg1]"               采集远端系统的负载

0.000000

1.使用zabbix如果收集监控端的用户登录情况

[root@web01 ~]# vi /etc/zabbix/zabbix_agentd.conf              需要修改被监控端的配置文件

# Mandatory: no

# Default:

# UserParameter=

UserParameter=login-user,who|wc -l

[root@web01 ~]# who|wc -l            查看当前用户在线数

1

[root@web01 ~]# /etc/init.d/zabbix-agent restart                   重启服务使其配置生效

Shutting down Zabbix agent:                                [  OK  ]

Starting Zabbix agent:                                     [  OK  ]

2.当我们在监控端调用此模块就会发现可以查看用户在线数量啦

[root@m01 ~]# zabbix_get -s 172.16.1.8 -p 10050 -k "login-user" 

1

3.测试,当我们使用被监控端克隆多个会话的话,就会发现有多个用户登录

[root@m01 ~]# zabbix_get -s 172.16.1.8 -p 10050 -k "login-user"

3

4.这时我们就需要在监控端的浏览器上进行设置,其实在监控端显示

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_18

5.点击右上角的创建应用集

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_19

6.现在我们添加一个应用集名称为:监控系统在线人数

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_20

7.我们就会看到有个监控用户在线人数的应用集

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_21

8.我们点击分类右边的监控项,进入创建监控项

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_22

9.点击右上角的创建监控项

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_23

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_24

11.点击添加,我们的监控项就创建完毕啦

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_25

12.现在我们来创建触发器,(触发器的作用是,当我们监控的值达到某个值以后,会自动触发事件)


 

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_26

13.点击右上角的创建触发器

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_27

14.点击添加触发的事件

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_28

15.设置监控事件,触发条件

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_29

16.最后我们点击添加触发器

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_30

17.我们在触发器里就会发现新建的触发器

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_31

18,当我们将触发器创建完毕以后,下面来创建图形,更好的显示警告

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_32

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_33

19.我们可以通过添加图表方式查看用户的在线情况

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_34

20.这时我们就可以看到登录的用户数啦

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_35

网页报警

我们可以设置zabbix进行网页简单的报警,只要出现警告,网页端就会开始报警

(1)点击右上角的设置

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_36

(2)将下面的选择全选,更新即可

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_37

(3)这时只要我们的之前设置web01服务用户登录数量超过2个就会在网页前端报警

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_38

(4)假如我们的问题被解决的话,那么也会有一个恢复的报警

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_39

邮件报警

1.执行下面的命令配置邮件

postconf -e myhostname=mail.zabbix.example.cn
postconf -e myorigin=zabbix.example.cn
postconf -e mydomain=zabbix.example.cn
postconf -e mydestination=localhost
postconf -e mynetworks=127.0.0.0/8

提示:配置完成会添加参数到/etc/postfix/main.cf下末行

2.需要修改/etc/hosts文件

127.0.0.1localhost localhost.localdomain localhost4 localhost4.localdomain4 mail.zabbix.example.cn zabbix.example.cn

3.发送一个邮件测试

发邮件前一定要确保postfix服务处于启动状态

[root@backup ~]# /etc/init.d/postfix start

Starting postfix:[  OK  ]

[root@backup ~]# /etc/init.d/postfix status

master (pid18304) is running...

[root@backup ~]# chkconfig postfix on && chkconfig --list postfix

postfix0:off   1:off   2:on3:on    4:on    5:on6:off

现在开始发送邮件

[root@backup ~]# echo 'This is zabbix test'|mail -s te'zabbix test' 838997384@qq.com

提示:如果qq邮箱收不到邮件的话,请将zabbix.example.cn域名加入到域名白名单

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_40

这时我们打开QQ邮箱就会收到邮件啦

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_41

4.配置web端的邮件配置

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_42

SMTP服务器:mail.zabbix.example.cn

SMTP HELO:zabbix.example.com

SMTP电邮:root@zabbix.example.cn

5.现在开始设置报警媒介

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_43

6.配置报警媒介。并添加

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_44

7.更新报警媒介

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_45

8.设置动作

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_46

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_47

9.转换到操作,进行设置

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_48

10.点击更新

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_49

到了这里我们的邮件报警就设置完成啦!

11.现在我们来测试邮件报警是否成功,将web01登录3个以上的用户进行测试

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_50

12.现在查看监控是否会报警

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_51

13.现在检查邮件是否报警

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_52

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_53

应该我们之前设置的是60秒内发5个邮件,现在等待一下进行查看,就会查看5个邮件

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_54

14.当我们的问题解决时,同时也会收到一个问题解决的邮件提示

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_55

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_56

监控可视化

常用图形

1.有一个需求,我们想查看服务器的图表的话,可以将常用的图表加入到zabbix首页的常用图表中。例子,将网卡图表添加到常用选项

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_57

2.现在我们就可以在首页中查看到常用的图表啦!

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_58


 

聚合图表

聚合图表就是把一台服务器的所有图表添加到一起,让使用者可以同时查看多个图表

(1)现在我们来创建一个聚合图表

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_59

(2)添加一个聚合图形

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_60

(3)进入添加的聚合图形,添加图表

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_61

(4)点击编辑聚合图形

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_62

(5)点击更改,添加监控图表

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_63

(6)选择监控的图表

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_64

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_65

(7)继续点击添加图表

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_66

(8)这时我们就会看到添加的图表啦

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_67

(9)重复上面的操作将eth0 eth1网卡图表,CPU,用户在线人数依次添加

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_68


 

幻灯片演示

如果我们有多个聚合图形的话,那么我们都想看到这些数据的话,那么就可以通过创建一个幻灯片播放,前提是你必须有多个或两个以上聚合图形

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_69

(1)开始创建幻灯片播放

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_70

(2)创建幻灯片演示

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_71

(3)这样一下的图表就是没5秒刷新一次啦,我们也可以点击右上角添加到首页

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_mysql_72

(4)这是转到首页就可以看到

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_73

到了这里我们的幻灯片演示就成功啦!

共享模板

互联网上的模板,我们可以下载别人分享的模板

https://share.zabbix.com/


 

1.模板的导入导出

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_74

2.选择需要导出的模块,选择导出

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_linux_75

3.以下为导入模板的方法

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_76


 

监控Nginx的并发连接数

1.web01客户端开启nginx的状态模块

zabbix监控liunx系统磁盘可用百分比 zabbix监控linux磁盘空间_MySQL_77

2.编辑zabbix客户端的配置文件

[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.conf

# Mandatory: no

# Default:

# UserParameter=

UserParameter=login-user,who|wc -l

UserParameter=Active,curl -s status.etiantian.org|awk -F ':' 'NR==1 {print $3}'
UserParameter=accepts,curl -s status.etiantian.org|awk  'NR==3 {print $1}'
UserParameter=handled,curl -s status.etiantian.org|awk  'NR==3 {print $2}'
UserParameter=requests,curl -s status.etiantian.org|awk  'NR==3 {print $3}'

[root@web01 ~]# /etc/init.d/zabbix-agent restart                            #重启服务配置生效