Zabbix配置

来源:互联网 发布:二手交易软件 编辑:程序博客网 时间:2024/06/06 14:13

参考:https://www.zabbix.org/wiki/InstallOnCentOS_RHEL

      http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/

软件下载:

     http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/

http://sourceforge.net/projects/zabbix/files/latest/download?source=pdlp

http://www.mirrorservice.org/sites/downloads.sourceforge.net/z/za/zabbix/ZABBIX%20Latest%20Stable/

 

环境

Centos6.x

Zabbix2.2.4

 

zabbix-server:192.168.2.164

zabbix-agent:192.168.2.216

 

服务器客户端均安装存储库:

rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX

yum -y install http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm

yum -y install http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-get-2.2.10-1.el6.x86_64.rpm

 

服务器安装:

[root@master ~]#yum -y install mysql-server zabbix-server-mysql zabbix-web-mysql zabbix-agent

 

若无法下载依赖包,搜索依赖包依次安装

[root@master ~]# yum -y install ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/6.3/x86_64/updates/security/php-bcmath-5.3.3-26.el6.x86_64.rpm

[root@master ~]# yum -y install ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/6.3/x86_64/updates/security/php-mbstring-5.3.3-26.el6.x86_64.rp

 

客户端安装:

[root@node ~]# yum -y install zabbix-agent

 

首先防火墙配置,关闭selinux  

服务端开启端口web80mysql3306zabbix-server10051

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT

客户端开启端口10050

-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT

 

服务端配置:

修改时区

[root@master ~]# vi /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai

[root@master ~]# service httpd start

初始化数据库:

[root@master ~]# service mysqld start

[root@master ~]# mysql_secure_installation

zabbix创建数据并赋予权限

[root@master ~]# mysql -u root -p

Mysql> create database zabbix character set utf8;

Mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';

Mysql> flush privileges;

zabbix数据库导入到创建的数据库

[root@master ~]# mysql -u zabbix -pzabbix zabbix < /usr/share/doc/zabbix-server-mysql-2.2.4/create/schema.sql

[root@master ~]# mysql -u zabbix -pzabbix zabbix < /usr/share/doc/zabbix-server-mysql-2.2.4/create/images.sql

[root@master ~]# mysql -u zabbix -pzabbix zabbix < /usr/share/doc/zabbix-server-mysql-2.2.4/create/data.sql

修改zabbix-server配置文件

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

[root@master ~]# grep -v '^$' /etc/zabbix/zabbix_server.conf | grep -v '^#'

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

DBSocket=/var/lib/mysql/mysql.sock

………

启动zabbix-server

[root@master ~]# chkconfig zabbix-server on

[root@master ~]# /etc/init.d/zabbix-server start

Starting Zabbix server:                                   [确定]

确定mysqldhttpd已正常运行

 

访问web配置zabbix监控,连接后台数据库,完成监控设置

http://192.168.2.164/zabbix

 

确认所有的选项都是ok

填写连接数据库的信息,并测试连接,成功则继续下一步

Zabbix服务及服务器,并确认

输入用户名和密码登陆(默认用户Admin,密码zabbix

若出现以下提示,关掉selinux或setsebool httpd_can_network_connect on

为自己创建用户,切换到Adminisstation面板下的Users,点击右上角的创建用户

user栏面填写好用户信息,添加到那个组

切换到Media添加邮箱地址,确认后保存

创建完成后,可查看用户信息和所属组

 

客户端配置:

修改配置文件,指定zabbix-server服务器,并启动agent服务
[root@node ~]# sed -i 's/127.0.0.1/192.168.2.164/' /etc/zabbix/zabbix_agentd.conf

[root@node ~]# chkconfig zabbix-agent on
[root@node ~]# /etc/init.d/zabbix-agent start

 

配置监控:

添加监控主机

切换到configration面板的hosts,添加监控主机

填写ip地址和所属组

 

切换到Template,搜索模板并添加

带有Z标志的变为绿色,则已监控

创建项目(监控ntp端口为例udp123

[root@node ~]# netstat -anltup | grep ntpd

udp   0     0      192.168.2.216:123              0.0.0.0:*      2973/ntpd          

udp   0     0      127.0.0.1:123                   0.0.0.0:*       2973/ntpd          

udp   0    0     0.0.0.0:123                    0.0.0.0:*      2973/ntpd          

udp   0    0     fe80::20c:29ff:fec7:882a:123   :::*           2973/ntpd          

udp   0    0     ::1:123                        :::*           2973/ntpd          

udp   0     0      :::123                          :::*           2973/ntpd

选择要要创建项目的主机→点击Items

点击右上角的创建项目

点击select查找相应的key

修改相应的信息配置

为这个项目创建触发器

添加表达式

添加对应的item

完成这个函数

指定这个告警的级别

触发告警:

linux系统中关掉ntp服务

回到webmonitoring面板,查看最新的告警和状态

再启动ntp服务,查看这个trigger的状态

 

邮件设置:

创建一个触发邮件动作,也可修改默认的动作

可自己定制邮件的形式,标题包含什么内容等

切换到操作

设置邮件接收地址

切换到管理,修改告警通知类型,这里为邮件方式

填写邮件服务器

触发告警,查看这个告警的Action,已执行

登陆收信邮箱,查看邮件内容

查看这个tirrger的状态

 

监控pgsql

下载pgsql监控模板与配置文件userparameter_pgsql.conf及脚本

文件下载地址:http://pg-monz.github.io/pg_monz/index-en.html

解压该文件

userparameter_pgsql.conf配置文件放在/etc/zabbix/zabbix_agentd.d/目录下

[root@node pg_monz]# cp userparameter_pgsql.conf /etc/zabbix/zabbix_agentd.d/

将脚本文件放在指定的目录下(可自定义目录)给予可执行权限

导入模板

回到web,导入pgsql的模板

选择该模板,并修改模板的Macrovalue

{$PGDATABASE} postgres           要监测的数据库

{$PGLOGDIR} /var/lib/pgsql/9.3/data/pg_log          pgsqllog的目录

{$PGHOST} 127.0.0.1              pgsql服务器的地址

{$PGPORT} 5432                    pgsql的端口

{$PGROLE} zabbix                 监控的用户

{$PGSCRIPTDIR} /etc/zabbix/bin   脚本存放的目录

修改此模板的Number of postgres process这个itemkey

proc.num[postmaster,,,]

 

 

选择PostgreSQL服务器,添加PostgreSQL模板

可查看最新数据或graphs数据流量图



监控mysql

创建一个监控服务器用于收集数据的数据库用户

mysql> GRANT USAGE ON *.* TO 'zabbix'@'%' IDENTIFIED BY '12345678';

mysql> GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY '12345678';

mysql> flush privileges;

创建.my.cnf文件,填写监控用户的用户名和密码

[root@node ~]# cat /etc/zabbix/.my.cnf

# Zabbix Agent

[mysql]

host     = localhost

user     = zabbix

password = 12345678

socket   = /var/run/mysqld/mysqld.sock

[mysqladmin]

host     = localhost

user     = zabbix

password = 12345678

socket   = /var/run/mysqld/mysqld.sock

查找userparameter_mysql.conf文件,并放zabbix_agentd.d的目录下

ll /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

重新启动zabbix_agentd服务,测试get

zabbix_get -s 10.254.3.72 -k mysql.status[Uptime]

如果提示参数已经存在,将参数重命名或者删掉,继续用get测试,

如果get测试通过,页面依然提示错误,多刷新画面等一段时间就好了。

mysql数据库添加数据库模板

查看是否正确添加收集到数据


监控web:

查看一个url的状态

选择作为访问web的客户端

创建 web scenario

自定义这个screnaio的名字

切换到steps填写完整的url,及web页面正常状态下的返回值

查看这个web的的状态

创建trigger,添加web screnario后会自动创建相应的item,但是我们看不到

查找添加相应的item

创建这个trigger的触发条件函数、及级别

以同样的步骤创建其他相应的trigger,触发条件函数是不一致的

触发一个告警,查看邮件

 

 

0 0