文章目录
软件版本如下:zabbix4.4.3;php7.2.25;apache2.4.41;mysql5.6.46(软件下载地址请自行百度并安装)
注:安装之前请提前准备好LAMP环境
1、关闭防火墙
Centos 7.5开始iptables就不存在了改成firewalld了,生产环境根据需要进行开启。
systemctl stop firewalld.service
systemctl disable firewalld.service
2、关闭SElinux
SElinux是美国国家安全局开发的安全子系统(SELinux策略是白名单原则,所以你需要非常清楚你的各项操作都需要哪些访问权限),建议关闭、生产环境根据需要进行开启。
vim /etc/selinux/config
# 把SELNUX=enforcing换成SELINUX=disabled
3、安装依赖包
yum -y install gcc gcc-c++ make unixODBC-devel net-snmp-devel libssh2-devel OpenIPMI-devel libevent-devel mysql-devel httpd mysql-server mysql mysql-devel php php-mysql fping
4、解压并编译安装
zabbix下载地址:[https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.3/zabbix-4.4.3.tar.gz](https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX Latest Stable/4.4.3/zabbix-4.4.3.tar.gz)
tar -zxvf zabbix-4.4.3.tar.gz(选择自己下载的版本)
./configure –prefix=/usr/local/zabbix –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-libxml2 && make && make install
# 注:编译安装命令这里就不解释了、不懂的请自行百度。
# 这里补充一下Zabbix_agent客户端和Zabbix_Java_Gateway安装方式:
./configure –prefix=/usr/local/zabbix –enable-agent && make && make install
./configure –prefix=/usr/local/zabbix –enable-java && make && make install
5、创建用户和组
groupadd –system zabbix
useradd –system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c “Zabbix Monitoring System” zabbix
6、复制启动脚本
cp misc/init.d/fedora/core/zabbix_* /etc/init.d/
ll -d /etc/init.d/zabbix_*
chmod +x /etc/init.d/zabbix_*
7、重启数据库并导入数据表
systemctl start mysqld.service
systemctl enable mysqld.service
mysqladmin -uroot password ‘123123’(设置root用户密码为123123)
mysql -uroot -p123123(登录mysql)
create database zabbix character set utf8 collate utf8_bin;(创建数据库,名称为zabbix,并将其字符集设置为UTF-8)
grant all privileges on zabbix.* to zabbix@localhost identified by ‘123456’;(对用户进行授权,请记住密码,输入密码)
grant all privileges on zabbix.* to zabbix@127.0.0.1 identified by ‘123456’;
flush privileges;(刷新权限,使其立即生效)
mysql> quit;
# 导入表结构
cd zabbix-4.2.5(数据表结构在安装包的database文件夹里面)
mysql -uzabbix -p123456 zabbix < database/mysql/schema.sql //表结构
mysql -uzabbix -p123456 zabbix < database/mysql/images.sql //图片相关数据
mysql -uzabbix -p123456 zabbix < database/mysql/data.sql //模版相关数据
8、配置LAMP
配置 php 环境,修改 php.ini,目的是 zabbix 的 web 代码要求这么配置才能正常运行,所以,不修改的后果就是无法安装,无法获得正常的环境。
[root@ localhost zabbix-4.2.5]# vim /etc/php.ini
878 date.timezone =Asia/Shanghai
384 max_execution_time = 300
672 post_max_size = 32M
394 max_input_time = 300
405 memory_limit = 128M //如果web页面提示内存不够使用,请调整此值
1704 mbstring.func_overload = 0
9、重启HTTP服务
systemctl restart httpd.service
systemctl enable httpd.service
# 创建日志目录
cd /usr/local/zabbix
mkdir logs
chown zabbix:zabbix logs
10、修改zabbix_sever.conf服务器端的配置
cd /usr/local/zabbix/etc/
vim zabbix_server.conf
38行 LogFile=/usr/local/zabbix/logs/zabbix_server.log //日志路径
68行 PidFile=/tmp/zabbix_server.pid # 指定zabbix的pid文件
85行 DBHost=localhost //数据库的地址
95行 DBName=zabbix //数据库名称
111行 DBUser=zabbix //数据库用户
119行 DBPassword=zabbix //数据库密码
126行 DBSocket=/var/lib/mysql/mysql.sock //根据实际填写路径,此处为 YUM 安装的
134行 DBPort=3306 //数据库端口
574行 Include=/usr/local/zabbix/etc/zabbix_server.conf.d/*.conf
StartDiscoverers=10 //自动发现进程个数
StartPollers=100 //约5台服务器开一个进程,最大1000
StartIPMIPollers=10 //视IPMI监控主机个数而定
StartPollersUnreachable=10 //不可达主机重试获取数据进程个数
StartTrappers=10 //Trapper进程个数
StartPingers=10 //ping进程个数
AlertScriptsPath=/usr/lib/zabbix/alertscripts //放脚本目录
11、修改zabbix_agentd.conf客户端代理参数
agentd 的作用就是获得 host 数据,然后将收集到的数据发送给 server。或者是 server 主动来拿取数据:
# /usr/local/zabbix/etc/配置目录
cp zabbix_agentd.conf zabbix_agentd.conf.origin
vim zabbix_agentd.conf
30行 LogFile=/usr/local/zabbix/logs/zabbix_agentd.log //日志路径
11行 PidFile=/tmp/zabbix_agentd.pid # 指定zabbix的pid文件
265行 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf //自定义的 agentd 配置文件存放路径
93行 Server=127.0.0.1,175.25.184.132 //服务端 IP
134行 ServerActive=175.25.184.132:10051 //服务端 IP,端口固定
280行 UnsafeUserParameters=1 //自定义脚本功能,1 为开启,默认 0 为关闭
12、部署PHP页面文档
[root@localhost ~]# cd zabbix-4.4.3
[root@localhost zabbix-4.4.5]# cp -rf frontends/php/ /var/www/html/zabbix
[root@localhost zabbix-4.4.5]# chown -R apache.apache /var/www/html/zabbix/
注:zabbix前端页面采用PHP进行开发、这一步的目的是为了把前端页面拷贝进apache的运行目录。
13、访问浏览器
http://127.0.0.1/zabbix/
注:这一步我没截图、网上找的图片。嘿嘿
注:上面这一步如果有提示错误的、请自行百度相关PHP配置项。
注:zabbix4.4.3会提示无法配置zabbix.conf.php,点击页面上的链接下载zabbix.conf.php文件,上传到 var/www/html/zabbix/conf/ 文件夹下面,然后再点击完成、切记一定是上传完成以后在点击完成,也不要刷新页面。
# 默认账号:admin
# 默认密码:zabbix
设置语言为中文:
登录系统之后会提示zabbix服务未运行,并且页面系统信息zabbix server is running也显示为No,可能存在两个原因:
1、查看zabbix服务是否已经开启(10050端口是否正常)
2、如果zabbix服务一直无法启动、检查一下zabbix的两个启动路径。一个是/usr/local/zabbix/sbin/zabbix_server,另外一个是/etc/init.d/zabbix_server(这个地方有个坑、坑在通过vi编辑/etc/init.d/zabbix_server文件会发现、zabbix服务启动路径不对、导致zabbix服务无法开启)
3、zabbix_agentd同理
zabbix服务开启之后稍等1分钟、刷新页面会看到下面的错误已经消失、页面上系统信息也刷新出来了。
# 锁定安装页面(防止重新安装):
[root@localhost ~]# cd /var/www/html/zabbix/
[root@localhost zabbix]# mv setup.php setup.php.lock
[root@localhost zabbix]# chmod 600 setup.php.lock
14、启动zabbix_server服务
/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start
systemctl enable zabbix_agentd
systemctl enable zabbix_server
15、查看服务和端口
netstat -anpt | grep zabbix