zabix简介
zabbix(音同 z?bix)是一个基于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等平台上。
实验环境:Centos6.5
一、配置一个lamp平台
安装php-fpm、mysql-server、httpd、php-mysql
修改php-ini配置文件
date.timezone = Asia/Shanghai
启动mysql服务,并创建一个zabbix的数据库,并完成授权
mysql> create database zabbix;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on zabbix.* to ‘zbxuser‘@‘localhost‘ identified by ‘zbxpass‘;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on zabbix.* to ‘zbxuser‘@‘127.0.0.1‘ identified by ‘zbxpass‘;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
二、安装并配置zabbix-server
在server上安装如下zabbix包(这里安装的是zabbix2.4的包,包需要在噶un放网站下载,前提配置好yum源)
# yum install zabbix-2.4.0-1.el6.x86_64.rpm zabbix-agent-2.4.0-1.el6.x86_64.rpm zabbix-get-2.4.0-1.el6.x86_64.rpm zabbix-sender-2.4.0-1.el6.x86_64.rpm zabbix-server-2.4.0-1.el6.x86_64.rpm zabbix-server-mysql-2.4.0-1.el6.x86_64.rpm zabbix-web-2.4.0-1.el6.noarch.rpm zabbix-web-mysql-2.4.0-1.el6.noarch.rpm
编译zabbix的配置文件
1、#vim zabbix_server.conf
修改如下项
DBHost=172.16.1.1 //数据库服务器的IP地址
DBName=zabbix //数据库的名称
DBUser=zbxuser //连接数据库服务器的用户名
DBPassword=zbxpass //连接数据库服务器的用户密码
2、为zabbix数据库导入基础信息
使用命令
#mysql zabbix < schema.sql
3、启动服务
#service httpd start
#service php-fpm start
#service zabbix-server start
4、在浏览器输入172.16.1.1对zabbix服务的web页面进行初始化
5、为server端配置agent使其能监控自己
#vim zabbix_agent.conf
修改如下项:
Server=127.0.0.1,172.16.1.1 //允许来拉取数据的主机的IP地址
ServerActive=127.0.0.1,172.16.1.1 //主动通知来拉取数据的主机的IP地址(只有server与agent在同一主机时才有127.0.0.1)
Hostname=server.zhou.com //需与主机名保持一致
**************************************************
主机名修改方法:
#vim /etc/hosts
#vim /etc/sysconfig/network
#hostname New-HostName
****************************************************
此时server会自动将本机的agent添加进去
三、创建一个独立的agent端
安装的包:
# yum install zabbix-2.4.0-1.el6.x86_64.rpm zabbix-agent-2.4.0-1.el6.x86_64.rpm zabbix-sender-2.4.0-1.el6.x86_64.rpm
配置文件修改内容同上
添加主机:
四、配置zabbi-proxy代理server的
安装的包:zabbix-2.4.0-1.el6.x86_64.rpm zabbix-proxy zabbix-proxy-mysql
编辑配置文件“
#vim /etc/zabbix/zabbix_proxy.conf
Server=172.16.1.1 //*zabbix server的ip地址或主机名 Hostname=node2.zhou.com //*该主机名的配置需被zabbix server知道,并且在zabbix server前端配置时会用到 LogFile=/tmp/zabbix_proxy.log //pid文件的存放位置 DBName=zabbix_proxy //* DBUser=zabbix //* DBPassword=123456 //* ConfigFrequency=60 //zabbix proxy 想服务器检索配置数据信息的频率,在被动模式下该参数将被忽略 DataSenderFrequency=60 //zabbix proxy发送收集的数据给zabbix server的频率
***上述带‘*‘的是必须修改的***
启动服务在,在web页面上添加即可
五、自定义各项参数
由于在生产环境中自带的模版并不能完全满足我们的需求,所以我们需要自己定义键,模版等。
1、如何自定义键?
修改配置文件,启动自定义键这一项
UnsafeUserPaameters=1
其余可以不用修改
在文件/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf中添加如下内容
UserParameter=count.line.passwd,wc -l /etc/passwd|awk ‘{print $1}‘
重启客户端,在命令行上测试键是否可用
**zabbix_get的用法使用zabbix_get -h
2、如何自定义模版?
如果有大量的同一类设备,需要监控的信息也大致类似,一个个去修改相关参数比较麻
烦,我们可以通过创建一个 template 来简化操作。
Configuration->Host Groups->Template->Create Template
登入web界面,点击Configuration中的Templates的Create template
需要的参数按自己的需要填写
3、添加triggers
****添加Name,自己选定item ,定义报警范围Function 设置值
4、添加用户,并赋予相应的权限:
**这里的收家人可以是多个,报警级别可以自己选择(可多选),Type可以自己定义
**这里需要特别注意的是如果用户没有相应的权限会导致报警时的邮件我要发送达
5、定义media
Media,即告警方式,Zabbix 可以提供四类 Media:Email/SMS/Jabber/Script,通过
Administrator->Media Type 来修改或新增告警方式
Email 方式最常用的,填入相关的 SMTP 信息,即可通过邮件方式发送告警。