3 コンテナからのアップグレード

概要

このセクションではZabbix 6.4.x コンテナへのアップグレードを成功させるために必要な手順を説明します。

個々のZabbixコンポーネントイメージおよびDocker Composeファイルをアップグレードするには、別個の手順セットが利用可能です。

アップグレードする前にアップグレード時の注意点を必ずお読みください!

アップグレードを開始する前に、ユーザーがデータベースに対してアップグレードのために必要な権限を持っていることを確認してください。

Zabbix 6.0以前からのアップグレードの場合、アップグレード中に決定論的トリガーを作成する必要があります。 MySQL/MariaDBでバイナリロギングが有効になっている場合、スーパーユーザー権限、または変数/設定パラメーターlog_bin_trust_function_creators = 1の設定が必要です。変数の設定方法については、データベース作成スクリプトを参照してください。
コンソールから実行する場合、変数は一時的に設定されるだけで、Dockerが再起動されると削除されることに注意してください。この場合、SQLサービスを実行したままにし、'docker compose down zabbix-server'を実行してから'docker compose up -d zabbix-server'を実行して、zabbix-serverサービスのみを停止します。
あるいは、この変数を設定ファイルで設定することもできます。

データベースのサイズによっては、バージョン6.4へのアップグレードに非常に長い時間がかかる場合があります。

Zabbixイメージのアップグレード

Zabbixコンポーネントをアップグレードするには以下の手順を行います。zabbix-server-mysqlを必要なコンポーネントイメージ名に置き換えてください。

1. 現在のイメージのバージョンを確認します。

docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql

2. 次のように、必要なイメージバージョンをプルします。

docker pull zabbix/zabbix-server-mysql:alpine-6.4-latest

zabbix/zabbix-server-mysql:alpine-6.4-latestは、Alpine LinuxベースのMySQLサポートを備えたZabbixサーバー 6.4の最新リリースのマイナーバージョンをプルします。これを、必要なDockerリポジトリの名前とタグの組み合わせに置き換えます。利用可能なオプションのリストについては、コンテナからのインストールを参照してください。

3. コンテナを停止します。

docker stop zabbix-server-mysql

4. コンテナを削除します。

docker rm zabbix-server-mysql

5. docker runコマンドを実行し、その後に必要な環境変数マウントポイントを指定するための追加の引数を実行して、更新されたコンテナを起動します。

設定例

MySQLを使用したZabbixサーバー:

docker run --name zabbix-server-mysql -t \
             -e DB_SERVER_HOST="mysql-server" \
             -e MYSQL_DATABASE="zabbix" \
             -e MYSQL_USER="zabbix" \
             -e MYSQL_PASSWORD="zabbix_pwd" \
             -e MYSQL_ROOT_PASSWORD="root_pwd" \
             -e ZBX_JAVAGATEWAY="zabbix-java-gateway" \
             --network=zabbix-net \
             -p 10051:10051 \
             --restart unless-stopped \
             -d zabbix/zabbix-server-mysql:alpine-6.4-latest

PostgreSQLを使用したZabbixサーバー:

docker run --name zabbix-server-mysql -t \
                -e DB_SERVER_HOST="postgres-server" \
                -e POSTGRES_USER="zabbix" \
                -e POSTGRES_PASSWORD="zabbix_pwd" \
                -e POSTGRES_DB="zabbix" \
                -e ZBX_ENABLE_SNMP_TRAPS="true" \
                --network=zabbix-net \
                -p 10051:10051 \
                --volumes-from zabbix-snmptraps \
                --restart unless-stopped \
                -d zabbix/zabbix-server-pgsql:alpine-6.4-latest

他のZabbixコンポーネントの例を含むその他の設定例は、コンテナからのインストールページで入手できます。

6. 更新を確認します。

docker logs -f zabbix-server-mysql

Composeファイル

Composeファイルを使用してZabbixをインストールした場合は、このセクションのアップグレード手順に従ってください。

1. 現在のイメージのバージョンを確認します。

docker inspect -f '{{ .Config.Image }}' zabbix-server-mysql

2. GitHubリポジトリから最新の更新を取得し、必要なブランチに切り替えます。

git pull
       git checkout 6.4

3. 新しいComposeファイルを使用してZabbixコンポーネントを開始します。

docker-compose -f ./docker-compose_v3_alpine_mysql_latest.yaml up -d

4. 更新を確認します。

docker logs -f zabbix-server-mysql

サポートされている環境変数やボリュームマウントポイントのリストなど、詳細については、コンテナからのインストールを参照してください。