zabbix安装

本文详细介绍了如何在Linux环境下安装Zabbix 4.2.6,包括安装LNMP环境、创建数据库、解压Zabbix、配置Zabbix Server、解决库文件找不到的问题、配置Zabbix Web页面以及解决中文乱码问题。通过这些步骤,成功搭建并运行Zabbix监控系统。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装zabbix

需要的软件包
php-5.6.36
libmcrypt-2.5.7
mysql-5.7.26
nginx-1.10.3
zabbix-4.2.6

搭建LNMP的环境

安装依赖环境

yum -y install make apr* autoconf automake curl-devel gcc gcc-c++  openssl openssl-devel gd kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng*  libtool* libxml2 libxml2-devel patch libcurl-devel bzip2-devel freetype-devel

安装libmcrypt

 tar zxf libmcrypt-2.5.7.tar.gz 
 cd libmcrypt-2.5.7/
 ./configure --prefix=/usr/local/libmcrypt && make && make install

安装php

tar zxf php-5.6.36.tar.gz
 cd php-5.6.36/
./configure --prefix=/usr/local/php5.6 --with-config-file-path=/etc  --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/usr/local/mysql/mysql.sock --with-gd --with-iconv --with-libxml-dir=/usr --with-mhash --with-mcrypt --with-config-file-scan-dir=/etc/php.d --with-bz2 --with-zlib --with-freetype-dir --with-png-dir --with-jpeg-dir --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt=/usr/local/libmcrypt --with-curl

 make && make install

生成php.ini配置文件

cd php-5.6.36/
cp php.ini-production /etc/php.ini
vim /etc/php.ini 
找到:
;date.timezone = 
修改为:
date.timezone = PRC #设置时区
找到:
expose_php = On 
修改为:
expose_php = Off #禁止显示php版本的信息
找到:
short_open_tag = Off 
修改为:
short_open_tag = On //支持php短标签
找到:
post_max_size = 8M
修改为:
post_max_size = 16M  //上传文件大小
找到:
max_execution_time = 30
修改为:
max_execution_time = 300  //php脚本最大执行时间
找到:
max_input_time = 60
修改为:
max_input_time = 300  //以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制
always_populate_raw_post_data = -1
mbstring.func_overload = 0

创建php-fpm服务启动脚本

 cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm 
chkconfig --add php-fpm
chkconfig php-fpm on

修改php-fpm配置文件

cp /usr/local/php5.6/etc/php-fpm.conf.default /usr/local/php5.6/etc/php-fpm.conf
useradd -M -s /sbin/nologin www
vim /usr/local/php5.6/etc/php-fpm.conf

修改以下内容

pid = run/php-fpm.pid
user = www
group = www
listen =127.0.0.1:9000
pm.max_children = 300
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers =50

启动php-fpm

 /etc/init.d/php-fpm start

netstat -anplt | grep php-fpm ##查看端口

安装nginx
安装依赖环境

 yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel  pcre pcre-devel

编译安装nginx

tar zxf nginx-1.10.3.tar.gz
 cd nginx-1.10.3/
./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module  --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module --user=www --group=www
make && make install

启动nginx服务

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
nginx 
 netstat -anplt | grep nginx

配置nginx支持php

vim /usr/local/nginx/conf/nginx.conf
user  www;
worker_processes  4;
error_log  logs/error.log;
pid        logs/nginx.pid;

events {
    use epoll;
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  logs/access.log  main;

    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        charset utf-8;

        location / {
            root   html;
            index  index.php index.html index.htm;
        }
        location ~ \.php$ {
            root  html;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            include fastcgi.conf;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }
}

nginx -s reload ##重载

测试lnmp

vim /usr/local/nginx/html/test1.php
<?php
phpinfo();
?>
vim /usr/local/nginx/html/test2.php 
<?php
$link=mysql_connect('localhost','root','123456');
if($link) echo "ok";
mysql_close();
?>

在这里插入图片描述
在这里插入图片描述

创建zabbix使用的数据库
Mysql ##进入mysql(我这里没有密码,直接进就可以)

create database zabbix character set utf8;
grant all on zabbix.* to zabbix@localhost identified by 'zabbix';	

解压zabbix

tar zxf zabbix-4.2.6.tar.gz 
cd zabbix-4.2.6/

导入数据库,顺序要弄好,瞎弄报错

mysql -uzabbix -pzabbix zabbix < database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql 
mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql

安装依赖

yum -y install net-snmp net-snmp-devel curl-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel  OpenIPMI-devel  libssh2-devel libevent libevent-devel

这里需要上传rpm的压缩包
在这里插入图片描述
进入到目录里

Yum  -y install *

创建用户

groupadd zabbix
useradd -s /sbin/nologin -g zabbix zabbix
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --with-openipmi

在这里插入图片描述
make install ##直接安装,不用编译,提示没有make步骤

添加系统软链接

 ln -s /usr/local/zabbix/bin/* /usr/local/bin/
 ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/

配置zabbix server

 vim /usr/local/zabbix/etc/zabbix_server.conf
LogFile=/usr/local/zabbix/logs/zabbix_server.log
PidFile=/usr/local/zabbix/logs/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
 mkdir -p /usr/local/zabbix/logs
 chown -R zabbix:zabbix /usr/local/zabbix/

监控zabbix server本身

vim /usr/local/zabbix/etc/zabbix_agentd.conf
PidFile=/usr/local/zabbix/logs/zabbix_agentd.pid
LogFile=/usr/local/zabbix/logs/zabbix_agentd.log
Server=127.0.0.1
ListenPort=10050
ServerActive=127.0.0.1
Hostname=Zabbix server
Timeout=15
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
UnsafeUserParameters=1
注:
其中 Server 和 ServerActive 都指定 Zabbix server 的 IP 地址,不同的是,前者是被动后者是主动。也就是说前者允许 127.0.0.1 这个 ip 来我这取数据。而 serverActive 的 127.0.0.1 的意思是,客户端主动提交数据给它。
Hostname=XXX,这个定义的名字必须和web页面里面host的名字一样。
UnsafeUserParameters=1	#允许所有的字符是在用户定义的参数,参数传递,也就是支持自定义脚本

直接运行

 /usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf

在这里插入图片描述
会说库文件找不到(错误问题)

解决问题

 vim /etc/ld.so.conf

在ld.so.conf中加入/usr/local/mysql/lib

include ld.so.conf.d/*.conf
/usr/local/mysql/lib   #根据实际路径添加此行

ldconfig #使库文件生效

再次重启

/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf

查看端口

 netstat -anplt | grep zabbix_server

在这里插入图片描述

添加zabbix启动脚本

cd /root/zabbix-4.2.6/misc/init.d/
cp fedora/core/* /etc/init.d/
vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/zabbix  #找到此行,并修改。zabbix安装目录
PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid  # pid文件路径 	
vim /etc/init.d/zabbix_agentd
BASEDIR=/usr/local/zabbix  #找到此行,并修改。zabbix安装目录
PIDFILE=/usr/local/zabbix/logs/$BINARY_NAME.pid   # pid文件路径

添加开机自启

chkconfig --add zabbix_server
 chkconfig --add zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on

配置zabbix web 页面
复制php文件到nginx网站目录
在解压目录中将frontends/php拷贝到指定的web root:

cd /root/zabbix-4.2.6/
cp -r /root/zabbix-4.2.6/frontends/php/* /usr/local/nginx/html/
chown -R www:www /usr/local/nginx/html/

注:/usr/local/nginx/html为Nginx默认站点目录 ,www为Nginx运行账户
注:PHP需要至少开启扩展: gd,bcmath,ctype,libXML,xmlreader,xmlwriter,session,sockets,mbstring,gettext,mysql

查看是否包括上面提到的模块

/usr/local/php5.6/bin/php -m

打开默认index.php

vim /usr/local/nginx/conf/nginx.conf
location / {
root	html;
index	 index.php index.html index.htm;	#找到此行内容,添加 index.php
}

重启nginx服务和php-fpm服务

 /usr/local/nginx/sbin/nginx -s reload
/etc/init.d/php-fpm restart

在这里插入图片描述
到这里差不多就配置完了

打开浏览器安装zabbix web

在这里插入图片描述
开启检测环境
如果不符合,就需要编辑 php.ini 文件,修改php环境,修改后重启php-fpm
在这里插入图片描述

这里写mysql的用户和密码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里都点击下一步

登录zabbix
默认的用户名和密码
账号:Admin密码:zabbix

进入,整挺洋气

点击小人,修改语音
在这里插入图片描述
在这里插入图片描述

在查看图形的时候会有小方块形状的乱码,我们解决一下

在Windows里控制面板搜索字体

在这里插入图片描述
把楷体拖到桌面上
在这里插入图片描述

 cd /usr/local/nginx/html/assets/fonts/

放到这个目录下
在这里插入图片描述
然后,接着修改代码/usr/local/nginx/html/include/defines.inc.php文件中的字体配置,将里面关于字体设置从DejaVuSans替换成simkai
vi替换技巧:%s/DejaVuSans/simkai,其中:simkai为字库名字,不包含ttf后缀

[root@zabbix ~]# vim /usr/local/nginx/html/include/defines.inc.php

在vi编辑器的末行模式下输入%s/DejaVuSans/simkai
这样,修改后,zabbix监控图形中的中文字就不会出现乱码了

然后我们查看一下图形
发现变回中文了
在这里插入图片描述

本次实验就到这里了,如果有什么不对的地方请小伙伴们评论,谢谢哒!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值