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"
导入数据表
[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配置文件,在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,需调节新配置
修改配置文件
[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
(3)Zabbix server details 定义name:101.108,点击Next
(4)Pre-Installation summary 界面出现配置的所有信心,确认无误后,点击Next
(5)显示配置文件位置,点击Finsh,完成安装
(6)开始界面,默认输入用户名和密码为:admin zabbix
(7)zabbix安装完成
(8)在右上角 Profile->User->Chinese(zh_CN)->Save,即可改变默认页面为中文
二、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,端口后,点击存档
5、定义主机模板,即监控的内容
配置->主机->点击dir主机->模板->添加->选择模板:Template OS Linux->选择->存档
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/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