Zabbix 7.0で複数台のLinuxサーバーを監視していましたが、最近、2024年12月10日にリリースされたZabbix7.2にバージョンアップ作業をおこないました。手順は意外と簡単でZabbixをレポジトリを7.0から7.2に変更して、dnfコマンドでアップグレードすればバージョンアップできます。
また、クライントのみバージョンアップする場合は「Zabbix 7.0 から 7.2 へ!Rocky Linux 8 環境でのバージョンアップ手順」の記事を参考にしてください
今回は、その作業を紹介します。また、筆者の使用環境は以下となります
- OS:Rocky Linux release 8.10
- PHP:PHP 8.0.30
- DB:MariaDB 10.5.22
- WEB:Apache 2.4.37
Zabbix 7.2 の主な要件
Zabbix 7.2 の要件ですが、PHP等の要件ですが、以下の要件が以下となります
PHP
PHPは、php 8.0 以降が必要です。Zabbix 7.2では、8.0.X から 8.4.X までがサポートされています。
また、下記の必須PHP拡張機能等必要です
- mysqli: MySQL/MariaDB を使用する場合に必須です。
- pgsql: PostgreSQL を使用する場合に必須です。
- bcmath (php-bcmath, –enable-bcmath)
- mbstring (php-mbstring, –enable-mbstring)
- gd (php-gd)
- libxml (php-xml)
- sockets (php-sockets)
- ctype (php-ctype)
- json (php-json)
- gettext (php-gettext)
DB
DBは、以下の要件のMySQL等のDBが必要となります
- MySQL: 8.0.30 以降
- MariaDB: 10.5.0 以降
- PostgreSQL13.0 から 17.xまでサポート
- SQLite:3.3.5以降
WEBサーバー
Webサーバーが以下がサポートされています
- Apache HTTP Server:2.4 以降
- Nginx:1.20 以降
事前確認とバックアップ
Zabbix 7.2にバージョンアップを実施する前に既存環境のバックアップを実施するのと、Zabbixの現行バージョンを確認します
Zabbix バージョン確認
現在のZabbixサーバーのバージョンを確認します。
$ zabbix_server -V zabbix_server (Zabbix) 7.0.13 Revision 42673dd61ca 20 May 2025, compilation time: May 20 2025 10:43:45 Copyright (C) 2025 Zabbix SIA License AGPLv3: GNU Affero General Public License version 3 <https://www.gnu.org/licenses/>. This is free software: you are free to change and redistribute it according to the license. There is NO WARRANTY, to the extent permitted by law. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org/). Compiled with OpenSSL 1.1.1k FIPS 25 Mar 2021 Running with OpenSSL 1.1.1k FIPS 25 Mar 2021
既存環境のバックアップ
既存環境のバックアップを作成していきます
バックアップディレクトリを作成
既存環境のバックアップを保存するディレクトリを作成します
$ mkdir /var/tmp/zabbix_bak
DBバックアップ (MySQL/MariaDB の例)
zabbixデータベースをバックアップします。環境に合わせてユーザー名やパスワードを指定してください。下記ではMariaDBを利用した場合の例です
$ mysqldump -u root -p zabbix > /var/tmp/zabbix_bak/zabbix_db_backup.sql
設定ファイルバックアップ
Zabbixサーバー、Apache (httpd)、PHPの設定ファイルをバックアップします。
$ mkdir /var/tmp/zabbix_bak/zabbix_etc # Zabbix $ sudo cp -a /etc/zabbix/ /var/tmp/zabbix_bak/zabbix_etc/ # Apache $ sudo cp -a /etc/httpd/conf.d/zabbix.conf /var/tmp/zabbix_bak/ # php $ sudo cp -a /etc/php.ini /var/tmp/zabbix_bak/
Webディレクトリバックアップ
ZabbixのWebインターフェース関連ファイルをバックアップします。
# Webコンテンツのディレクトリをバックアップするディレクトリを作成 $ mkdir /var/tmp/zabbix_bak/zabbix_web # Webコンテンツをコピーします $ sudo cp -a /usr/share/zabbix /var/tmp/zabbix_bak/zabbix_web/
Zabbix 7.2 リポジトリの設定
新しいバージョンのZabbixをインストールするために、リポジトリ情報を更新します。
旧リポジトリのクリーンアップと削除
レポジトリ情報を更新する前に、既存のdnfキャッシュをクリアし、古いZabbixリポジトリパッケージを削除します。
# dnfキャッシュのクリア $ sudo dnf clean all # Zabbix 7.0のレポジトリを削除 $ sudo dnf remove zabbix-release
Zabbix 7.2 リポジトリのインストール
Zabbix 7.2のリポジトリをインストールします。下記はRocky Linux 8用のコマンドです。お使いのOSに合わせて、Zabbix公式サイトのダウンロードページで適切なリポジトリを確認してください。
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/7.2/release/rocky/8/noarch/zabbix-release-latest-7.2.el8.noarch.rpm $ sudo dnf clean all
Zabbix 7.2へアップグレード
dnf コマンドを利用してZabbix 7.2にバージョンアップします。バージョンアップする前に現在インストールされているパッケージを確認をおこない、その内容をもとにdnfコマンドでアップグレードします
インストール済みZabbixパッケージの確認
rpm -qaコマンドで、今のZabbixでインストールされているパッケージを確認します。
(筆者の環境での結果です、使用されている環境では異なる場合があります。)
$ rpm -qa | grep zabbix zabbix-web-deps-7.0.13-release1.el8.noarch zabbix-agent-7.0.13-release1.el8.x86_64 zabbix-web-japanese-7.0.13-release1.el8.noarch zabbix-release-7.0-5.el8.noarch zabbix-server-mysql-7.0.13-release1.el8.x86_64 zabbix-web-mysql-7.0.13-release1.el8.noarch zabbix-sql-scripts-7.0.13-release1.el8.noarch zabbix-web-service-7.0.13-release1.el8.x86_64 zabbix-web-7.0.13-release1.el8.noarch zabbix-selinux-policy-7.0.13-release1.el8.x86_64 zabbix-apache-conf-7.0.13-release1.el8.noarch
Zabbixコンポーネントのアップグレード
Zabbix Server、Frontend (Webインターフェース)、Agentなど、必要なコンポーネントをアップグレードします。上記のrpm -qa
の結果を参考に、お使いの環境に合わせてパッケージ名を指定してください。
$ sudo dnf upgrade zabbix-web-deps zabbix-agent zabbix-web-japanese \ zabbix-release zabbix-server-mysql zabbix-web-mysql zabbix-sql-scripts \ zabbix-web-service zabbix-web zabbix-selinux-policy zabbix-apache-conf
データベースのアップグレード
Zabbixサーバーを起動すると、データベーススキーマのアップグレードが自動的に実行されます。
# zabbix-server を再起動します $ sudo systemctl restart zabbix-server
ログ(zabbix_server.log)でのマイグレーション確認
Zabbixサーバーのログファイルで、データベースのマイグレーション(アップグレード)が正常に実行されたことを確認します。
以下のようなログが出力されていれば、データベースのアップグレードは成功です。特に current database version
が 0700xxxx
(7.0系) から 0702xxxx
(7.2系) に変わっている点に注目してください。
$ grep database /var/log/zabbix/zabbix_server.log 3001290:20250528:105412.857 current database version (mandatory/optional): 07000000/07000019 3001290:20250528:105412.859 starting automatic database upgrade 3001290:20250528:105413.334 completed 100% of database upgrade 3001290:20250528:105413.334 database upgrade fully completed 3001514:20250528:105428.630 current database version (mandatory/optional): 07020000/07020004
Zabbix Agent の再起動
Zabbixサーバーを再起動したら、監視対象のサーバーで動作しているZabbix Agentも(もし同じサーバーにあれば)再起動します。
$ sudo systemctl restart zabbix-agent
Apache および PHP-FPM の再起動
Apache や php-fpmの再起動を実施します。Webサーバー等は使用している環境によって変更してください
$ sudo systemctl restart php-fpm $ sudo systemctl restart httpd
Webインターフェースでバージョンアップされた事を確認
ZabbixのWebインターフェースにアクセスしてバージョンアップが正しく反映されているか確認します。
ブラウザでZabbixのWebにアクセスして下記のようにバージョンアップされた事を確認します

Zabbix サービスの自動起動設定確認
念のため、Zabbix関連のサービスがOS起動時に自動起動するように設定されているか確認します。通常であれば古いバージョンで自動起動の設定を行っていれば、自動起動は有効になっています
$ sudo systemctl list-unit-files --type=service | grep zabbix zabbix-agent.service enabled zabbix-server.service enabled zabbix-web-service.service enabled
自動起動設定が、disabled になっているサービスがあれば、以下のコマンドで有効化します。
$ sudo systemctl enable zabbix-agent zabbix-server zabbix-web-service
コメント