Zabbix 7.0 から 7.2 へ!Rocky Linux 8 環境でのバージョンアップ手順

ZABBIX_logo Linux
ZABBIX_logo

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 version0700xxxx (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

スポンサーリンク
スポンサーリンク
スポンサーリンク
スポンサーリンク
Linux
スポンサーリンク
adminをフォローする

コメント

タイトルとURLをコピーしました