1 安装准备
zabbix 安装依赖于数据库和httpd服务,这里使用mysql作为存储数据库,因此安装zabbix前确认mysql服务器和httpd是否已经正常安装且启用
下载zabbix相关包的官方路径是:https://www.zabbix.com/download
建议mysql配置文件如下:
vim/etc/my.cnf.d/server.cnf
[server]
skip_name_resolve =ON
innodb_file_per_table = ON
innodb_buffer_pool_size =256M
max_connections = 2000
log-bin =master-log
2 服务器端安装
1 安装zabbix包
#安装以下的包,生成yum源,以下包可以从官网上直接获得
yum install zabbix-release-3.4-2.el7.noarch.rpm
#安装完成上面的服务包后,用yum repolist检查,如果yum源里有zabbix包的源,则执行如下的步骤
yum installzabbix-server-mysql zabbix-web zabbix-web-mysql zabbix-agent zabbix-getzabbix-sender
2 创建zabbix数据库和zabbix专属用户
CREATE DATABASE zbxdbCHARACTER SET 'utf8';
GRANT ALL ON zbxdb.* TO'zbxuser'@'%' IDENTIFIED BY 'Pass1234';
grant all on zbxdb.* to 'zbxuser'@'localhost'identified by 'Pass1234';
3 生成表的sql脚本,用配置里的脚本直接生成
cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz./
gunzip create.sql.gz
导入创建脚本,开始创建,成功后,生成140张表
mysql -u zbxuser -h192.168.1.73 -pPass1234 zbxdb
完成zabbix的database环境
4 修改配置文件
查看配置段里的配置项
grep -i "^###"zabbix_server.conf
vim /etc/zabbix/zabbix_server.conf
#修改general配置段
ListenPort=10051
SourceIP=192.168.1.73
#zabbix认证客户端是根据服务器端的ip实现
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0 #0表示不滚动
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
#设置db服务器
DBHost=192.168.1.73
DBName=zbxdb
DBUser=zbxuser
DBPassword=Pass123456
DBPort=3306
DBSocket=/tmp/mysql.sock #如果用rpm安装,路径可能不一样
5 启动zabbix server
systemctl restart zabbix-server.service
6 使用web-gui页面打开,需要配置httpd页面,主要修改时区信息,相关配置文件如下
启用时区设置,有两个地方可以设置,在zabbix里配置,或者在
php 配置文件里配置时区
方法一
vim /etc/httpd/conf.d/zabbix.conf
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 always_populate_raw_post_data-1
php_value date.timezone Asia/Shanghai
方法二:php 配置文件里配置时区
vim /etc/php.ini
[Date]
date.timezone =Asia/Shanghai
7.启用httpd后做初始化设置,浏览器打开,页面如下
http://192.168.1.72/zabbix/setup.php
设置数据库连接相关信息
完成初始化后,安装生成的配置文件:/etc/zabbix/web/zabbix.conf.php
配置完成后登录。默认的用户名是admin,默认密码是zabbix,登录后在修改密码。
登录成功,完成zabbix server端的安装和配置
3 agent端安装
注意,可以利用ansible部署被监控主机的agent,然后通过主机扫描的功能,自动发现主机后加入模板,省得手动配置,但是主机扫描消耗资源,一般第一次安装才使用,后面服务器端关闭该功能。后续会介绍该功能。
这里仅介绍手动安装agent的方法
先安装repo包
rpm -ivhzabbix-release-3.4-2.el7.noarch.rpm
安装agent包,注意,该网站不稳定,经常出现不能访问的情况导致包下载不了。建议重试。
yum -y installzabbix-agent zabbix-sender
被动监控要设定允许哪台server来采集数据,主动和被动的模式是由服务器决定的。
vim/etc/zabbix/zabbix_agentd.conf
#被动监控
##### Passive checks related,被动监控相关配置,服务器端向agent发送请求进行数据采集
Server=192.168.1.72
ListenPort=10050
ListenIP=0.0.0.0 #表示本机的所有ip
#主动监控
##### Active checks
related,主动监控相关配置,agent端主动向server周期性发送数据;
ServerActive=192.168.1.72
Hostname=node71.sunny.com #这里的主机名是本机的主机名,必须与服务器配置的监控主机的主机名称保持一致;
启动agent服务
systemctl startzabbix-agent.service
到这里agent端配置完成
4 测试
有两种方法可以获取到agent端的数据
方法一
如果需要完成自动监控,可以到服务器的网页上进行配置,将主机加入监控系统,对主机进行items设置
方法二
在服务器端手动执行设置key的命令.
zabbix_get -s 192.168.1.71-p 10050 -k "system.cpu.intr"