一、zabbix监控简介

server: 通过收集snmp和agent发送的数据,写入数据库(MySQL,ORACLE),再通过 php+apache 在 web 前端展示。

agent:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据

二、Zabbix功能

--具备常见的商业监控软件所具备的功能

主机的性能监控、网络设备监控、数据库监控、多种报警方式、实时绘图功能

--支持自动发现网络设备和服务器

--支持分布式,能集中展示、管理分布式的监控点

--扩展性强,server提供通用接口,可以自己开发完善各类监控

三、安装zbbix

yum源
cat /etc/yum.repos.d/a.repo
[os]
name=aliyun
baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64/
enabled=1
gpgcheck=0 [zabbix]
name=zabbix
baseurl=http://mirrors.ustc.edu.cn/epel/6/x86_64/
enabled=1
gpgcheck=0

server 端:

1、安装zabbix-server
yum -y install zabbix22-server zabbix22-web zabbix22-web-mysql zabbix22-dbfiles-mysql zabbix22-agent mysql-server mysql php php-devel php-mysql 2、导入数据结构
service mysqld start
mysql
CREATE DATABASE zabbix CHARACTER SET utf8;
GRANT ALL ON zabbix.* TO 'zabbix'@'192.168.4.%' IDENTIFIED BY 'zabbix';
FLUSH PRIVILEGES;
mysql -u root -p zabbix < schema.sql 各种表结构
mysql -u root -p zabbix < images.sql 基本数据
mysql -u root -p zabbix < data.sql 自带模板
mysql -e 'USE zabbix;SHOW TABLES;' 3、配置文件
grep -n '^[a-Z]' /etc/zabbix_server.conf
39:LogFile=/var/log/zabbixsrv/zabbix_server.log
48:LogFileSize=0
68:PidFile=/var/run/zabbixsrv/zabbix_server.pid
77:DBHost=192.168.4.19
87:DBName=zabbix
103:DBUser=zabbix
111:DBPassword=zabbix
118:DBSocket=/var/lib/mysql/mysql.sock
458:AlertScriptsPath=/var/lib/zabbixsrv/alertscripts
466:ExternalScripts=/var/lib/zabbixsrv/externalscripts
507:TmpDir=/var/lib/zabbixsrv/tmp

agent

1、安装
yum -y install zabbix22-agent
2、配置文件
grep -n '^[a-Z]' /etc/zabbix_agentd.conf
11:PidFile=/var/run/zabbix/zabbix_agentd.pid
21:LogFile=/var/log/zabbix/zabbix_agentd.log
30:LogFileSize=0
81:Server=192.168.4.19
122:ServerActive=127.0.0.1
133:Hostname=Zabbix server

访问http://192.168.4.19/zabbix

点Next

修改配置文件

vim /etc/php.ini
945date.timezone = Asia/Shanghai 设置时区
440max_execution_time = 300 最大执行时间,秒
729post_max_size = 32M POST数据最大容量
449max_input_time = 300 服务器接收数据的时间限制
457memory_limit = 128M PHP内存占用的容量限制
service httpd restart

默认管理员账户密码:admin   zabbix

生成配置文件: /etc/zabbix/web/zabbix.conf.php

若切至中文有乱码,解决办法:

1、查看/etc/httpd/conf.d/zabbix.conf得知zabbix网页目录为/usr/share/zabbix/;

2、查看/usr/share/zabbix/include/defines.inc.php得知字体目录位置:

define('ZBX_FONTPATH',                             '/usr/share/fonts/dejavu');// where to search for font (GD > 2.0.18)

define('ZBX_GRAPH_FONT_NAME',           'DejaVuSans'); // font file name;

3、将win中的任意字体(控制面板-->字体,例如仿宋或华文雅黑)复制到/usr/share/fonts/dejavu/下并覆盖改名为DejaVuSans.ttf;

添加一台主机

Configuration-->Hosts,Createhost-->

Host name(test2)

Visable name(test2)

New group(demo)

IP address(192.168.4.19)

Port(10050)

Status(Monitored)

添加报警:

注:报警针对用户和用户组;生产环境最好有短信平台,或晚上用SMS,白天email;

Administration-->Users-->选Zabbixadministrators旁的Users-->右上角Create User,User标签(Alias(demo),
Name(demo),Groups(Zabbix administrators),Password(demo)两次,勾选Auto-login-->Media标签,
Add,Type(Email),Send to(*@163.com),Add-->Permissions标签(User-type选Zabbix Super Admin)-->Save;

右上角logout,用demo登录;

注:Configuration-->Templates中的Applications应用集是监控项的集合,Item项目是监控的最小单位,有的Templates有Triggers有的没

四、添加mysql监控

添加项目:

Configuration-->Hosts,选test2中的Items-->点右上角Createitem,如下图创建,Name(mysql_check),Key(mysql_alive),update interval(in sec)(60),new flexible interval(300)-->Add,new application(MySQL),Description(MySQL Check)-->Save

agent 端的配置

vim /etc/zabbix/zabbix_agentd.conf
UserParameter=mysql_alive,mysqladminping | grep -c alive
service zabbix-agentd restart

添加 触发器

Configuration-->Hosts,选test2的triggers,右上角Createtrigger-->Name(MySQL down),Expression(点Add,如下图,点Select,test2的mysql_check,Function(选Last (most recent) T value is NOT N,N(1))-->Insert-->Severity(disaster)

点Trigger标签旁边的Dependencies-->Add,选Zabbix agent on {HOST.NAME} is unreachable for 5minutes-->Save

添加图形:

Configuration-->Hosts,选test2的graph,右上角Creategraph,Name(mysql status),Graph type(Normal),Items-->Add,选test2的mysql_check,点Graph标签旁边的Preview可预览-->Save

添加报警

Configuration-->Actions,将Reportproblems to Zabbix administrators的status改为Enabled-->点Report problems to Zabbix administrators,Action标签中的项(要精简,一条短信是70个字符),Conditions,Operations(Operation details,from 1 to 3,第1次到第3次报警每次发送通知给指定的人,Operation type选Send message)-->先点Update-->再Save

五、添加报警邮件

配置邮箱

 vim /etc/mail.rc
#######set mail
set from=usertzc@163.com smtp=smtp.163.com
set smtp-auth-user=usertzc smtp-auth-password=password smtp-auth=login

添加脚本

cd /var/lib/zabbixsrv/alertscripts/   #(此目录下的脚本必须支持三个参数,介质参数(email or SMS),title,content)
vim /usr/lib/zabbix/alertscripts/mail.sh
#!/bin/sh
MAIL_TITLE=$2
MAIL_CON=$3
echo "$MAIL_CON" | /bin/mail -s "$MAIL_TITLE" $1
echo "$1 $2 $3" >> /tmp/alert
chmod 755 send_mail.sh

配置报警邮件

Administration-->Media types-->Create media type,Name(send_mail),Type(Script),Script name(会自动生成),勾选Enabled-->Save

Configuration-->Actions-->点Report problems to Zabbix administrators-->选Operations,Edit,Operation details中,User group为zabbix administrator,Send only to选send_mail-->Update-->Save

Administration-->Users-->demo-->Media-->Add,Type(send_mail),Send to(jowinchai@163.com)-->Add-->Save

Administration-->Users-->Admin-->Media-->Add,Type(send_mail),Send to(root@localhost)-->Add-->Save

设置报警声音:

右上角Profile-->Messaging标签,勾选Frontend messaging;

测试:

1、将test2的mysqld停掉,#service mysqld stop|start

2、在Monitoring-->Dashboard中查看System status、Host status、Last 20issues中的Actions

less /var/log/zabbixsrv/zabbix_server.log
tail -f /var/log/maillog

学习zabbix(一)的更多相关文章

  1. 学习zabbix(三)

    前言: 学习zabbix之前,不得不了解的是SNMP协议 SNMP:简单网络管理协议(Simple Network Protocol) Snmp由两部分组成,监控端和被监控端 监控模式: 主动模式:N ...

  2. 学习zabbix(六)

    实验环境 实验用2到2台机器,实验所用机器系统环境如下,可以看到2台机器的主机名和IP地址 ? 1 2 3 4 5 6 7 8 9 10 [root@linux-node1 ~]# cat /etc/ ...

  3. 学习zabbix(五)

    前言 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix组件主要分两个: zabbix-server和zabbix-agent.支持的监控协议有I ...

  4. zabbix学习-zabbix安装

    本次安装教程完全参考官方rpm安装教程: https://www.zabbix.com/documentation/3.4/zh/manual/installation/install_from_pa ...

  5. 学习zabbix(十)

    Zabbix 3.0 基础介绍 [一] 一.Zabbix介绍   zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更 ...

  6. 学习zabbix(九)

    一.Zabbix环境准备 [root@linux-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [roo ...

  7. 学习zabbix(八)

    一,Zabbix架构 zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix 能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制 ...

  8. 学习zabbix(七)

    zabbix自定义监控项 1.创建主机组,可以根据redis.mysql.web等创建对于的主机组 2.创建主机 3.创建Screens 4.自定义监控项 zabbix_agentd.conf配置文件 ...

  9. 学习zabbix(四)

    一. 监控知识 1.硬件监控: 机房巡检,远程控制卡,IPMI 2.系统监控: cpu负载查看(指标):uptime(低于3),top(30%-70%), vmstat, mpstat 内存监控: f ...

  10. 学习zabbix(二)

    超大规模门户网站集群架构: 运维30%的时间都在监控,监控要多维度: 监控(单机监控(系统监控).网络监控.应用监控.分布式监控): 业务监控(业务指标-->流量分析-->舆论监控): 流 ...

随机推荐

  1. 怎么查看已安装的office的序列号?ospp.vbs是什么文件

    office2007查看方法:点击开始菜单→控制面板→系统和安全→系统把它往下拉.就可以看到你的序列号.也就是激活码和密匙了office2010查看方法:下载使用Product Key Finder. ...

  2. Nested Class(嵌套类)

    在类.结构或接口中定义的类型称为嵌套类型. 例如 public class Container { class Nested { Nested() { } } } 不论外部类型是类.接口还是构造,嵌套 ...

  3. 个人c#编码约定 继承C#编码约定

    1.内插字符 串取代  字符串复合格式设置 使用这个写法: Console.WriteLine($"Hello, {name}! Today is {date.DayOfWeek}, it' ...

  4. idea maven: invalid class root

    maven导入依赖没有问题,但是项目lib的类飘红,实际导入的类中有一些没有,这是idea的问题,重启idea,发现需要重新导入项目,重新导入后问题解决. 原因:可能之前误删了项目中idea的一些文件 ...

  5. Winform实现客户端的自动更新

              话不多说,直接上干货.当然也希望各位前辈多多指导. 自动更新客户端的设计原理图 请花两分钟时间,仔细阅读下面这张图,明白客户端自动升级的原理.        自动更新的效果图 1. ...

  6. Oracle ASM 磁盘组基础知识整理(收藏版)

    转至:https://cloud.tencent.com/developer/article/1494403 为什么要写这么一篇基础知识呢?还是有那么一点点原因的,不是胡编乱造还真是有真实存在的事件的 ...

  7. docker:打包node+npm+pm2运行环境镜像

    最近公司有一个外包项目需要在不能连外网的情况下部署node项目到甲方公司内部.直接使用node官网的安装包可以获得node运行环境,但像pm2这种工具要离线装就会比较费劲,所以最终选择了使用docke ...

  8. mapreduce类型对应

    public class OrderBean implements WritableComparable<OrderBean> { private Integer order_id; // ...

  9. LeetCode-056-合并区间

    合并区间 题目描述:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] .请你合并所有重叠的区间,并返回一个不重叠的区间数组, ...

  10. 动手学TCP——CS144实验感想

    在Stanford CS144的课程实验Lab0~Lab4中,我们动手实现了一个自己的TCP协议,并且能够真的与互联网通信!此外,感谢Stanford开源本实验并提供了大量的优质测试用例,使得我们仅仅 ...