第9章 テンプレートベースのブローカーデプロイメントのアップロード
以下の手順では、アプリケーションテンプレートをベースとするデプロイメントのブローカーコンテナーイメージをアップグレードする方法を説明します。
OpenShift Container Platform 3.11 で既存の AMQ Broker デプロイメントを OpenShift Container Platform 4.5 以降で実行するには、既存のデプロイメントに一致する AMQ Broker をクリーンインストールする前に、まず OpenShift Container Platform インストールをアップグレードする必要があります。AMQ Broker をクリーンインストールするには、以下のいずれかの方法を使用します。
以下の手順では、マイナー バージョン間でイメージ仕様を手動でアップグレードする方法を説明します(例:
7.x
から7.y
)。イメージ仕様で7.y
などの Floatingタグを使用する場合、StatefulSet または DeploymentConfig のimagePullPolicy
属性がAlways
に設定されていると、デプロイメントは、新しい マイクロ イメージバージョン(7.y-z
)が利用できるように 自動的 にプルし、使用します。たとえば、デプロイメントの
image
属性が7.8
の Floating タグを指定するとします。デプロイメントで現在マイナーバージョン7.8-5
を使用し、新しいマイナーバージョン7.8-6
がレジストリーで利用可能な場合に、デプロイメントは新しいマイナーバージョンを自動的にプルし、これを使用します。新しいイメージを使用するには、デプロイメントの各ブローカー Pod が再起動します。デプロイメントに複数のブローカーがある場合、ブローカー Pod は一度に 1 つずつ再起動されます。
9.1. 永続的でないブローカーデプロイメントのアップグレード
この手順では、永続的ではないブローカーデプロイメントをアップグレードする方法を説明します。OpenShift Container Platform サービスカタログの永続ではないブローカーテンプレートには、以下のようなラベルがあります。
- Red Hat AMQ Broker 7.x(Ephemeral, no SSL)
- Red Hat AMQ Broker 7.x(Ephemeral, with SSL)
- Red Hat AMQ Broker 7.x(Custom Config、Ephemeral、no SSL)
前提条件
- AMQ Broker 7.3 以降では、新しいバージョンの Red Hat Ecosystem Catalog を使用してコンテナーイメージにアクセスします。この新しいバージョンのレジストリーでは、イメージにアクセスして OpenShift プロジェクトにプルする前に、認証されたユーザーである必要があります。このセクションの手順を実施する前に、「Red Hat コンテナーレジストリーの認証」で説明されている手順を完了する必要があります。
手順
- OpenShift Container Platform Web コンソールに移動し、ログインします。
- 永続的ではないブローカーデプロイメントをアップグレードするプロジェクトをクリックします。
ブローカーのデプロイメントに対応する DeploymentConfig(DC)を選択します。
-
OpenShift Container Platform 4.5 以降では、
をクリックします。 -
OpenShift Container Platform 3.11 で、
をクリックします。ブローカーのデプロイメント内で、Configuration タブをクリックします。
-
OpenShift Container Platform 4.5 以降では、
Actions メニューから Edit DeploymentConfig (OpenShift Container Platform 4.5 以降)または Edit YAML (OpenShift Container Platform 3.11)をクリックします。
DeploymentConfig の YAML タブが開き、編集可能なモードの
.yaml
ファイルが表示されます。-
image
属性を編集して、最新の AMQ Broker 7.8 コンテナーイメージregistry.redhat.io/amq7/amq-broker:7.8
を指定します。 imagePullSecrets
属性を追加し、Red Hat コンテナーレジストリーで認証に使用するアカウントに関連付けられたイメージプルシークレットを指定します。前述の 2 つの手順に基づく変更は、以下の例で示されています。
... spec: containers: image: 'registry.redhat.io/amq7/amq-broker:7.8' .. imagePullSecrets: - name: {PULL-SECRET-NAME}
注記AMQ Broker では、Red Hat イメージレジストリーに追加されたコンテナーイメージの新しいバージョンごとにコンテナーイメージタグが
1
ずつ増えます(例: 7.8-1、7.8-2 など)。最後の数字なしでタグ名を指定した場合(例:7.8
)、このタグは Floating タグ と呼ばれています。Floating タグを指定する場合、OpenShift Container Platform は利用可能な最新のイメージ(最後の番号が最も大きいイメージタグ)を自動的に識別し、このイメージを使用してブローカーデプロイメントをアップグレードします。Save をクリックします。
現在インストールされているものよりも新しいブローカーイメージが Red Hat から利用できる場合には、OpenShift Container Platform はブローカーデプロイメントをアップグレードします。これを実行するには、OpenShift Container Platform は既存ブローカー Pod を停止し、新規イメージを使用する新規 Pod を起動します。