1 介绍
zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。
zabbix server可以单独监视远程服务器的服务状态;同时也可以与zabbix agent配合,可以轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
2 工作原理
一个监控系统运行的大概的流程是这样的:
zabbix agent需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agent收集数据分为主动和被动两种模式:
主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy
被动:server向agent请求获取监控项的数据,agent返回数据。
(二)zabbix-agent的安装----官网预编包下载安装。
首先登陆到https://www.zabbix.com/download_agents
https://cdn.zabbix.com/zabbix/binaries/stable/5.0/5.0.10/zabbix_agent-5.0.10-linux-3.0-amd64-static.tar.gz 下载最新5.0LTS版
http://repo.zabbix.com/zabbix zabbix官方选择rpm源下载
1、创建zabbix用户
useradd zabbix -s /sbin/nologin
mkdir /usr/local/zabbix
cd /usr/local/zabbix
2、上传安装包 到目录/usr/local/zabbix下并解压
tar zxvf zabbix_agent-5.0.14-linux-3.0-amd64-static.tar.gz -C /usr/local/zabbix
解压之后,出现下面三个目录:
bin conf sbin
3 、创建软连接
在bin目录下zabbix_sender, zabbix_get 将这两个命令建立软连接到/usr/bin目录下面。在sbin目录下。是zabbix 的客户端的可执行文件,用来获取和监控数据环境。类似建立软连接到/usr/sbin
ln -s /usr/local/zabbix/bin/zabbix_sender /usr/local/zabbix/bin/zabbix_get /usr/bin
ln -s /usr/local/zabbix/sbin/zabbix_agentd /usr/sbin
4、配置文件zabbix_agent.conf
在conf目录下有一个zabbix_agentd.conf,这个就是zabbix-agent的配置文件。我们将它copy到/usr/local/etc目录下面。
cp /usr/local/zabbix/conf/zabbix_agentd.conf /usr/local/etc/
vi /usr/local/etc/zabbix_agentd.conf
zabbix_agentd.conf修改如下:
LogFile=/var/log/zabbix/zabbix_agentd.log
Server=192.168.1.1 #zabbix server的ip地址,多个ip使用逗号分隔
ServerActive=192.168.1.1 #zabbix 主动监控server的ip地址,使用逗号分隔多IP,如果注释这个选项,那么当前服务器的主动监控就被禁用了
Hostname=Zabbix server #重要:客户端的hostname,不配置则使用主机名
:wq保存退出。
5、创建/var/log/zabbix/并给予权限。
mkdir /var/log/zabbix/ touch /var/log/zabbix/zabbix_agentd.log
chmod 755 -R /var/log/zabbix/
chown zabbix:zabbix /var/log/zabbix/
6、在客户端上添加zabbix的监控端口(默认会有,跳过)
vim /etc/services
添加如下内容
zabbix-agent 10050/tcp
zabbix-agent 10050/udp
保存退出!
7、拷贝启动脚本并添加执行权限
cp /usr/local/zabbix/sbin/zabbix_agentd /etc/init.d
chmod a+x /etc/init.d/zabbix_agentd
8、启动zabbix客户端
/etc/init.d/zabbix_agentd
9、关闭防火墙或者防火墙开启10050端口
现在安装成功了!
10、设置zabbix开机启动
cd /usr/lib/systemd/system
vim zabbix-agent.service
[Unit] Description=Zabbix Agent After=syslog.target After=network.target [Service] Environment="CONFFILE=/etc/zabbix/zabbix_agentd.conf" EnvironmentFile=-/etc/sysconfig/zabbix-agent Type=forking Restart=on-failure PIDFile=/run/zabbix/zabbix_agentd.pid KillMode=control-group ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE ExecStop=/bin/kill -SIGTERM $MAINPID RestartSec=10s [Install] WantedBy=multi-user.target
(三)zabbix-agent安装----yum的安装方式
1.应用场景:
Zabbix监控系统提供两种监控Linux主机的方法,一种是启用主机上的SNMP协议,另一种是在主机上安装Zabbix Agent服务,本篇介绍Linux系统下Zabbix Agent的安装与使用。
2.添加Repository:
本文使用yum方式安装Zabbix Agent,在安装前首先添加对应的yum repository,以下列出了CentOS/RHEL版本的添加地址:
zabbix rpm源 https://repo.zabbix.com/zabbix/
# https://repo.zabbix.com/zabbix/5.2/rhel/7/x86_64/zabbix-agent-5.2.5-1.el7.x86_64.rpm 5.2zabbix-agent
CentOS/RHEL 7:
# rpm -Uvh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
CentOS/RHEL 6:
# rpm -Uvh http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
CentOS/RHEL 5:
# rpm -Uvh http://repo.zabbix.com/zabbix/3.2/rhel/5/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
其实这个rpm包是可以在官网上找到的。在该网址下:https://www.zabbix.com/download
3.安装Zabbix Agent
yum install zabbix-agent
4.编辑Zabbix Agent 配置文件
vim /etc/zabbix/zabbix_agentd.conf
Server=[zabbix server ip]
ServerActive=[zabbix server ip]
Hostname=[ Hostname of client system ]
5.重启Zabbix Agent
service zabbix-agent restart
6.添加开机启动
chkconfig zabbix-agent on
zabbx模板下载地址:https://share.zabbix.com/