zabbix-server,zabbix-proxy,zabbix-agent应用演示:

zabbix是一款监控软件,主要完成采集被监控主机上的某些指标数据,并对其进行观察,如果超出设定的阈值,可定义触发事件,执行某些命令操作,以便能保证系统正常运行。


一般由server端和agent端组成,还可有proxy端;

server端其实就是监控主机,所有监控数据都汇总到此server端,便于监控,触发事件等操作;

agent端就是被监控主机,它与server端直接通信,被监控主机的数据直接传输给server端;

proxy端其实可认为是一个中间人,就是在agent端与server端中间加了个中间人,由这个中间人代为负责把agent端监控的数据转交给server端;


对于不同的角色配置文件有所不同,它们所依赖到的程序包也不大一样;


server主机和数据库在同一台机器上:192.168.255.2

zabbix agent端:192.168.255.3

zabbix proxy端:192.168.255.4

被代理端:192.168.255.5


配置zabbix server主机:

安装zabbix-server依赖相关程序

]# yum -y install php-mysql httpd

]# systemctl start httpd.service

]# yum -y install mariadb-server

]# systemctl start mariadb.service

]# ss -tnl 确保3306端口监听

]# cat /etc/my.cnf

填写:

skip_name_resolve=on

innodb_file_per_table=on

记下mysql用于本机通信的socket路径,后面修改zabbix server配置文件中会用到:

socket=/var/lib/mysql/mysql.sock


]# mysql

> CREATE DATABASE zabbix CHARSET 'utf8';

> GRANT ALL ON zabbix.* TO zbxuser@'192.168.255.%' IDENTIFIED BY 'zbxpass';

> GRANT ALL ON zabbix.* TO zbxuser@'127.0.0.1' IDENTIFIED BY 'zbxpass';

> FLUSH PRIVILEGES;


]#  yum -y install zabbix-server-mysql zabbix-web zabbix-agent zabbix-web-mysql zabbix-sender zabbix-get


]# cd /usr/share/doc/zabbix-server-mysql-3.0.2/

]# gzip -d create.sql.gz

]# mysql -h127.0.0.1 -uzbxuser -p zabbix < create.sql


]# vim /etc/zabbix/zabbix_server.conf

wKioL1dAo_7DE36FAABOUWh_zI8462.png

wKiom1dBD9XD1OmvAABGXwJ4DrM102.png


注意:centos7.1中trousers程序包版本不支持zabbix,所以只有centos7.2以上版本才支持,因此,需升级trousers版本到trousers-0.3.13-1.el7.x86_64.rpm

]# rpm -U --nodigest trousers-0.3.13-1.el7.x86_64.rpm 

]# systemctl start zabbix-server.service


还要指明zabbix的时区,即配置php的时区指定:

]# vim /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai


输入浏览器:http://172.18.11.113/zabbix

第一次启动时,会自动跳转到setup安装操作;点击下一步:

wKioL1dApRHjqUxrAADHxgmjBkk768.png

查看都是ok状态:点击下一步:输入数据库相关信息

wKiom1dApMOzJeCaAACh8v8m-5Y450.png填入在数据库中设置的ip地址,用户名、密码等信息:

wKiom1dApafBgjUOAACKvN0ZTJw889.png


填入server端相关信息,此处user可省略,下一步:

wKioL1dAp7Kxd7ozAABrHZcVsuw258.png

确认信息:

wKiom1dApuPSNOqCAACbsBH0t0Q398.png

点击完成;

wKioL1dAp9ex9vHXAABtQNRN_1o301.png

zabbix的默认登录名为admin,密码为zabbix;

wKioL1dAp9nzSq30AABL75jOI4Y156.png

显示的主页面:

wKiom1dBENfS5K78AAEXkmPpv4M889.png


添加一台zabbix agent端:

在server端的zabbix主页面添加agent端,还要在agent端修改配置文件:


在agent端配置:

]# yum install zabbix-agent zabbix-sernder

]# vim /etc/zabbix/zabbix_agentd.conf

Server=192.168.255.2


]# systemctl start zabbix-agent.service

]# ss -tnl 查看10050端口监听


在server端的zabbix页面添加主机:

Configuration--》Hosts--》 Create host:

wKiom1dBFK6Aqkh3AAC5tS8qRVg489.png然后,再连接一个预定义的内置模板,仅用于显示采集到的数据:

wKiom1dBFSHRwwe8AACfc5MtYS8128.png


添加完成后,等一会,数据采集到后即可看见相关数据:

wKiom1dBFkSiOw6tAAEJ4Bcln7o027.png

wKioL1dBFzTCkQ5vAAELaRKBg70886.png

wKiom1dBFkWyY_BsAAEcooiJ-Ko055.png

wKiom1dBFkWzEtd5AAEWreIf6HM213.png

添加一台zabbix agent端完成。


还可设置自动发现:如果有n台agent端,在zabbix agent端配置文件中指明:如果agent端工作在主动模式则需要配置,server端IP地址和hostname两项,如果agent端工作在被动模式仅需配置一项server端ip地址即可。


配置zabbix proxy代理端:

]# yum -y install zabbix-proxy-mysql zabbix-agent zabbix-sender zabbix-get


编辑zabbix proxy的配置文件:

编辑内容与配置server端类似,只不过是真的proxy端设置而已;

安装数据库:

]# yum -y install mariadb-server

]# systemctl start mariadb.service

]# mysql

> CREATE DATABASE zbxproxy CHARSET 'utf8';

> GRANT ALL ON zbxproxy.* TO 'zbxproxy'@'192.168.255.%' IDENTIFIED BY 'zbxpass';

> FLUSH PRIVILEGES;


测试登录数据库:

]# mysql -uzbxproxy -h192.168.255.4 -pzbxpass


]# vim /etc/zabbix/zabbix_proxy.conf

Server=192.168.255.2

Hostname=Zabbix proxy1

DBHost=192.168.255.4

DBName=zbxproxy

DBUser=zbxproxy

DBPassword=zbxpass

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

ConfigFrequency=60


]# cd /usr/share/doc/zabbix-proxy-mysql-3.0.2/

]# gzip -d /usr/share/doc/zabbix-proxy-mysql-3.0.2/schema.sql.gz

]# mysql -uzbxproxy -h192.168.255.4 -p zbxproxy < schema.sql

导入库后,可进去查看;


]# systemctl start zabbix-proxy

]# ss -tnl 查看监听10051端口;


]# vim /etc/zabbix/zabbix_agentd.conf

Server=127.0.0.1, 192.168.255.4

ServerActive=127.0.0.1, 192.168.255.4,192.168.255.2

Hostname=host2


]# systemctl start zabbix-agent


在server端zabbix页面添加proxy:

wKioL1dBJqeTzIhQAAB3QagicQc650.png

填入此前设置的名称,选择Active后,点击Add即可;

wKioL1dBNBrQmn5cAACB-xMjJWQ089.png

再在创建要监控的主机:选择代理

wKioL1dBNQSSy6x3AADdyXEhqp8892.png

wKiom1dBNBSBg5MOAABib12ba7Q046.png

给这个被监控主机添加一个item监控项,点击Add即可;

wKioL1dBNZmgoKVyAADCdJQpyZY632.png

这样,以便观察由代理端是否能检测到被监控主机的数据信息;如果经配置没问题,过一会,应该会有数据采集到:

wKioL1dBNpjDNlMlAAEDtQIIZCY488.png


wKiom1dBNanCBj7tAADGH_OXDgo314.png

这样一个zabbix proxy代理就配置完成了。

具体设置item监控项及trigger事件后做什么操作,可根据实际应用自行定义。