3.7.5. バックグラウンドアップグレードの実行
バックグラウンドアップグレードを実行する場合は、2回ほどクラスタを短時間ダウンさせだけで済みます。最初のダウンタイム後にクラスターを再起動すると、データベースをバックフィルするので、quay v3 コンテナーは v2 互換性モードで実行されます。このバックグラウンドプロセスが完了するまでに時間または数日かかる場合があります。数時間を超えるダウンタイムが問題となるような、大規模なインストールをしようする場合には、バックグラオウンドアップグレードが推奨されます。
このタイプのアップグレードでは、Red Hat Quay を互換性モードにします。互換性モードでは、v3 quay コンテナーが実行されますが、アップグレードが完了するまで以前のデータモデルで実行されます。手順は以下のとおりです。
Red Hat Quay v3 コンテナーをすべてのノードにプルします。以下のコンテナーのバージョンより新しいものを使用します。
quay.io/redhat/quay:v3.0.5
- Quay-builder および clair コンテナーなど Red Hat Quay クラスター全体で停止します。
各ノードで
config.yaml
ファイルを編集し、以下のようにアップグレードモードを background に設定します。V3_UPGRADE_MODE: background
Red Hat Quay v3 コンテナーを単一ノードで起動し、移行が完了するまで待機します(最大で数分かかります)。以下はコマンドの例です。
Quay コンテナーは、(v2 のポート 80 および 443 ではなく)v3 のポート 8080 および 8443で表示されることに注意してください。したがって、以下の例のように 8080 および 8443 をそれぞれ 80 および 443 に再マッピングすることを推奨します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - その他のすべてのノードで Red Hat Quay v3 コンテナーを起動します。
-
次の手順に進むのに十分なレポーティングがされるまで (ステータスが99%に到達するまで)、
/upgradeprogress
API エンドポイントを監視します。たとえばhttps://myquay.example.com/upgradeprogress
を表示するか、または他のツールを使用して API をクエリーします。 - バックグラウンドプロセスが十分に終了したら、別のメンテナンス期間をスケジュールする必要があります。
- 定期メンテナンス時に、Red Hat Quay クラスター全体を停止します。
各ノードで
config.yaml
ファイルを編集し、以下のように、アップグレードモードをcomplete
に設定します。V3_UPGRADE_MODE: complete
- Red Hat Quay を 1 つのノードで再び起動し、最終チェックを実行できるようにします。
- 最終チェックが完了したら、Red Hat Quay v3 を他のすべてのノードでも起動します。
- quay-builderとclairのv3.0.zバージョンを起動して、クラスタに戻すコンテナのインスタンスを置き換えます。
- Docker バージョン 2、スキーマ 2 と互換性のあるコンテナーのプッシュおよびプルなど、Quay が機能していることを確認します。これには、Windows コンテナーイメージおよび異なるコンピューターアーキテクチャーのイメージ(arm、ppc など)が含まれます。