目录
一、zabbix介绍 2
二、zabbix服务端安装 2
1、安装zabbix软件源 2
2、安装zabbix和LAMP 3
3、web页面安装zabbix 3
4、zabbix添加中文支持 6
二、linux agent端的安装 7
1、安装zabbix软件源 7
2、安装zabbix agent 7
3、配置并启动服务 7
三、windows agent端的安装 7
1、下载客户端软件 7
2、windows主机上安装 8
四、zabbix配置 8
1、创建主机组 8
2、添加主机 9
3、创建模板 10
4、创建监控项 11
5、创建触发器 12
6、创建图形 13
7、创建用户组 14
8、创建用户 15
9、 报警方式 16
9、设置报警 18
五、监控项[key] 20
1、基于端口 20
2、监控进程 20
3、网卡流量 20
4、查看CPU核数 21
5、查看系统的系统启动时间和当前时间 21
6、查看系统的简单信息 21
7、查看系统内存大小 21
8、查看某文件的大小 21
9、查看文件是否存在 21
六、自动发现 21
1、添加自动发现的规则 21
2、为发现的主机创建动作 22
五、zabbix代理 24
1、proxy的安装配置 24
2、agent端的配置 25
3、zabbix的设置 25
六、遇到的问题 26
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix的界面
zabbix主要有5个主菜单栏:Moniting(监测),Inventory(库存),reports(报告),configuration(配置),Adminstration(管理)
每个主菜栏下面都有二级菜单.
Monitoring:主要是对监控对象的一些相关展示,比如说对web应用的展示。
Inventory:资产管理,类似于公司里的资产管理,比如一个硬件设备,这里可能会标识设备的名称,操作系统,mac地址,资产编号等
Reports:这里主要展示了zabbix服务的状态,比如主机数,报警数。还有就是展示了一些设备的可用性报表等相关信息。
Congfiguration:这里主要用来对系统的配置,比如创建主机,创建模版,创建报警,创建流量图片等相关应用基本的配置主要通过这里来实现。
Adminstration: 这里也是用了对系统进行配置,和configuration相比,这里的配置主要实现对zabbix本身的一些相关的配置工作,比如登录zabbix的用户的创建等工作主要通过这里来配置
#wget http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
#rpm -ivh zabbix-release-2.4-1.el6.noarch.rpm
# yum install zabbix zabbix-get zabbix-server zabbix-server-mysql zabbix-web zabbix-web-mysql mysql-server http php
配置php
vi /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
post_max_size = 32M
max_input_time=300
memory_limit = 128M
启动apache和mysql 并设置开机启动
service httpd start
service mysqld start
Chkconfig httpd on
Chkconfig mysqld on
设置mysql密码
mysqladmin -uroot password 'mysql_pass';
创建数据库
#mysql –uroot –p
> create database zabbix character set utf8;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
> flush privileges;
导入数据库(数据库)
cd /usr/share/doc/zabbix-server-mysql-2.4.1/
# mysql -uzabbix -pzabbix zabbix < schema.sql
# mysql -uzabbix -pzabbix zabbix < images.sql
# mysql -uzabbix -pzabbix zabbix < data.sql
配置 zabbix_server.conf
vi /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
启动zabbix服务,并设置开机启动
service zabbix-server start
chkconfig zabbix-server on
输入http://ip/zabbix
各项检查都ok,点下一步
测试数据库连接ok,下一步
填入数据库的信息
host和 name都是本机ip或者localhost ,端口 10051
host和 name都是本机ip或者localhost ,端口 10051
安装完成
输入用户名admin,密码zabbix 进入主zabbix主界面
最新版本zabbix的web界面将中文支持功能关闭,打开方法:
vi /var/www/html/zabbix/include/locales.inc.php
#wget http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
#rpm -ivh zabbix-release-2.4-1.el6.noarch.rpm
#yum install zabbix-sender zabbix-agent zabbix
配置配置 zabbix_agentd.conf 文件
vi /etc/zabbix/zabbix_agentd.conf
LogFile=/tmp/zabbix/zabbix_agent.log
Server=127.0.0.1 (写zabbix服务器的ip)
ServerActive=127.0.0.1 (写zabbix服务器的ip)
Hostname=Zabbix server (zabbix服务器页面添加时的主机相同)
UnsafeUserParameters=1
Include=/etc/zabbix/zabbix_agentd.conf.d/
service zabbix-agent restart
chkconfig zabbix-agent on
http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.win.zip
① 将zabbix文件夹解压后放在C:\
② 在C:\zabbix\下 新建一个zabbix_agent.log文件
③ 在C:\zabbix\conf\下 ,修改zabbix_agentd.win.conf文件
Logfile= C:\zabbix\zabbix_agent.log
Server=172.16.15.210
Hostname=172.16.15.210
④ 打开CMD命令行,执行
64位
C:\zabbix\bin\win64\zabbix_agentd.exe -c C:\zabbix\conf\zabbix_agentd.win.conf -i
C:\zabbix\bin\win64\zabbix_agentd.exe -c C:\zabbix\conf\zabbix_agentd.win.conf -s
32位
C:\zabbix\bin\win32\zabbix_agentd.exe -c C:\zabbix\conf\zabbix_agentd.win.conf -i
C:\zabbix\bin\win32\zabbix_agentd.exe -c C:\zabbix\conf\zabbix_agentd.win.conf –s
参数解释
-c :指定配置文件所有位置 -i:安装客户端 -s:启动客户端
-x :停止客户端 -d:卸载客户端
⑤ 在"运行"中,输入"services.msc",在里面找到"ZABBIX AGENT",并启动服务
默认ZabbixAgent自己启动,并且自动启动
组态—主机群组—创建主机群组
填入组名
在主机的右边加入主机,或者链接的模板
组态—主机—创建主机
主机名称: 填入主机名
群组: 从右边选择要加入的群组
端点代理: 输入需要监控的主机ip
也可以选择SNMP JMX IPMI 方式,填入相应的ip
选择要链接的模板
填入模板名
群组 将此模板链接在哪个组
主机/模板 此模板应用在哪个主机或者链接别的模板
连接别的模板
组态—模板—选择要添加项目的模板—项目—创建项目
组态—模板—选择要添加触发器的模板—创建触发器
组态—模板—选择要添加图形的模板—创建触发器
添加需要创建图形的项目
、
管理——用户——选择用户群组——创建用户群组
设置一些读写的权限
组态——用户——选择用户——创建用户
添加通知用户的方式
组态——示警媒介类型
type 选择一个媒介类型 email
smtp server 设置smtp server用来发送邮件
smtp helo 设置正确的smtp helo值,一般是domain name
smtp email 一个邮件地址,会显示在邮件的from前面,表示从哪里发出来的邮件
组态——动作——选择相应的事件——创建动作
填入触发的信息
操作: 可以向某些人发邮件,或者执行命令
Default operation step duration 发送通知的周期,默认一个小时
Operation details 操作细节
operation type 操作类型(包含发送信息,执行远程命令)
send to user groups 发送给组用户
send to users 发送给用户
default messages 默认发送的方式,有邮件,Jabber 和SMS,需要提前定义
net.tcp.port[,3306] 返回值1-存在,2-不存在
proc.num[mysqld] 返回值 进程数
进 net.if.in[if,
出 net.if.out[if,
总 net.if.total[if,
返回值bytes
system.cpu.num 返回值cpu的核数
system.boottime、system.localtime 返回值为启动时间和当前时间的时间戳
system.uname 返回值类似 uname–a
vm.memory.size[total],返回值单位bytes
vfs.file.size[file] 比如vfs.file.size[/var/log/zabbix/zabbix_server.log] 返回值bytes
vfs.file.exists[file] 返回值 0-存在,1-不存在
重点:发现规则中的检测项—选用agent的方式:key如 system.uname
为自动发现规则所创建的动作中的条件:动作的规则,发现的状态,发现的类型
组态——探索——创建发现规则
填入需要检查的名字,发现的ip范围,和添加一个新的检查项(必选)
组态—动作—选择发现—创建动作
选择触发此动作的条件
选择动作类型
name 为自动注册起个名字
conditions 自动注册的条件,一般为ip地址段或者前面发现的规则
new condition添加的发现主机的条件,可以选择地址段,或者之前定义过的发现规则
安装依赖包和mysql
yum -y install gcc mysql mysql-server mysql-devel net-snmp-devel
创建zabbix用户
groupadd zabbix -g 201
useradd -g zabbix -u 201 -m zabbix
创建zabbix日志目录
mkdir /var/log/zabbix
chown -R zabbix.zabbix /var/log/zabbix
编译安装
#tar zxvf zabbix-2.4.1.tar.gz
#cd zabbix-2.4.1
./configure --prefix=/usr/local/zabbix_agentd --sysconfdir=/etc/zabbix --enable-agent --enable-proxy --with-mysql --with-net-snmp
make
make install
service mysqld start
chkconfig mysqld on
设置mysql密码
mysqladmin -uroot password 'mysql_pass';
创建数据库
mysql –uroot –p
> create database zabbix character set utf8;
> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
> flush privileges;
导入数据库(数据库)
cd zabbix-2.4.1/database/mysql/
mysql -uzabbix -pzabbix zabbix < schema.sql
启动服务
/usr/local/zabbix_proxy/sbin/zabbix_proxy start
将agentd.conf 中的sever和server active指向proxy即可
Administration—Proxies—
proxy name 代理服务器名
proxy mode 选择主动还是被动
hosts 可以把已知的主机添加到代理端
1、中文支持
vi /var/www/html/zabbix/include/locales.inc.php
2、自动注册的问题
zabbix 服务端配置好自动发现,agent也指向服务端,自动发现一直失败
原因:zabbix之前添加过该agent,所以不会再发现,只能配置再注册
auto registration 是处理之前添加过的主机,出故障后来恢复正常后,自动被添加进来
3、host 和 templates不能独立存在,必须属于一个主机组
4、cpu load
Key值system.cpu.load[percpu,avg1] 每个cpu的负载
zabbix 2.0以上支持
key值system.cpu.load[,cpu] cpu的负载