現在位置: ホーム / 技術サポート情報 / MIRACLE ZBXアプライアンス / MIRACLE ZBX アプライアンスサポート関連情報 / MIRACLE ZBX Virtual Appliance V5.0でのPHPのアップデートについて

MIRACLE ZBX Virtual Appliance V5.0でのPHPのアップデートについて

MIRACLE ZBX Virtual Appliance V5.0でのPHPのアップデートについて

概要

MIRACLE ZBX Virtual Appliance V5.0(以下、VA50)では、OSとしてMIRACLE LINUX 8 Asianux Inside(以下Asianux 8)を使用しています。VA50の初期状態では、MIRACLE ZBX WebフロントエンドはPHP 7.2を使っていますが、このバージョンは2021年5月でOSのサポートが終了しています。そのため、OSのサポートを受けるにはPHPをアップデートする必要があります。Asianux 8のPHPのサポート期限については、MIRACLE LINUX 8 Asianux Inside - AppStream のサポート期限をご確認ください。

本記事では、VA50においてPHPのバージョンを7.2から7.4にアップデートする手順を説明します。

PHPのアップデート方法

システム全体の更新

PHPアップデートの前提条件として、システム全体が最新になっている必要があります。以下のコマンドを実行してシステム全体を更新してください。事前にMIRACLE failsafeのクラスタを停止する必要があります。

# clpcl -t
# dnf distro-sync

dnf distro-syncのコマンドの出力を確認し、内容に従って操作をしてください。必要に応じてdnf distro-syncコマンドをくり返し実行して、「Nothing to do.Complete!(行うべきことはありません。完了しました!)」というメッセージで終了することを確認してください。

VA50ではMIRACLE failsafeのカーネル互換性を保つため、kernel関連パッケージの更新をしないように設定しています。これに起因して、パッケージを更新する際に依存関係が競合することがあります。この場合は、必要に応じて当該パッケージの更新を除外してください。例えば、kmod-kvdoパッケージが競合を起こした場合は/etc/dnf/dnf.confexcludeにkmod-kvdoを追加します。

exclude=kernel*,kmod-kvdo

php-ext-mariadbパッケージの削除

php-ext-mariadbパッケージがインストールされている場合は、このパッケージをアンインストールします。インストールされているかどうかを確認するには以下のコマンドを実行します。

# rpm -q php-ext-mariadb

パッケージをアンインストールするには、以下のコマンドを実行します。

# dnf remove php-ext-mariadb

PHPのバージョン切り替え

PHPのバージョンを切り替えて、PHP 7.4を利用するように設定します。その後、システム全体を更新すると更新後のバージョンのPHPがインストールされます。以下のコマンドを実行してください。

# dnf module reset php
# dnf module enable php:7.4
# dnf distro-sync

PHP 7.4向けのphp-ext-mariadbパッケージのインストール

先の手順でphp-ext-mariadbを削除した場合、更新後のphp-ext-mariadbパッケージをインストールします。元々インストールされていなかった場合は、この手順は必要ありません。

こちらのページより最新のphp-ext-mariadbパッケージをダウンロードして、以下のコマンドを実行してください。バージョン番号は適宜読み替えてください。

# dnf install php-ext-mariadb-7.4.6-1.el8.x86_64.rpm

設定ファイルの修正

先の手順でphp-ext-mariadbをインストールした場合、設定ファイルを修正してmariadb拡張を有効化する必要があります。元々php-ext-mariadbがインストールされていなかった場合は、この手順は必要ありません。

php-ext-mariadbパッケージで提供されるmariadb拡張は、PHP標準のmysqli拡張と競合するため、インストール直後は機能が有効になっていません。設定ファイルを修正してmysqli拡張の無効化とmariadb拡張の有効化を実施する必要があります。

mysqli拡張を無効化するため、/etc/php.d/30-mysqli.iniを編集します。extension=mysqliの行をコメントアウトしてください。使用しているVA50のバージョンによっては、既にコメントアウトされている場合があります。その場合は、コメントアウトされたままにしておいてください。

変更前

; Enable mysqli extension module
extension=mysqli

変更後

; Enable mysqli extension module
;extension=mysqli

続いて、mariadb拡張を有効化するため、/etc/php.d/30-mariadb.iniを編集します。extension=mariadbの行のコメントを外してください。

変更前

; Enable mariadb extension module
;extension=mariadb

変更後

; Enable mariadb extension module
extension=mariadb

クラスタの再開

最後に、停止していたMIRACLE failsafeのクラスタを再開します。以下のコマンドを実行してください。

# clpcl -s

以上でPHPのアップデートが完了となります。システムが正常に動作していることを確認してください。

注意事項

  • 本ドキュメントの内容は、予告なしに変更される場合があります。
  • 本ドキュメントは限られた評価環境における検証結果をもとに作成しており、 全ての環境での動作を保証するものではありません。
  • 本ドキュメントの内容に基づき、導入、設定、運用を行なったことにより損害が生じた場合でも、弊社はその損害についての責任を負いません。あくまでお客様のご判断にてご使用ください。

更新履歴

  • 2021年07月12日 新規作成
MIRACLE ZBX アプライアンスRSS

アップデート情報RSS

サポート関連情報RSS