Zabbix4.4.7 源碼安裝

通過源代碼編譯安裝,可以安裝Zabbix最新及任何版本。

本示例以目前最新的版本4.4.7為例。

操作系統:CentOS Linux release 7.5.1804 (Core)

數據庫類型:Mysql-8.0.19

1.配置Zabbix的yum源

安裝阿里云Zabbixyum源:

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

查看yum源列表:

yum repolist

查看yum源列表

1.下載并解壓源代碼

獲取源碼包:

sudo wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.7/zabbix-4.4.7.tar.gz

解壓源碼包:

sudo? tar?-zxvf??zabbix-4.4.7.tar.gz

2.添加zabbix用戶組及用戶

添加用戶組zabbix:

sudo?groupadd --system zabbix

添加用戶zabbix:

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

3.安裝Mysql數據庫及創建Zabbix用戶及初始化數據

獲取Mysql免安裝包:

sudo?wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

解壓Mysql免安裝包:

sudo?tar -xf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

移動解壓后的Mysql安裝包:

示例是安裝到/usr/local下:

sudo??mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/

建立Mysql的軟連接:

sudo?ln -s /usr/local/mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/mysql

添加用于Mysql數據庫所屬的用戶組:

sudo groupadd mysql

添加用于Mysql數據庫所屬的用戶:

sudo useradd -r -g mysql -s /bin/false mysql

創建Mysql數據庫的數據存放目錄:

sudo mkdir /usr/local/mysql/data

修改Mysql數據庫數據存放目錄所屬用戶及用戶組:

sudo chown -R? mysql:mysql /usr/local/mysql/data

修改Mysql數據庫數據存放目錄的權限:

sudo chmod -R 750 /usr/local/mysql/data

修改Mysql的配置文件:

Mysql默認配置文件地址為:/etc/my.cnf(根據實際情況進行配置)

[client]

port=3306

socket=/tmp/mysql.sock

[mysqld]

port=3306

user=mysql

socket=/tmp/mysql.sock

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

log-error=error.log

transaction_isolation = READ-COMMITTED

character-set-server = utf8mb4

collation-server = utf8mb4_general_ci

lower_case_table_names = 1

如果沒有/tmp/mysql目錄,則需要創建并修改所屬用戶及用戶組:

創建目錄:

sudo mkdir /tmp/mysql

修改所屬用戶及用戶組:

sudo?chown mysql:mysql -R /tmp/mysql

Mysql初始化:

sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql

如果執行此命令出現如下錯誤:

/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

則安裝對應的依賴包:

sudo yum install ?libaio-devel

查看初始化日志:

sudo cat /usr/local/mysql/data/error.log

mysql初始化日志文件

mysql首次登錄時,需要通過圖片中初始化的密碼進行登錄。

開啟ssl:

sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup

啟動mysqld,并查看是否可以正常啟動:

sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

通過以上執行可以判斷mysql安裝有沒有問題,執行完成之后敲回車,然后查看日志:

sudo cat /usr/local/mysql/data/error.log

注冊Mysql服務:

拷貝注冊服務的文件:

sudo scp /usr/local/mysql/support-files/mysql.server /etc/init.d/

啟用服務設置為開機啟動:

sudo systemctl enable mysql.server

啟動Mysql服務:

sudo systemctl start mysql.server

查看Mysql服務啟動狀態:

sudo systemctl status mysql.server

Mysql 服務運行狀態

修改登錄Mysql并修改root密碼:

sudo /usr/local/mysql/bin/mysql -u root -p

輸入初始化mysql時,?/usr/local/mysql/data/error.log文件里面初始的root用戶密碼完成mysql鏈接登錄。

登錄成功之后,執行root密碼修改:

alter user root@localhost identified by '用戶用戶密碼';

flush privileges;

quit;

創建zabbix對應mysql的用戶及數據庫并授權:

?mysql -uroot -p

password

create database zabbix character set utf8 collate utf8_bin;

create user zabbix@localhost identified with mysql_native_password by '用戶密碼';

grant all privileges on zabbix.* to zabbix@localhost;

quit;

初始化數據庫數據:

/usr/local/mysql/bin/mysql -u zabbix -p zabbix < zabbix-4.4.7/database/mysql/schema.sql

/usr/local/mysql/bin/mysql -u zabbix -p zabbix < zabbix-4.4.7/database/mysql/images.sql

/usr/local/mysql/bin/mysql -u zabbix -p zabbix < zabbix-4.4.7/database/mysql/data.sql

登錄并查看初始化的表結構:

/usr/local/mysql/bin/mysql -u zabbix -p?

use zabbix;

show tables;

quit;

4.從源碼配置安裝Zabbix

進入解壓后的zabbix目錄。

查看Zabbix的版本:

./configure --version


查看Zabbix版本

通過幫助查看可以配置的參數內容:

./configure --help


查看安裝配置參數項

4.1安裝zabbix-server

安裝對應的依賴軟件包:

sudo? yum install wget telnet net-tools python-paramiko gcc gcc-c++ dejavu-sans-fonts python-setuptools python-devel sendmail mailx net-snmp net-snmp-devel net-snmp-utils freetype-devel libpng-devel perl unbound libtasn1-devel p11-kit-devel OpenIPMI unixODBC libevent-devel mysql-devel libxml2-devel libssh2-devel OpenIPMI-devel java-1.8.0-openjdk-devel openldap-devel curl-devel unixODBC-devel

創建安裝目錄,并修改該目錄所屬用戶組用戶;

sudo mkdir -p /soft/zabbix/

sudo chown -R zabbix:zabbix /soft/zabbix

進入源碼包解壓目錄進行編譯及安裝:

./configure --prefix=/soft/zabbix --enable-server --enable-java --with-mysql --with-libxml2 --with-unixodbc --with-net-snmp --with-ssh2 --with-openipmi --with-ldap --with-libcurl --with-iconv

make

make install

查看 zabbix-server安裝的版本:

/soft/zabbix/sbin/zabbix_server --version

建立軟連接:

sudo ln -s /soft/zabbix/sbin/zabbix_server /usr/local/sbin/

注冊zabbix-server服務:

進入源碼包解壓目錄,執行拷貝

sudo cp misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix.server

sudo systemctl enable zabbix.server

編輯zabbix-server的配置文件的數據庫連接信息:

sudo vi /soft/zabbix/etc/zabbix_server.conf

DBHost=127.0.0.1

DBName=zabbix

DBUser=zabbix

DBPassword=創建時的密碼

啟動zabbix-server服務:

sudo?systemctl start?zabbix.server

開放對應的協議端口:

sudo firewall-cmd --zone=public --add-port=10051/tcp --permanent

sudo firewall-cmd --zone=public --add-port=10051/udp --permanent

4.2安裝Zabbix-Web

4.2.1安裝PHP環境:

下載php源碼安裝包:

sudo wget? https://www.php.net/distributions/php-7.4.4.tar.xz

解壓php源碼安裝包并進入解壓的目錄:

sudo tar -xf php-7.4.4.tar.xz

sudo cd??php-7.4.4

安裝依賴包:

sudo yum install -y php-mysql gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers sqlite-devel oniguruma oniguruma-devel

編譯安裝:

創建安裝目錄:

sudo mkdir? /usr/local/php

sudo cd php-7.4.4?

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --with-libdir=lib64 --enable-gd --enable-mbstring --enable-bcmath --with-mysqli --with-gettext --with-ldap --with-pdo-mysql=mysqlnd --without-pear --disable-phar --enable-sockets --with-zlib --with-xmlrpc --enable-fpm --enable-xml --enable-sockets --with-zlib --with-iconv --enable-soap --enable-pcntl --enable-cli --with-curl --with-jpeg --with-freetype

然后重新執行上面的命令

make

make install

復制配置文件:

sudo cp php.ini-production /usr/local/php/php.ini

注冊服務開機啟動:

sudo?cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

sudo chmod +x /etc/init.d/php-fpm

sudo systemctl enable php-fpm

修改php-fpm配置文件:

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

vi /usr/local/php/etc/php-fpm.conf

去掉pid = run/php-fpm.pid前面的;

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

啟動php的服務:

sudo systemctl start php-fpm

查看php服務啟動的狀態:

sudo systemctl status php-fpm


查看php服務啟動的狀態

4.2.2安裝Nginx環境:

下載Nginx的安裝源碼包:

sudo wget http://nginx.org/download/nginx-1.16.1.tar.gz

解壓源碼安裝包并進入解壓后的目錄:

sudo tar -xf?nginx-1.16.1.tar.gz

sudo cd?nginx-1.16.1

添加用戶組及用戶:

sudo?groupadd --system www

sudo?useradd --system -g www -s /sbin/nologin -c "nginx www" www

進行編譯安裝:

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_gzip_static_module --with-http_sub_module --with-http_ssl_module --with-stream --with-http_gzip_static_module --with-http_mp4_module --with-http_flv_module --with-http_realip_module

make

make install

設置nginx開機啟動:

sudo touch?/usr/lib/systemd/system/nginx.service

sudo vi??/usr/lib/systemd/system/nginx.service

放入如下內容:

[Unit]

Description=nginx - high performance web server

After=network.target remote-fs.target nss-lookup.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 stop

[Install]

WantedBy=multi-user.target

設置開機啟動:

sudo systemctl enable nginx.service

啟動nginx 服務:

sudo systemctl start nginx.service

查看nginx服務狀態:

sudo systemctl status nginx.service

4.2.3 zabbix-web安裝:

創建zabbix web的文件目錄:

sudo mkdir /soft/zabbix-web/

復制web的php文件到創建的目錄:

sudo?cp -r /root/zabbix-4.4.7/frontends/php/* /soft/zabbix-web/

在nginx配置zabbix web信息:

sudo vi /usr/loca/nginx/conf/nginx.conf

修改內容如下:

server {

? ? ? ? listen? ? ? 80;

? ? ? ? server_name? localhost;

? ? ? ? #charset koi8-r;

? ? ? ? #access_log? logs/host.access.log? main;

? ? ? ? root? ? /soft/zabbix-web;

? ? ? ? index? index.html index.php;

? ? ? ? location ~ \.php$ {

? ? ? ? include fastcgi.conf;

? ? ? ? fastcgi_pass? 127.0.0.1:9000;

? ? ? ? }

? ? ? ? error_page? 500 502 503 504? /50x.html;

? ? ? ? location = /50x.html {

? ? ? ? ? ? root? html;

? ? ? ? }

? }

測試一下配置文件是否正確:

/usr/local/nginx/sbin/nginx -t

重啟ngixn 服務

sudo systemctl restart ?nginx.service

開放80端口:

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

sudo firewall-cmd --reload

然后訪問zabbix-web 的應用地址:http://ip

zabbix安裝歡迎界面

然后點擊Next step


安裝的先決條件檢測

根據檢測結果配置對應的php配置,配置內容如下:

sudo vi /usr/local/php/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

date.timezone = "Asia/Shanghai"

重新php服務:

sudo systemctl restart php-fpm

然后再訪問即可,然后點擊Next step執行數據庫連接信息配置。

配置數據庫連接信息

配置完數據庫繼續一直點擊“Next step”至到 Finish


安裝成功界面

然后登錄即可:


登錄界面

然后輸入默認賬號信息進行登錄。

賬號:Admin 密碼:zabbix

登錄之后的界面

4.3安裝Zabbix-Agent

創建安裝目錄,并修改該目錄所屬用戶組用戶;

sudo mkdir -p /soft/zabbix/

sudo chown -R zabbix:zabbix /soft/zabbix

進入源碼包解壓目錄進行編譯及安裝:

./configure --prefix=/soft/zabbix --enable-agent

make

make install

查看 zabbix-agent安裝的版本:

/soft/zabbix/sbin/zabbix_agentd --version

建立軟連接:

sudo ln -s /soft/zabbix/sbin/zabbix_agentd /usr/local/sbin/

注冊zabbix-agent服務:

進入源碼包解壓目錄,執行拷貝

sudo cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix.agentd

sudo systemctl enable zabbix.agentd

編輯zabbix-agent的配置文件的數據庫連接信息:

sudo vi /soft/zabbix/etc/zabbix_agentd.conf

根據實際情況修改對應的Hostname及Zabbix Server 所在服務器的ip地址:

Hostname=Zabbix server

Server=Zabbix Server的ip地址

ServerActive=Zabbix Server的ip地址

啟動zabbix-agent服務:

sudo?systemctl start?zabbix.agentd

開放對應的協議端口:

sudo firewall-cmd --zone=public --add-port=10050/tcp --permanent

sudo firewall-cmd --zone=public --add-port=10050/udp --permanent

至此通過源碼安裝Zabbix相應的內容已全部完成。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容