zabbix5.0.46版本源码安装
1.安装环境说明
本例中安装zabbix
开源软件和zabbix
运行所需的中间件和数据库apache、php
和flyingdb
,软件版本信息如下:
软件 | 版本 |
---|---|
zabbix | 5.0.46 |
apache | httpd-2.4.61 |
apr | apr-1.7.5 |
apr-util | 1.6.3 |
php | 7.3.24 |
PostgreSQL | 16.6 |
主机操作系统信息如下:
Kylin Linux Advanced Server V10 (Lance) |
---|
x86-64 |
2. apache
及依赖件软安装
2.1 检查gcc
版本
[root@PostgreSQL soft]# gcc -v
使用内建 specs。
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/7.3.0/lto-wrapper
目标:x86_64-linux-gnu
配置为:../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,fortran,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-7.3.0/obj-x86_64-linux-gnu/isl-install --without-cloog --enable-gnu-indirect-function --build=x86_64-linux-gnu --with-stage1-ldflags=' -Wl,-z,relro,-z,now' --with-boot-ldflags=' -Wl,-z,relro,-z,now' --with-tune=generic --with-arch_32=x86-64 --disable-multilib
线程模型:posix
gcc 版本 7.3.0 (GCC)
2.2 安装apache
上传安装包中的文件到服务器
scp * root@192.168.6.119:/root/soft
创建目录
mkdir /usr/local/apache
mkdir /usr/local/apache/apr
mkdir /usr/local/apache/apr-util
解压文件:
tar -zxvf apr-1.7.5.tar.gz -C /usr/local/apache/apr
tar -zxvf apr-util-1.6.3.tar.gz -C /usr/local/apache/apr-util
tar -zxvf httpd-2.4.61.tar.gz -C /usr/local/apache
安装依赖软件及安装包
yum install expat-devel pcre-devel openssl-devel -y
2.3 安装apr
源码编译安装:
cd /usr/local/apache/apr/apr-1.7.5
./configure --prefix=/usr/local/apache/apr
make -j4 && make install
2.4 安装apr-util
源码编译安装:
cd /usr/local/apache/apr-util/apr-util-1.6.3
./configure --prefix=/usr/local/apache/apr-util --with-apr=/usr/local/apache/apr
make -j4 && make install
2.5 安装apache
源码编译安装:
cd /usr/local/apache/httpd-2.4.61
./configure --prefix=/usr/local/apache --sysconfdir=/usr/local/apache/conf --enable-so --enable-rewirte --enable-ssl --enable-cgi --enable-cgid --enable-modules=all --enable-mods-shared=all --enable-mpms-shared=all --with-apr=/usr/local/apache/apr --with-apr-util=/usr/local/apache/apr-util --with-pcre
make -j4 && make install
2.6 启动 apache
尽量先启动web服务然后再去安装php
/usr/local/apache/bin/apachectl start
3.安装PHP
3.1 下载源码安装包
php下载:http://php.net/downloads.php
3.2 创建目录并解压
mkdir /usr/local/php
解压安装文件:
tar -zxvf 7.3.24.tar.gz -C /usr/local/php
3.3 安装依赖软件及安装包
yum install libxslt-devel libXpm* libjpeg* libcurl* *freetype* libpng* bzip2* libxml2-devel autoconf sqlite-devel libwebp libwebp-devel -y
3.4 源码编译安装php
cd /usr/local/php/php-7.3.24
./configure --prefix=/usr/local/php/ --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/php/etc--enable-fpm --with-pear --with-curl --with-gd --with-webp-dir --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib-dir --with-iconv --enable-mbstring --enable-bcmath --with-mhash --with-zlib --with-xmlrpc --with-xsl --with-openssl --with-bz2 --with-gettext --with-xpm-dir --enable-fpm --enable-sockets --with-pdo-pgsql --with-pgsql
make -j4 && make install
3.5 修改php
配置环境
cd /usr/local/php/php-7.3.24
cp php.ini-development /usr/local/php/etc/php.ini
sed -i 's/post_max_size = 8M/post_max_size = 16M/g' /usr/local/php/etc/php.ini
sed -i 's/max_execution_time = 30/max_execution_time = 300/g' /usr/local/php/etc/php.ini
sed -i 's#;date.timezone =#date.timezone=Asia/Shanghai#g' /usr/local/php/etc/php.ini
sed -i 's#;always_populate_raw_post_data = -1#always_populate_raw_post_data = -1#g' /usr/local/php/etc/php.ini
sed -i 's#max_input_time = 60#max_input_time = 300#g' /usr/local/php/etc/php.ini
3.6 安装php sockets
拓展包
cd /usr/local/php/php-7.3.24/ext/sockets/
生成源码文件:
$ yum -y install automake autoconf libtool
$ /usr/local/php/bin/phpize
$ make clean
源码编译安装
./configure --enable-sockets --with-php-config=/usr/local/php/bin/php-config
make -j4 && make install
修改配置文件:
sed -i '$a extension=sockets.so' /usr/local/php/etc/php.ini
3.7 修改apache配置文件
修改apache的配置文件,添加apache对php的支持
sed -i '$a PHPIniDir /usr/local/php/etc/php.ini' /usr/local/apache/conf/httpd.conf
sed -i 's#DirectoryIndex index.html#DirectoryIndex index.html index.php#g' /usr/local/apache/conf/httpd.conf
sed -i '410a AddType application/x-httpd-php .php' /usr/local/apache/conf/httpd.conf
cd /usr/local/apache/conf
vim httpd.conf
#修改 ServerName ip:80 #没有注册域名就用这个
# 或者修改为ip:port
4.安装PG数据库(省略)
5.安装zabbix-server
5.1 下载源码安装包
wget https://cdn.zabbix.com/zabbix/sources/stable/...
5.2 创建目录并解压
mkdir /usr/local/zabbix
tar -zxvf zabbix-5.0.46.tar.gz -C /usr/local/zabbix
5.3 安装依赖软件及安装包
yum install net-snmp-devel curl curl-devel libevent-devel –y
5.4 安装zabbix
源码安装编译:
cd /usr/local/zabbix/zabbix-5.0.46
# 可有可无
export CFLAGS="-std=gnu99"
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --enable-proxy --with-postgresql
make -j4 && make install
5.5 导入数据库表
[postgres@server postgres]$ psql
psql (15.7)
Type "help" for help.
postgres=# create user zabbix with password '123456';
CREATE ROLE
postgres=# CREATE DATABASE zabbix OWNER zabbix;
CREATE DATABASE
cd /usr/local/zabbix/zabbix-zabbix-5.0.46/database/postgresql/
psql -U zabbix -d zabbix -f schema.sql
psql -U zabbix -d zabbix -f images.sql
psql -U zabbix -d zabbix -f data.sql
5.6 配置zabbix
服务
# 如果有就不用管他
cat /etc/services |grep zabbix
cat >> /etc/services << EOF
#Zabbix
zabbix-agent 10050/tcp #ZabbixAgent
zabbix-agent 10050/udp #ZabbixAgent
zabbix-trapper 10051/tcp #ZabbixTrapper
zabbix-trapper 10051/udp #ZabbixTrapper
EOF
5.7 拷贝zabbix web
页面到apache
目录
mkdir /usr/local/apache/htdocs/zabbix
cp -r /usr/local/zabbix/zabbix-5.0.46/ui/* /usr/local/apache/htdocs/zabbix
添加zabbix
用户:
useradd zabbix
5.8 修改zabbix-server
配置文件
vim /usr/local/zabbix/etc/zabbix_server.conf
DBHost= 127.0.0.1
DBName=zabbix
DBSchema=public
DBUser=zabbix
DBPassword=123456
DBPort=8432
5.9 启动服务
/usr/local/apache/bin/apachectl start
/usr/local/zabbix/sbin/zabbix_server -c /usr/local/zabbix/etc/zabbix_server.conf
5.10 如果zabbix_server起不来,检查下面的这些配置
# 查看共享内存段相关的信息
ipcs -l
#内核参数,修改共享内存段
vim /etc/sysctl.conf
kernel.shmmax = 134217728 # 设置为 128MB,根据需要调整
kernel.shmall = 134217728 # 设置为 128MB,根据需要调整
sysctl -p
# zabbix_server的默认参数
CacheSize=128M
HistoryCacheSize=16M
HistoryIndexCacheSize=16M
TrendCacheSize=16M
TrendFunctionCacheSize=16M
ValueCacheSize=16M
6.zabbix web
界面配置
如果显示出来的不是这种,那么很有可能就是php与zabbix版本不兼容
- 通常情况下:php7 对应zabbix5.0
- 通常情况下:php8 对应zabbix6.0
点击1下载配置文件,上传到2所示的路径位置
7.配置zabbix-agent
vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
启动agent
/usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/etc/zabbix_agentd.conf