This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.2. クラスターアプリケーション移行ツールのデプロイ
OLM を使用して OpenShift Container Platform 4.3 ターゲットクラスターおよび 4.1 ソースクラスターに Cluster Application Migration Operator をインストールできます。Cluster Application Migration Operator は、デフォルトで Cluster Application Migration (CAM) ツールをターゲットクラスターにインストールします。
オプション: Cluster Application Migration Operator を、CAM ツールを OpenShift Container Platform 3 クラスターまたはリモートクラスターにインストールするように設定できます。
制限された環境では、ローカルミラーレジストリーから Cluster Application Migration Operator をインストールできます。
クラスターに Cluster Application Migration Operator をインストールした後に、CAM ツールを起動できます。
2.2.1. Cluster Application Migration Operator のインストール
Cluster Application Migration Operator は Operation Lifecycle Manager (OLM) で OpenShift Container Platform 4.3 ターゲットクラスターにインストールすることも、OpenShift Container Platform 4.1 ソースクラスターにインストールすることもできます。
2.2.1.1. Cluster Application Migration Operator の OpenShift Container Platform 4.3 ターゲットクラスターへのインストール
Operator Lifecycle Manager (OLM) を使用して OpenShift Container Platform 4.3 ターゲットクラスターに Cluster Application Migration Operator をインストールできます。
Cluster Application Migration Operator は、デフォルトで Cluster Application Migration ツールをターゲットクラスターにインストールします。
手順
- 
								OpenShift Container Platform Web コンソールで、Operators OperatorHub をクリックします。 
- 
								Filter by keyword フィールド (この場合は Migration) を使用して Cluster Application Migration Operator を見つけます。
- Cluster Application Migration Operator を選択し、Install をクリックします。
- 
								Create Operator Subscription ページで openshift-migrationnamespace を選択し、承認ストラテジーを指定します。
- Subscribe をクリックします。 - Installed Operators ページで、Cluster Application Migration Operator は、InstallSucceeded のステータスで openshift-migration プロジェクトに表示されます。 
- Provided APIs の下で、View 12 more… をクリックします。
- 
								Create New MigrationController をクリックします。 
- Create をクリックします。
- 
								Workloads Pods をクリックし、Controller Manager、Migration UI、Restic、および Velero Pod が実行中であることを確認します。 
2.2.1.2. OpenShift Container Platform 4.1 ソースクラスターへの CAM Operator のインストール
Operator Lifecycle Manager (OLM) を使用して OpenShift Container Platform 4 ソースクラスターに Cluster Application Migration Operator をインストールできます。
手順
- 
								OpenShift Container Platform Web コンソールで、Catalog OperatorHub をクリックします。 
- 
								Filter by keyword フィールド (この場合は Migration) を使用して Cluster Application Migration Operator を見つけます。
- Cluster Application Migration Operator を選択し、Install をクリックします。
- 
								Create Operator Subscription ページで openshift-migrationnamespace を選択し、承認ストラテジーを指定します。
- Subscribe をクリックします。 - Installed Operators ページで、Cluster Application Migration Operator は、InstallSucceeded のステータスで openshift-migration プロジェクトに表示されます。 
- Provided APIs の下で、View 12 more… をクリックします。
- 
								Create New MigrationController をクリックします。 
- migration_controllerおよび- migration_uiパラメーターを更新し、- deprecated_cors_configurationパラメーターを- specスタンザに追加します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- Create をクリックします。
- 
								Workloads Pods をクリックし、Restic および Velero Pod が実行されていることを確認します。 
2.2.2. 制限された環境での Cluster Application Migration Operator のインストール
OpenShift Container Platform 4 のカスタム Operator カタログイメージをビルドし、これをローカルミラーイメージレジストリーにプッシュし、Operator Lifecycle Manager をローカルレジストリーから Cluster Application Migration Operator をインストールするように設定できます。
2.2.2.1. Operator カタログイメージのビルド
クラスター管理者は、Operator Lifecycle Manager (OLM) によって使用されるカスタム Operator カタログイメージをビルドし、Docker v2-2 をサポートするコンテナーイメージレジストリーにそのイメージをプッシュできます。ネットワークが制限された環境のクラスターの場合、このレジストリーには、ネットワークが制限されたインストールで作成されたミラーレジストリーなど、クラスターにネットワークアクセスのあるレジストリーを使用できます。
OpenShift Container Platform クラスターの内部レジストリーはターゲットレジストリーとして使用できません。これは、ミラーリングプロセスで必要となるタグを使わないプッシュをサポートしないためです。
以下の例では、お使いのネットワークとインターネットの両方にアクセスできるミラーレジストリーを使用することを前提としています。
前提条件
- ネットワークアクセスが無制限の Linux ワークステーション
- 
								ocversion 4.3.5+
- 
								podmanversion 1.4.4+
- Docker v2-2 をサポートするミラーレジストリーへのアクセス
- プライベートレジストリーを使用している場合、後続の手順で使用するために - REG_CREDS環境変数をレジストリー認証情報のファイルパスに設定します。たとえば- podmanCLI の場合は、以下のようになります。- REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json- $ REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- quay.io アカウントがアクセスできるプライベート namespace を使用している場合、Quay 認証トークンを設定する必要があります。quay.io 認証情報を使用してログイン API に対して要求を行うことにより、 - --auth-tokenフラグで使用できる- AUTH_TOKEN環境変数を設定します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
手順
- ネットワークアクセスが無制限のワークステーションで、ターゲットミラーレジストリーを使用して認証を行います。 - podman login <registry_host_name> - $ podman login <registry_host_name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - また、ビルド時にベースイメージをプルできるように、 - registry.redhat.ioで認証します。- podman login registry.redhat.io - $ podman login registry.redhat.io- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- quay.ioから - redhat-operatorsカタログをベースにカタログイメージをビルドし、そのイメージにタグを付け、ミラーレジストリーにプッシュします。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- App Registry インスタンスからのプルに使用する組織 (namespace)。
- 2
- ターゲット OpenShift Container Platform クラスターのメジャーバージョンおよびマイナーバージョンに一致するタグを使用して、--fromをose-operator-registryベースイメージに設定します。
- 3
- --filter-by-osを、ターゲットの OpenShift Container Platform クラスターと一致する必要のある、ベースイメージに使用するオペレーティングシステムおよびアーキテクチャーに設定します。使用できる値は、- linux/amd64、- linux/ppc64le、および- linux/s390xです。
- 4
- カタログイメージに名前を付け、v1などのタグを追加します。
- 5
- オプション: 必要な場合は、レジストリー認証情報ファイルの場所を指定します。
- 6
- オプション: ターゲットレジストリーの信頼を設定しない場合は、--insecureフラグを追加します。
- 7
- オプション: 公開されていない他のアプリケーションレジストリーカタログが使用されている場合、Quay 認証トークンを指定します。
 - 無効なマニフェストが Red Hat のカタログに誤って導入される可能性があります。これが実際に生じる場合には、以下のようなエラーが表示される可能性があります。 - ... INFO[0014] directory dir=/var/folders/st/9cskxqs53ll3wdn434vw4cd80000gn/T/300666084/manifests-829192605 file=4.2 load=package W1114 19:42:37.876180 34665 builder.go:141] error building database: error loading package into db: fuse-camel-k-operator.v7.5.0 specifies replacement that couldn't be found Uploading ... 244.9kB/s - ... INFO[0014] directory dir=/var/folders/st/9cskxqs53ll3wdn434vw4cd80000gn/T/300666084/manifests-829192605 file=4.2 load=package W1114 19:42:37.876180 34665 builder.go:141] error building database: error loading package into db: fuse-camel-k-operator.v7.5.0 specifies replacement that couldn't be found Uploading ... 244.9kB/s- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 通常、これらのエラーは致命的なエラーではなく、該当する Operator パッケージにインストールする予定の Operator やその依存関係が含まれない場合、それらを無視することができます。 
2.2.2.2. ネットワークが制限された環境向けの OperatorHub の設定
						クラスター管理者は、カスタム Operator カタログイメージを使用し、OLM および OperatorHub をネットワークが制限された環境でローカルコンテンツを使用するように設定できます。この例では、以前にビルドされ、サポートされているレジストリーにプッシュされたカスタム redhat-operators カタログイメージを使用します。
					
前提条件
- ネットワークアクセスが無制限の Linux ワークステーション
- サポートされているレジストリーにプッシュされるカスタム Operator カタログイメージ
- 
								ocversion 4.3.5+
- 
								podmanversion 1.4.4+
- Docker v2-2 をサポートするミラーレジストリーへのアクセス
- プライベートレジストリーを使用している場合、後続の手順で使用するために - REG_CREDS環境変数をレジストリー認証情報のファイルパスに設定します。たとえば- podmanCLI の場合は、以下のようになります。- REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json- $ REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
手順
- disableAllDefaultSources: trueを仕様に追加してデフォルトの OperatorSource を無効にします。- oc patch OperatorHub cluster --type json \ -p '[{"op": "add", "path": "/spec/disableAllDefaultSources", "value": true}]'- $ oc patch OperatorHub cluster --type json \ -p '[{"op": "add", "path": "/spec/disableAllDefaultSources", "value": true}]'- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - これにより、OpenShift Container Platform のインストール時にデフォルトで設定されるデフォルトの OperatorSource が無効になります。 
- oc adm catalog mirrorコマンドは、カスタム Operator カタログイメージのコンテンツを抽出し、ミラーリングに必要なマニフェストを生成します。以下のいずれかを選択できます。- コマンドのデフォルト動作で、マニフェストの生成後にすべてのイメージコンテンツをミラーレジストリーに自動的にミラーリングできるようにします。または、
- 
										--manifests-onlyフラグを追加して、ミラーリングに必要なマニフェストのみを生成しますが、これにより、イメージコンテンツがレジストリーに自動的にミラーリングされる訳ではありません。これは、ミラーリングする内容を確認するのに役立ちます。また、コンテンツのサブセットのみが必要な場合に、マッピングの一覧に変更を加えることができます。次に、そのファイルをoc image mirrorコマンドで使用し、後のステップでイメージの変更済みの一覧をミラーリングできます。
 - ネットワークアクセスが無制限のワークステーションで、以下のコマンドを実行します。 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- Operator カタログイメージを指定します。
- 2
- オプション: 必要な場合は、レジストリー認証情報ファイルの場所を指定します。
- 3
- オプション: ターゲットレジストリーの信頼を設定しない場合は、--insecureフラグを追加します。
- 4
- オプション: カタログは複数のアーキテクチャーおよびオペレーティングシステムをサポートするイメージを参照する可能性があるため、アーキテクチャーおよびオペレーティングシステムでフィルターして、一 致するイメージのみをミラーリングするようにできます。使用できる値は、linux/amd64、linux/ppc64le、およびlinux/s390xです。
- 5
- オプション: ミラーリングに必要なマニフェストのみを生成し、実際にはイメージコンテンツをレジストリーにミラーリングしません。
 - 出力例 - using database path mapping: /:/tmp/190214037 wrote database to /tmp/190214037 using database at: /tmp/190214037/bundles.db ... - using database path mapping: /:/tmp/190214037 wrote database to /tmp/190214037 using database at: /tmp/190214037/bundles.db- 1 - ...- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- コマンドで生成される一時的なデータベース。
 - コマンドの実行後に、 - <image_name>-manifests/ディレクトリーが現在のディレクトリーに作成され、以下のファイルが生成されます。- 
										これにより、imageContentSourcePolicy.yamlファイルは ImageContentSourcePolicy オブジェクトを定義します。このオブジェクトは、このオブジェクトは、ノードを Operator マニフェストおよびミラーリングされたレジストリーに保存されるイメージ参照間で変換できるように設定します。
- 
										mapping.txtファイルには、すべてのソースイメージが含まれ、これはそれらのイメージをターゲットレジストリー内のどこにマップするかを示します。このファイルはoc image mirrorコマンドと互換性があり、ミラーリング設定をさらにカスタマイズするために使用できます。
 
- 直前の手順で - --manifests-onlyフラグを使用して、コンテンツのサブセットのみをミラーリングする場合は、以下を実行します。- mapping.txtファイルのイメージの一覧を仕様に変更します。ミラーリングするイメージのサブセットの名前とバージョンが不明な場合は、以下の手順で確認します。- oc adm catalog mirrorコマンドで生成された一時的なデータベースに対して- sqlite3ツールを実行し、一般的な検索クエリーに一致するイメージの一覧を取得します。出力は、後に- mapping.txtファイルを編集する方法を通知するのに役立ちます。- たとえば、 - clusterlogging.4.3の文字列のようなイメージの一覧を取得するには、以下を実行します。- echo "select * from related_image \ where operatorbundle_name like 'clusterlogging.4.3%';" \ | sqlite3 -line /tmp/190214037/bundles.db- $ echo "select * from related_image \ where operatorbundle_name like 'clusterlogging.4.3%';" \ | sqlite3 -line /tmp/190214037/bundles.db- 1 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- oc adm catalog mirrorコマンドの直前の出力を参照し、データベースファイルのパスを見つけます。
 - 出力例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 直前の手順で取得した結果を使用して - mapping.txtファイルを編集し、ミラーリングする必要のあるイメージのサブセットのみを追加します。- たとえば、前述の出力例の - image値を使用して、- mapping.txtファイルに以下の一致する行が存在することを確認できます。- mapping.txtの一致するイメージマッピング。- registry.redhat.io/openshift4/ose-logging-kibana5@sha256:aa4a8b2a00836d0e28aa6497ad90a3c116f135f382d8211e3c55f34fb36dfe61=<registry_host_name>:<port>/openshift4-ose-logging-kibana5:a767c8f0 registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6b4db07f6e6c962fc96473d86c44532c93b146bbefe311d0c348117bf759c506=<registry_host_name>:<port>/openshift4-ose-oauth-proxy:3754ea2b - registry.redhat.io/openshift4/ose-logging-kibana5@sha256:aa4a8b2a00836d0e28aa6497ad90a3c116f135f382d8211e3c55f34fb36dfe61=<registry_host_name>:<port>/openshift4-ose-logging-kibana5:a767c8f0 registry.redhat.io/openshift4/ose-oauth-proxy@sha256:6b4db07f6e6c962fc96473d86c44532c93b146bbefe311d0c348117bf759c506=<registry_host_name>:<port>/openshift4-ose-oauth-proxy:3754ea2b- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - この例では、これらのイメージのみをミラーリングする場合に、 - mapping.txtファイルの他のすべてのエントリーを削除し、上記の 2 行のみを残します。
 
- ネットワークアクセスが無制限のワークステーション上で、変更した - mapping.txtファイルを使用し、- oc image mirrorコマンドを使用してイメージをレジストリーにミラーリングします。- oc image mirror \ [-a ${REG_CREDS}] \ -f ./redhat-operators-manifests/mapping.txt- $ oc image mirror \ [-a ${REG_CREDS}] \ -f ./redhat-operators-manifests/mapping.txt- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- ImageContentSourcePolicy を適用します。 - oc apply -f ./redhat-operators-manifests/imageContentSourcePolicy.yaml - $ oc apply -f ./redhat-operators-manifests/imageContentSourcePolicy.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- カタログイメージを参照する CatalogSource オブジェクトを作成します。 - 仕様を以下のように変更し、これを - catalogsource.yamlファイルとして保存します。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- Operator カタログイメージを指定します。
 
- このファイルを使用して CatalogSource オブジェクトを作成します。 - oc create -f catalogsource.yaml - $ oc create -f catalogsource.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- 以下のリソースが正常に作成されていることを確認します。 - Pod を確認します。 - oc get pods -n openshift-marketplace - $ oc get pods -n openshift-marketplace- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME READY STATUS RESTARTS AGE my-operator-catalog-6njx6 1/1 Running 0 28s marketplace-operator-d9f549946-96sgr 1/1 Running 0 26h - NAME READY STATUS RESTARTS AGE my-operator-catalog-6njx6 1/1 Running 0 28s marketplace-operator-d9f549946-96sgr 1/1 Running 0 26h- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- CatalogSource を確認します。 - oc get catalogsource -n openshift-marketplace - $ oc get catalogsource -n openshift-marketplace- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME DISPLAY TYPE PUBLISHER AGE my-operator-catalog My Operator Catalog grpc 5s - NAME DISPLAY TYPE PUBLISHER AGE my-operator-catalog My Operator Catalog grpc 5s- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- PackageManifest を確認します。 - oc get packagemanifest -n openshift-marketplace - $ oc get packagemanifest -n openshift-marketplace- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - NAME CATALOG AGE etcd My Operator Catalog 34s - NAME CATALOG AGE etcd My Operator Catalog 34s- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
ネットワークが制限された環境の OpenShift Container Platform クラスター Web コンソールで、OperatorHub ページから Operator をインストールできます。
2.2.2.3. 制限された環境での Cluster Application Migration Operator の OpenShift Container Platform 4.3 ターゲットクラスターへのインストール
Operator Lifecycle Manager (OLM) を使用して OpenShift Container Platform 4.3 ターゲットクラスターに Cluster Application Migration Operator をインストールできます。
Cluster Application Migration Operator は、デフォルトで Cluster Application Migration ツールをターゲットクラスターにインストールします。
前提条件
- カスタム Operator カタログを作成し、これをミラーレジストリーにプッシュしていること。
- ミラーレジストリーから Cluster Application Migration Operator をインストールするように OLM を設定していること。
手順
- 
								OpenShift Container Platform Web コンソールで、Operators OperatorHub をクリックします。 
- 
								Filter by keyword フィールド (この場合は Migration) を使用して Cluster Application Migration Operator を見つけます。
- Cluster Application Migration Operator を選択し、Install をクリックします。
- 
								Create Operator Subscription ページで openshift-migrationnamespace を選択し、承認ストラテジーを指定します。
- Subscribe をクリックします。 - Installed Operators ページで、Cluster Application Migration Operator は、InstallSucceeded のステータスで openshift-migration プロジェクトに表示されます。 
- Provided APIs の下で、View 12 more… をクリックします。
- 
								Create New MigrationController をクリックします。 
- Create をクリックします。
- 
								Workloads Pods をクリックし、Controller Manager、Migration UI、Restic、および Velero Pod が実行中であることを確認します。 
2.2.2.4. 制限された環境での Cluster Application Migration Operator の OpenShift Container Platform 4.1 ソースクラスターへのインストール
Operator Lifecycle Manager (OLM) を使用して OpenShift Container Platform 4 ソースクラスターに Cluster Application Migration Operator をインストールできます。
前提条件
- カスタム Operator カタログを作成し、これをミラーレジストリーにプッシュしていること。
- ミラーレジストリーから Cluster Application Migration Operator をインストールするように OLM を設定していること。
手順
- 
								Filter by keyword フィールド (この場合は Migration) を使用して Cluster Application Migration Operator を見つけます。
- Cluster Application Migration Operator を選択し、Install をクリックします。
- 
								Create Operator Subscription ページで openshift-migrationnamespace を選択し、承認ストラテジーを指定します。
- Subscribe をクリックします。 - Installed Operators ページで、Cluster Application Migration Operator は、InstallSucceeded のステータスで openshift-migration プロジェクトに表示されます。 
- Provided APIs の下で、View 12 more… をクリックします。
- 
								Create New MigrationController をクリックします。 
- Create をクリックします。
2.2.3. CAM Web コンソールの起動
ブラウザーで CAM Web コンソールを起動できます。
手順
- CAM ツールがインストールされている OpenShift Container Platform クラスターにログインします。
- 以下のコマンドを入力して CAM Web コンソール URL を取得します。 - oc get -n openshift-migration route/migration -o go-template='https://{{ .spec.host }}'- $ oc get -n openshift-migration route/migration -o go-template='https://{{ .spec.host }}'- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力は - https://migration-openshift-migration.apps.cluster.openshift.comのようになります。
- ブラウザーを起動し、CAM Web コンソールに移動します。 注記- Cluster Application Migration Operator のインストール後すぐに CAM Web コンソールにアクセスしようとする場合、Operator は依然としてクラスターを設定しているため、コンソールが読み込まれないことがあります。数分待機した後に再試行します。 
- 自己署名 CA 証明書を使用している場合、ソースクラスターの API サーバーの CA 証明書を受け入れることを求めるプロンプトが出されます。Web ページは、残りの証明書を受け入れるプロセスについて説明します。
- OpenShift Container Platform の ユーザー名 および パスワード を使用してログインします。