学习zabbix(一)
一、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(一)的更多相关文章
- 学习zabbix(三)
前言: 学习zabbix之前,不得不了解的是SNMP协议 SNMP:简单网络管理协议(Simple Network Protocol) Snmp由两部分组成,监控端和被监控端 监控模式: 主动模式:N ...
- 学习zabbix(六)
实验环境 实验用2到2台机器,实验所用机器系统环境如下,可以看到2台机器的主机名和IP地址 ? 1 2 3 4 5 6 7 8 9 10 [root@linux-node1 ~]# cat /etc/ ...
- 学习zabbix(五)
前言 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix组件主要分两个: zabbix-server和zabbix-agent.支持的监控协议有I ...
- zabbix学习-zabbix安装
本次安装教程完全参考官方rpm安装教程: https://www.zabbix.com/documentation/3.4/zh/manual/installation/install_from_pa ...
- 学习zabbix(十)
Zabbix 3.0 基础介绍 [一] 一.Zabbix介绍 zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更 ...
- 学习zabbix(九)
一.Zabbix环境准备 [root@linux-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [roo ...
- 学习zabbix(八)
一,Zabbix架构 zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案.zabbix 能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制 ...
- 学习zabbix(七)
zabbix自定义监控项 1.创建主机组,可以根据redis.mysql.web等创建对于的主机组 2.创建主机 3.创建Screens 4.自定义监控项 zabbix_agentd.conf配置文件 ...
- 学习zabbix(四)
一. 监控知识 1.硬件监控: 机房巡检,远程控制卡,IPMI 2.系统监控: cpu负载查看(指标):uptime(低于3),top(30%-70%), vmstat, mpstat 内存监控: f ...
- 学习zabbix(二)
超大规模门户网站集群架构: 运维30%的时间都在监控,监控要多维度: 监控(单机监控(系统监控).网络监控.应用监控.分布式监控): 业务监控(业务指标-->流量分析-->舆论监控): 流 ...
随机推荐
- 每日一算法之two sum
题目如下:首先准备一个数组,[1,2,8,4,9] 然后输入一个6,找出数组两项之和为6的两个下标. 啥也不想,马上上代码,这个太简单了, static int[] twoSum(int[] num ...
- Codeforces Round #773 (Div. 2)D,E
D. Repetitions Decoding 传送门 题目大意: 一个长为 n ( n 2 ≤ 250000 ) n(n^2\leq250000) n(n2≤250000)的序列,每个元素 a i ...
- 初识html及网络爬虫概念
网络爬虫 HTML超文本标记语言 HTTP协议 简单的网络请求 python模块模拟浏览器发送请求 爬虫小案例 爬虫简介 我们一般情况 都是通过浏览器正常访问服务端获取资源浏览器展示给用户看 爬虫 模 ...
- MySQL中使用IN会不会走索引
结论:IN肯定会走索引,但是当IN的取值范围较大时会导致索引失效,走全表扫描 navicat可视化工具使用explain函数查看sql执行信息 场景1:当IN中的取值只有一个主键时 我们只需要注意一个 ...
- python学习之scipy实战1(积分用法)
import numpy as np def main(): #1-- Integral积分 from scipy.integrate import quad, dblquad, nquad prin ...
- redis哨兵功能
redis哨兵功能 redis-Sentinel(哨兵) 前言 当用redis作master-slave的高可用时,如果master本身宕机,redis本身或者客户都没有实现主从切换的功能 redis ...
- SQL语句优化、mysql不走索引的原因、数据库索引的设计原则
SQL语句优化 1 企业SQL优化思路 1.把一个大的不使用索引的SQL语句按照功能进行拆分 2.长的SQL语句无法使用索引,能不能变成2条短的SQL语句让它分别使用上索引. 3.对SQL语句功能的拆 ...
- 4月16日 python学习总结 封装之property、多态 、classmethod和staticmethod
一.封装之property @property把一个函数伪装成一个数据类型 @伪装成数据的函数名.setter 控制该数据的修改,修改该数据时触发 @伪装成数据的函数名.delect 控制该数 ...
- metinfo 6.0 任意文件读取漏洞
一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软件 2.点击新建项目按钮,弹出对画框中选择(C:\ ...
- python练习册 每天一个小程序 第0001题
1 # -*-coding:utf-8-*- 2 __author__ = 'Deen' 3 ''' 4 题目描述: 5 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生 ...