Centos8 编译安装 Zabbix 6.0

一、下载源码包

创建 zabbix 用户

groupadd --system zabbix
useradd --system -g zabbix -d /usr/lib/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

二、创建数据库

1.安装mysql 8数据库

wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm
rpm -ivh mysql80-community-release-el8-3.noarch.rpm
yum -y install mysql-server
mkdir -p /mysql8/{data,log}
chown -R mysql:mysql /mysql8/

# 初始化
mysqld --initialize --user=mysql --datadir=/mysql8/data/

vi /etc/my.cnf.d/mysql-server.cnf
# 修改以下内容
datadir=/mysql8/data
socket=/mysql8/mysql.sock
basedir=/mysql8
socket=/mysql8/mysql.sock
#log-bin=/mysql8/log/zabbix-db1

systemctl start mysqld
systemctl enable mysqld

2.配置zabbix数据库

grep 'temporary password' /var/log/mysql/mysqld.log

mysql -uroot -p<password>
mysql> alter user 'root'@'localhost' identified by 'xxxxxx';   
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user 'zabbix'@'localhost' identified by 'xxxxxx';
mysql> grant all privileges on zabbix.* to 'zabbix'@'localhost';
mysql> quit;

cd /opt/zabbix-6.0.0/database/mysql/
mysql -uzabbix -p zabbix < schema.sql
mysql -uzabbix -p zabbix < images.sql
mysql -uzabbix -p zabbix < data.sql
# 注意 proxy 数据库只需导入 schema.sql 即可


三、编译安装Zabbix

1.安装zabbix支持功能依赖包

yum install -y gcc mysql-devel net-snmp-devel libxml2-devel  unixODBC-devel libcurl-devel libssh2-devel  openssl-devel openldap-devel libevent-devel pcre-devel OpenIPMI-devel

yum install -y java-1.8.0-openjdk  java-1.8.0-openjdk-devel

yum install -y fping

2.OpenIPMI-devel 无法安装,添加PowerTools存储库 

vi Centos-Linux-PowerTools.repo

[powertools]
name=CentOS Linux $releasever - PowerTools
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=PowerTools&infra=$infra
baseurl=https://mirrors.aliyun.com/centos-vault/8.2.2004/PowerTools/x86_64/os/
#baseurl=https://mirrors.tuna.tsinghua.edu.cn/$contentdir/$releasever/PowerTools/$basearch/os/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial


yum -y install OpenIPMI-devel (报错时添加此选项安装--nobest --skip-broken)

3.编译安装Zabbix ,webservice需要配置go环境(无 --with-openipmi )

./configure --prefix=/usr/local/zabbix --enable-server    --enable-agent --with-mysql --enable-ipv6 --with-libcurl  --with-libxml2  --with-net-snmp --with-ssh2 --with-unixodbc --with-openssl   --enable-java  --with-ldap --enable-webservice

make && make install

chown -R zabbix:zabbix /usr/local/zabbix/

4.修改配置文件

修改server配置文件
 
LogFile=/usr/local/zabbix/log/zabbix_server.log
LogFileSize=5
PidFile=/usr/local/zabbix/zabbix_server.pid
DBHost=192.0.0.38     
DBName=zabbix
DBUser=zabbix
DBPassword=
AllowRoot=1


修改agent配置文件
 
PidFile=/usr/local/zabbix/zabbix_agentd.pid
LogType=file
LogFile=/usr/local/zabbix/log//zabbix_agentd.log
Server=
ServerActive=
Hostname=
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
AllowRoot=1
UnsafeUserParameters=1

四、编译安装Nginx

1.安装依赖包

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

2.编译安装

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-file-aio --with-http_image_filter_module

make && make install

3.修改nginx配置文件使其支持php-fpm

server {
 
1.listen   80;      ###端口可改可不改
 
2.server_name  localhost;       ###改成本机ip
 
3.index  index.html index.htm index.php;    ###添加index.php
 
4.location /nginx_status {
 
                stub_status     on;
 
            }              ###添加该字段开启nginx_status模块,监控nginx需要
 
 
5.#location ~ \.php$ {
 
    #    root           html;             ###/usr/local/nginx/html
 
    #    fastcgi_pass   127.0.0.1:9000;
 
    #    fastcgi_index  index.php;
 
    #   fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
 
    #    include        fastcgi_params;
 
    #}
 
###取消注释该部分,修改fastcgi_param字段:$document_root$fastcgi_script_name 

五、编译安装PHP

1.安装依赖包

yum install -y sqlite-devel libjpeg-devel  libpng-devel libxml2-devel bzip2-devel libcurl-devel freetype-devel gd openldap-devel openssl-devel

yum install -y oniguruma oniguruma-devel

2.编译安装

# php 7.3版本 正常编译
./configure --prefix=/usr/local/php --enable-fpm --enable-mbstring --with-openssl    --with-mysqli --with-mysql-sock --with-gd   --enable-pdo --with-pdo-mysql --with-gettext  --enable-sockets --enable-bcmath    --enable-xml --with-bz2  --with-freetype-dir=/usr/local --with-libxml-dir=/usr/local    --with-zlib --with-curl --with-jpeg-dir=/usr/local --with-png-dir=/usr/local  --with-ldap --with-libdir=lib64

# php 7.4 版本之后
./configure --prefix=/usr/local/php --enable-fpm --enable-mbstring --with-openssl    --with-mysqli --with-mysql-sock --enable-pdo --with-pdo-mysql --with-gettext  --enable-sockets --enable-bcmath    --enable-xml --with-bz2  --with-zlib --with-curl  --with-ldap --with-libdir=lib64 --enable-gd --with-jpeg --with-freetype

make && make install

3.配置php

cd /opt/php-7.4.28
cp php.ini-production /usr/local/php/lib/php.ini

vi /usr/local/php/lib/php.ini
    date.timezone = Asia/Shanghai
    post_max_size = 20M
    upload_max_filesize = 20M
    max_execution_time = 300
    max_input_time = 300
    memory_limit = 1024M

cd /usr/local/php/etc
cp php-fpm.conf.default   php-fpm.conf
cp php-fpm.d/www.conf.default   php-fpm.d/www.conf

六、拷贝zabbix前端到默认web服务器目录

cd /usr/local/nginx/html
mv ./* old/


cd /opt/zabbix-6.0.0
cp -a ui/* /usr/local/nginx/html/

七、编写systemd服务启动文件

1.  vi  /usr/lib/systemd/system/zabbix_server.service

[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
 
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_server.conf"
Type=forking
PIDFile=/usr/local/zabbix/zabbix_server.pid
Restart=on-failure
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
 
[Install]
WantedBy=multi-user.target

2. vi  /lib/systemd/system/nginx.service

[Unit]
Description=nginx                       
After=network.target                    
  
[Service]
Type=forking                            
ExecStart=/usr/local/nginx/sbin/nginx                   
ExecReload=/usr/local/nginx/sbin/nginx -s reload                
ExecStop=/usr/local/nginx/sbin/nginx -s quit            
PrivateTmp=true                         
  
[Install]
WantedBy=multi-user.target                    

3. vi  /usr/lib/systemd/system/php-fpm.service

[Unit]
Description=php-fpm
After=network.targe
 
[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target

4. vi  /usr/lib/systemd/system/zabbix_agentd.service

[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target
 
[Service]
Environment="CONFFILE=/usr/local/zabbix/etc/zabbix_agentd.conf"
Type=forking
PIDFile=/usr/local/zabbix/zabbix_agentd.pid
Restart=on-failure
KillMode=control-group
ExecStart=/usr/local/zabbix/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
 
[Install]
WantedBy=multi-user.target

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在CentOS 7上安装Zabbix 6.0,可以按照以下步骤进行操作: 1. 更新系统软件包: ```shell sudo yum update ``` 2. 添加Zabbix官方仓库的存储库文件: ```shell sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm ``` 3. 安装Zabbix服务器、代理和Web前端: ```shell sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent ``` 4. 安装MySQL数据库服务器(如果尚未安装): ```shell sudo yum install mysql-server ``` 5. 启动和设置MySQL服务: ```shell sudo systemctl start mysqld sudo systemctl enable mysqld ``` 6. 运行MySQL安全脚本以设置数据库密码: ```shell sudo mysql_secure_installation ``` 7. 创建Zabbix数据库和用户: ```shell sudo mysql -uroot -p CREATE DATABASE zabbix character set utf8 collate utf8_bin; GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; quit; ``` 8. 导入初始数据库架构和数据: ```shell sudo zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | sudo mysql -uzabbix -p zabbix ``` 9. 编辑Zabbix服务器配置文件: ```shell sudo nano /etc/zabbix/zabbix_server.conf ``` 将`DBPassword`设置为之前创建的数据库密码。 10. 启动和设置Zabbix服务器和代理: ```shell sudo systemctl start zabbix-server sudo systemctl enable zabbix-server sudo systemctl start zabbix-agent sudo systemctl enable zabbix-agent ``` 11. 配置防火墙以允许Zabbix Web界面访问(如果使用默认端口80): ```shell sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --reload ``` 12. 配置Zabbix Web界面: ```shell sudo nano /etc/httpd/conf.d/zabbix.conf ``` 将`php_value date.timezone`设置为您所在的时区,保存并关闭文件。 13. 重启Apache Web服务器和Zabbix服务: ```shell sudo systemctl restart httpd sudo systemctl restart zabbix-server ``` 现在,您可以通过在Web浏览器中输入服务器IP地址或域名来访问Zabbix Web界面。按照安装向导的指示进行设置和配置。 请注意,这只是一个基本的安装过程,根据您的特定环境和需求,可能需要进行其他配置和调整。建议查阅官方文档以获取更详细的安装和配置说明。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值