Zabbix 安装
【官方文档】:Zabbix Documentation 4.0使用手册
1. 安装包下载
zabbix官方下载库:http://repo.zabbix.com/zabbix/,内含各个系统,各个版本的整体安装包和组件安装包
rpm -ivh http://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
4.4:版本
rhel:系统类型
7:系统版本
x86_64:系统是32位还是64位
如果下载失败,可到相应的版本库下载具体的组件rpm包;
2. 安装步骤
2.1 组件安装
yum install zabbix-server-mysql zabbix-web zabbix-web-mysql zabbix-agent
如果提示缺少libmysqlclient.so.18()(64bit):有缺少的需求 libmysqlclient.so.18()(64bit)
2.2 初始化zabbix数据库
2.2.1 数据库创建zabbix账户和密码
- mysql -uroot -p密码
- create database zabbix character set utf8 collate utf8_bin;
- grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
- quit;
如果MySQL是8.0及以上版本,创建用户会报错,请参考:
MySQL8.0的默认身份验证插件有问题,请参考:
2.2.2 初始化数据表
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
2.3 配置文件
2.3.1 zabbix_server.conf
vim /etc/zabbix/zabbix_server.conf
有错误信息先看日志
LogFile=/var/log/zabbix/zabbix_server.log DBName=zabbix DBUser=zabbix DBPassword=12345678 Timeout=4 LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid SocketDir=/var/run/zabbix SNMPTrapperFile=/var/log/snmptrap/snmptrap.log AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000 StatsAllowedIP=127.0.0.1
2.3.2 zabbix_agent.conf
vim /etc/zabbix/zabbix_agent.conf
有错误信息先看日志
PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=127.0.0.1 ServerActive=127.0.0.1 Hostname=bus-zabbix #此处必需和web界面配置的保持一致 Include=/etc/zabbix/zabbix_agentd.d/*.conf
2.3.3 httpd.conf
web界面的访问通过 httpd 服务监听的端口访问;
Listen 80
如果配置中为默认端口,安装完成后在浏览器输入 192.168.xxx.xxx/zabbix 访问,
如果不是默认端口,则输入192.168.xxx.xxx:port/zabbix 访问
默认账户信息:Admin/zabbix
2.3.4 zabbix.conf
vim /etc/httpd/conf.d/zabbix.conf
# # Zabbix monitoring system php web frontend # Alias /zabbix /usr/share/zabbix <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Require all granted <IfModule mod_php5.c> php_value max_execution_time 300 php_value memory_limit 128M php_value post_max_size 16M php_value upload_max_filesize 2M php_value max_input_time 300 php_value max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Shanghai #时区信息配置 </IfModule> </Directory> <Directory "/usr/share/zabbix/conf"> Require all denied </Directory> <Directory "/usr/share/zabbix/app"> Require all denied </Directory> <Directory "/usr/share/zabbix/include"> Require all denied </Directory> <Directory "/usr/share/zabbix/local"> Require all denied </Directory>
3. 常用命令
3.1 启动命令
systemctl start zabbix-server 启动zabbix服务
systemctl start zabbix-agent 启动zabbix代理服务
systemctl start httpd 启动web服务
3.2 查询命令
zabbix_agentd -t item-key 在部署 zabbix-agent 的节点上查询对应的 item-key 的值
zabbix_get -s 192.168.145.135 -p 10050 -k'item-key' 在 server 端查询 192.168.145.135 节点的 item-key 的值,在 server 端能查到值才可以显示到 web 界面,agent 节点能查询到数据不一定在 server 端可以查到数据
4. 其他事项
4.1 SeLinux
SeLinux也会阻断server对10050端口的监控,因此建议直接关闭Selinux。具体方法为:
setenforce 0 #临时关闭selinux。如果关闭成功,getenforce会回显permissive
vim /etc/sysconfig/selinux,将SELINUX=enforcing 改为 SELINUX=disabled
注意,该设置只有在系统reboot以后才会生效。如要立即生效,则使用setenforce 0 的方法临时关闭
4.2 firewalld
systemctl status firewalld 查看防火墙状态;
systemctl stop firewalld 关闭防火墙;
如果不能关闭防火墙,则需要把 server 的10051 端口开放;