简介:1.zabbix的介绍
2.zabbix的服务端安装
3.浏览器安装zabbix
4.zabbix的客户端安装
5.添加一个客户端
6.设置邮件报警
zabbix的介绍
zabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
另外zabbix server还支持SNMP (v1,v2),可以与SNMP软件(例如:net-snmp)等配合使用。
折叠搭建Zabbix监控环境
要想搭建一个Zabbix的工作环境,需要从服务器入手。与服务器通信,管理员需要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通信。三个关键(界面、服务器和数据库)可以安装在同一台服务器上,但是如果你拥有一个更大更复杂的环境,将它们安装在不同的主机上也是一个选项。Zabbix服务器能够直接监控到同一网络中的设备,如果其他网络的设备也需要被监控,那还需要一台Zabbix代理服务器。
zabbix:支持画图,查看历史数据,分邮件,自动发现设备
服务端安装zabbix(192.168.0.21)
1.安装epel源
wget www.lishiming.net/data/attachment/forum/epel-release-6-8_32.noarch.rpm
rpm -ivh epel-release-6-8_32.noarch.rpm
2.安装rpm包的lamp环境
yum install -y httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring
3.安装zabbix服务端
yum install -y zabbix20 zabbix20-agent zabbix20-server zabbix20-server-mysql zabbix20-web zabbix20-web-mysql net-snmp-devel
4.启动服务
/etc/init.d/zabbix-server start; /etc/init.d/zabbix-agent start
发现没有启动zabbix_server服务
查看日志 less /var/log/zabbix/zabbix_server.log
/etc/init.d/httpd start; /etc/init.d/mysqld start
5.创建文件
mysql -uroot -p -e "create database zabbix"
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/schema.sql
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/images.sql
mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/data.sql
没有密码所以直接回车
6.启动zabbix
/etc/init.d/zabbix-server start
7.查看zabbix日志
tail /var/log/zabbix/zabbix_server.log
提示无法连接到数据库
创建一个用户
mysql -uroot -e "grant all on *.* to ‘zabbix‘@‘localhost‘ identified by ‘zabbix‘;
8.编辑文件
vim /etc/zabbix/zabbix_server.conf
去掉注释DBpassword=zabbix
9.启动zabbix-server
/etc/init.d/zabbix-server start
查看端口
netstat -lnpe |grep zabbix
出现zabbix_server zabbix_agentd表示启动成功
错误故障
故障一:
2637:20151009:050431.719 [Z3001] connection to database ‘zabbix‘ failed: [1045] Access denied for user ‘zabbix‘@‘localhost‘ (using password: YES)
2637:20151009:050431.719 database is down: reconnecting in 10 seconds
权限问题,执行下面的SQL语句.
MariaDB [(none)]> grant all privileges on zabbix.* to [email protected] identified by ‘zabbix‘;
浏览器安装
1.浏览器打开:192.168.0.21/zabbix
出现 以下错误,是时区的问题
|
打开php.ini文件修改时区后重新启动服务
vi /etc/php.ini
/etc/init.d/httpd restart
2.点 next 继续
发现php报错 如何解决
编辑
vim /etc/php.ini
查找并修改 post_max_size = 16M
查找并修改 max_execution_time = 300
查找并修改 max_input_time = 300
3.修改完成后重启服务
/etc/init.d/httpd restart
3.点 next 继续
user password 都为 zabbix点test connection
4.点 next 继续
定义name为:0.21(ip的地址)
登陆的用户名:admin 密码:zabbix
点右上角profile 可以修改字体
客户端安装(192.168.0.22)
1.安装zabbix软件
yum install -y zabbix20-agent
2.修改参数
vim /etc/zabbix_agentd.conf
//更改Server=服务端ip;
更改端口
ServerActive=0.0.0.0:10050;Hostname=test(自定义,但要唯一)
3.启动客户端
/etc/init.d/zabbix-agent start
4.测试是否启动
ps aux |grep zabbix
5.服务端上命令行测试:zabbix_get -s 客户端ip -p10050 -k "system.hostname"
zabbix_get -s 192.168.0.22 -p10050 -k "system.hostname"
zabbix添加一个客户端
1.在web界面下,点”configuration(配置)” --> “host(主机)” --> 右上角点”Create Host”
其中host name, visible name(可见名)自定义,可以选择groups,选 linux servers 这里默认即可,
ip address 写入客户端ip(192.168.0.22)点存档
2.配置监控项目模板:点“templates”, 点add, 在弹出的小窗口中选择Template OS Linux,
然后点select, 最后点save(存档)
3.自定义templates
Zabbix自带了很多模板,模板中有很多监控项目,比如CPU、网卡、内存、进程等等。使用系统
自带模板有点太多了,所以我们可以自定义模板。点configuration 选择 templates,
点右上角的create template
Template name和Visible name host,Groups 选择templates, 点save
5.然后我们去挑选一些项目拷贝到该模板下:点Template App MySQL点items 选
mysql status 然后在下面选择copy selected to …然后点go
Group 选择templates, 找到刚才我们自定义的host,点copy
点configuration 选择 templates可以看到新建的templates中已经有刚刚我们copy的items了
我们可以使用和上面相同的方法自定义拷贝Triggers(触发器 ),它用来设置告警的阀值,
当然我们也可以自定义编辑它
邮件报警
客户端操作
1.安装服务
yum install -y sendmail
2.创建指定的邮箱
mail -s "test" [email protected] < /etc/inittab
mailq 查看是否发出去
3.开启服务
/etc/init.d/postfix start
mkdir -p /home/zabbix/bin
vim /home/zabbix/bin/baojing.sh //内容:
#! /bin/bash
echo "$3" |/bin/mail -s "$2" $1
更改权限
chmod +x /home/zabbix/bin/baojing.sh
服务端操作
1.创建文件夹
mkdir -p /home/zabbix/bin
vim /home/zabbix/bin/baojing.sh //内容:
#! /bin/bash
echo "$3" |/bin/mail -s "$2" $1
2.更改权限
chmod +x /home/zabbix/bin/baojing.sh
编辑配置文件
vim /etc/zabbix_server.conf
修改
AlertScriptsPath=/home/zabbix/bin
ExternalScripts=/home/zabbix/bin
4.web界面去配置
创建mediea types: “Administration" -->”Media types",点击右上角“Create Media Type"
其中Description填"baojing” 或其它自定义名称,Type选择"Script",Script填”baojing.sh”
然后点”Save”.
创建user: “Adimistration” --> “Users”在右上角,选择”Users”,点击”Create User”,
alias: test,自定义name和lizheng password:123456;group 选择zabbix administrators,
回到上面点一下media,type 选择baojing,send to 写要发送邮件的邮箱,点add, 最后点save
创建action: “configuration” --> actions,右上角“Create Actions”, Name自定义,我这里写”baojing”,
其他默认,
然后点右侧的“Operations”下的“New”按钮,“Operation Type”选择“Send message”,
“Send Message to”选择一个或多个要发送消息的用户组,组选最后一个,
Send to Users选择我们之前新增的test
“Send only to”选择meijing 点一下add
最后点save