Zabbix 5.0 が 6.0LTS にアップグレードされました

Zabbix 6.0 LTS がリリースされてしばらく経ちましたが、このような素晴らしい新機能に直面して、Zabbix 5.0 のバージョンを振り返り、思い切ってアッ​​プグレードして試してみてください。

1. 環境紹介

へのアップグレードには環境要件がありZabbix 6.0、主にPHPとのバージョンMySQL、および次のアップグレードされたコンポーネントの必要なバージョンです。

アップグレード前 アップグレード後
システム CentOS 7.3 CentOS 7.3
PHP 7.2.21 7.4.30 (実際>=7.2.5)
MySQL 5.7.27 8.0.28
Zabbixサーバー 5.0.9 6.0.8

2.PHPのアップグレード

1. EPEL および REMI 倉庫を追加する

# yum -y install epel-release
# wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm --no-check-certificate
# yum -y localinstall remi-release-7.rpm

2.PHP 7.4をインストールする

# yum -y install yum-utils
# yum repolist all |grep php
# yum-config-manager --enable remi-php74
# yum install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis
# rpm -qa|grep php

3. データベースをアップグレードする

1. データのエクスポートとインポート

1.1 mydumper エクスポート

mydumperこのコマンドはデータベース ファイルを迅速にエクスポートでき、他のコマンドは下部の URL を参照できます。

# mydumper   -u root  -p xxx -B zabbix --less-locking --threads 8 -F 256 --triggers --events  --routines -v 3 --outputdir /data/bak/mysql/0915 > /tmp/dumper.log 2>&1

1.2 文字セットエンコーディングの変更

cd /data/bak/mysql/0915
sed -i '/InnoDB/s/CHARSET=utf8/CHARSET=utf8mb4/g' ./*schema.sql
sed -i '/InnoDB/s/COLLATE=utf8_bin/COLLATE=utf8mb4_bin/g' ./*schema.sql
---
sed -i 's/CHARACTER SET utf8/CHARACTER SET utf8mb4/g' zabbix-schema-create.sql
sed -i 's/utf8_bin/utf8mb4_bin/g' zabbix-schema-create.sql

1.3 マイローダーのインポート

# myloader   -h 10.10.137.39 -u test -p 123456  --threads 24 -q  30000 -v 3  --directory  /data/bak/mysql/0915 > /tmp/loader.log 2>&1

1.4 Zabbixユーザーの作成

MySQL8ユーザーパスワードの暗号化方式が以前と異なるため、追加の設定が必要です。設定しないと接続に失敗します。以下の設定に従ってください。

> create user 'zabbix'@'%' identified by 'xxx'; 
> ALTER USER 'zabbix'@'% IDENTIFIED WITH mysql_native_password BY 'xxx';
> flush privileges;

2. マスタとスレーブの同期

# 获取备份时的binlog位点信息
# /data/bak/mysql/0915
# cat metadata 
Started dump at: 2022-09-19 17:29:54
SHOW MASTER STATUS:
	Log: mysql-bin.000035
	Pos: 772796394

masterマスター/スレーブ同期用の専用アカウントを作成する

> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.0.1.7' identified by 'repl@xxx';
> flush privileges;

slaveマスター/スレーブ同期を有効にする

> change master to master_host='10.10.69.60',master_port=3306,master_user='repl',master_password='repl@YfeUOI0bL',master_log_file='mysql-bin.000035',master_log_pos=772796394; 
> start slave;

4番目に、Zabbixをアップグレードします

1. 設定のバックアップ

# cp -r /usr/share/zabbix  /usr/share/zabbix_20220921
# cp -r /etc/zabbix  /etc/zabbix/web_20220921

2. コンパイルしてインストールする

# yum install mysql-devel unixODBC-devel net-snmp-devel libssh2-devel OpenIPMI-devel libevent-devel curl curl-devel -y

# wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.8.tar.gz 
# tar xf zabbix-6.0.8.tar.gz && cd zabbix-6.0.8
# ./configure --prefix=/usr/local/zabbix-server --enable-server --enable-java --enable-ipv6 --with-mysql --with-libxml2 --with-unixodbc --with-net-snmp --with-ssh2 --with-openipmi --with-openssl --with-libcurl --with-libxml2
# make && make install

3. PHPコンソールファイル

web通常の状況では、ソース コードのインストール後におよびディレクトリは存在しないため、同じバージョンのパッケージをzabbixインストールするマシンを見つけて、これら 2 つのフォルダーを取得します。RPM

# yum zabbix-web-mysql zabbix-nginx-conf -y

4. データベース構成を変更する

# vim /etc/zabbix/web/zabbix.conf.php
......

# vim /etc/zabbix/zabbix_server.conf
......

5. 起動スクリプト

スタートアップはコマンド ラインを使用して直接開始することも、管理が簡単なサービス スタートアップとして追加することもできます。

# /usr/local/zabbix-server/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
# cat /usr/lib/systemd/system/zabbix-server.service
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
After=mysql.service
After=mysqld.service
After=mariadb.service
After=postgresql.service
After=pgbouncer.service
After=postgresql-9.4.service
After=postgresql-9.5.service
After=postgresql-9.6.service
After=postgresql-10.service
After=postgresql-11.service
After=postgresql-12.service

[Service]
Environment="CONFFILE=/etc/zabbix/zabbix_server.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-server
Type=forking
Restart=on-failure
PIDFile=/run/zabbix/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix-server/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0

[Install]
WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl start zabbix-server

参照:

https://www.zabbix.com/documentation/6.2/en/manual/installation/upgrade/packages/rhel_centos
https://blog.csdn.net/qq_25854057/article/details/103730083

おすすめ

転載: blog.csdn.net/qq_25854057/article/details/126935860