zabbix安装配置

参考:http://www.apelearn.com/bbs/thread-8087-1-1.html


一、服务端(rs1:192.168.101.108)安装zabbix

1、安装epel扩展源

[root@rs1 ~]# yum install -y epel-release


2、安装rpm包的lamp环境

[root@rs1 ~]# yum install -y  httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring


3、安装zabbix服务端

[root@rs1 ~]# yum install  zabbix20 zabbix20-agent zabbix20-server  zabbix20-server-mysql zabbix20-web zabbix20-web-mysql net-snmp-devel

确定吗?[y/N]:y


4、创建zabbix数据库

[root@rs1 ~]# mysql -uroot -p -e "create database zabbix" --default-character-set=utf8

导入数据表

[root@rs1 ~]# mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/schema.sql

[root@rs1 ~]# mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/images.sql

[root@rs1 ~]# mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/data.sql


5、修改mysql配置文件,修改或增加如下内容

[root@rs1 ~]# vim /etc/my.cnf

[mysql]
default-character-set = utf8
[mysqld]
character_set_server = utf8


启动mysql服务

[root@rs1 ~]# /etc/init.d/mysqld start


6、启动zabbix-server和zabbix-agent服务:

[root@rs1 ~]# /etc/init.d/zabbix-server start;/etc/init.d/zabbix-agent start

[root@rs1 ~]# netstat -lnp 

Proto Recv-Q Send-Q Local Address   Foreign Address   State    PID/Program name

tcp  0    0    :::10050      :::*          LISTEN   3132/zabbix_agentd

发现zabbix-server服务没有启动,查看日志

[root@rs1 ~]# less /var/log/zabbix/zabbix_server.log  

 3662:20160125:162841.201 [Z3001] connection to database 'zabbix' failed: [1044] Access denied for user ''@'localhost' to database 'zabbix'

发现权限不够,添加mysql用户,授权

 [root@rs1 ~]# mysql -uroot -e "grant all on *.* to 'zabbix'@'localhost' identified by 'zabbix';"


zabbix_server [27433]: cannot recreate Zabbix semaphores for IPC key 0x7a00145c Semaphore ID 4294967295: [22] Invalid argument

发现启动有问题,删除一个或更多的消息队列、信号量集或者共享内存标识

[root@rs1 ~]# ipcrm -S  0x7a00145c


编辑zabbix配置文件,在mysql上添加zabbix数据库的zabbix用户的密码,保存退出

[root@rs1 ~]# vim /etc/zabbix/zabbix_server.conf

DBPassword=zabbix

验证socket,确定zabbix配置文件中配置的通信端口位置准确,否则通信不正常

[root@rs1 ~]# ls /var/lib/mysql/mysql.sock

/var/lib/mysql/mysql.sock


重新启动zabbix,则zabix的server和agent服务正常启动:

[root@rs1 ~]# /etc/init.d/zabbix-server restart


[root@rs1 ~]# netstat -lnp

Proto Recv-Q Send-Q Local Address   Foreign Address   State    PID/Program name

tcp  0    0    :::10050      :::*          LISTEN   3132/zabbix_agentd

tcp  0    0    0.0.0.0:10051   0.0.0.0:*       LISTEN   4905/zabbix_server


二、网页安装配置zzabbix

1、浏览器打开http://192.168.101.108/zabbix

报错404 not found,原因是httpd服务没有重启,否则识别不了,需要重启Apache

[root@rs1 ~]# /etc/init.d/httpd restart


2、web导航安装,点击Next


(1)Check of pre-requisites 发现有三行检测失败,Fail,需调节新配置

zabbix安装配置_第1张图片

修改配置文件

[root@rs1 ~]# vim /etc/php.ini

post_max_size = 16M      #最大上传文件16M
max_execution_time = 300 # 最大执行时间300s
max_input_time = 300     #最大的input时间300s

[root@rs1 ~]# /etc/init.d/httpd restart

之后点击Retry,检测OK,点击Next



(2)Configure DB connectionDatabase port 表示使用默认的3306端口,数据库用户:zabbix 密码:zabbix,点击test connection,提示ok后,点击Next

zabbix安装配置_第2张图片



(3)Zabbix server details  定义name:101.108,点击Next

zabbix安装配置_第3张图片



(4)Pre-Installation summary 界面出现配置的所有信心,确认无误后,点击Next

zabbix安装配置_第4张图片



(5)显示配置文件位置,点击Finsh,完成安装

zabbix安装配置_第5张图片



(6)开始界面,默认输入用户名和密码为:admin zabbix

zabbix安装配置_第6张图片



(7)zabbix安装完成

zabbix安装配置_第7张图片


(8)在右上角 Profile->User->Chinese(zh_CN)->Save,即可改变默认页面为中文


zabbix安装配置_第8张图片



二、zabbix增加客户端监控

1、在客户机上(dir:192.168.101.230)安装2.0版本的zabbix

[root@dir ~]# yum install zabbix20-agent


2、编辑配置文件

Server=192.168.101.108
ServerActive=0.0.0.0:10050

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

[root@dir ~]# /etc/init.d/zabbix-agent start


3、在zabbix服务器(192.168.101.108)上检测通信是否正常,得到zabbix客户端的主机名dir,正常

[root@rs1 ~]# zabbix_get -s 192.168.101.230 -p10050 -k "system.hostname"

dir


4、在zabbix的web页面(http://192.168.101.108/zabbix)配置客户端

配置->主机->创建主机,输入主机名,可见名称,IP,端口后,点击存档

zabbix安装配置_第9张图片


5、定义主机模板,即监控的内容

配置->主机->点击dir主机->模板->添加->选择模板:Template OS Linux->选择->存档

zabbix安装配置_第10张图片

6、自定义模板,并添加items

configuration->Templates->create templates->定义名称:mytemplate 显示名称:mytemplate->groups选择Templates->Save 保存


7、将其他系统自定义templates的items复制myplate

Template App MySQL为例,点击items->选中需要复制的items->点击左下角的copy selected to->点击go->Group,点击Templates->Target 选择mytemplates->Copy

则在自定义的Templates内的Items中,可以看到copy的items


三、配置zabbix邮件告警

1、编辑配置

[root@rs1 ~]# mkdir -p /home/zabbix/bin

You have new mail in /var/spool/mail/root

[root@rs1 ~]# vim !$/baojing.sh

vim /home/zabbix/bin/binbaojing.sh

#!/bin/bash
echo "$3" | /bin/mail -s "$2" $1

[root@rs1 ~]# chmod +x !$

chmod +x /home/zabbix/binbaojing.sh

[root@rs1 ~]# vim /etc/zabbix_server.conf

AlertScriptsPath=/home/zabbix/bin #---用户自定义的media types脚本
ExternalScripts=/home/zabbix/bin  #--用户自定义的检查的脚本(item)

这样才能找到你的脚本,因为你在frontend中只是输入脚本的名称,没有路径


2、创建mediea types

“Administration" -->”Media types",点击右上角“Create Media Type"其中Description填"baojing” 或其它自定义名称,Type选择"Script",Script填”baojing.sh”然后点”Save”.  

3、创建user 

“Adimistration” --> “Users”在右上角,选择”Users”,点击”Create User”, alias: test1,自定义name和lastname password:123456;group 选择guest,回到上面点一下media,type 选择baojing,send to 写要发送邮件的邮箱,点add, 最后点save

4、创建action 

“configuration” --> actions,右上角“Create Actions”, Name自定义,我这里写”baojing”,其他默认,然后点右侧的“Operations”下的“New”按钮,“Operation Type”选择“Send message”,“Send Message to”选择一个或多个要发送消息的用户组,Send to Users选择我们之前新增的test1, “Send only to”选择baojing , 点一下add,最后点save