1.4. MTC (Migration Toolkit for Containers) のインストールおよびアップグレード

OpenShift Container Platform 4.5 ターゲットクラスターおよび OpenShift Container Platform 3 ソースクラスターに MTC (Migration Toolkit for Containers) をインストールすることができます。

Migration Controller Pod は、デフォルトでターゲットクラスターで実行されます。Migration コントローラー Pod を ソースクラスターまたはリモートクラスター で実行するように設定できます。

1.4.1. 接続された環境での MTC (Migration Toolkit for Containers) のインストール

接続された環境で MTC (Migration Toolkit for Containers) をインストールできます。

重要

すべてのクラスターに同じ MTC バージョンをインストールする必要があります。

1.4.1.1. Migration Toolkit for Containers の OpenShift Container Platform 4.5 ターゲットクラスターへのインストール

MTC (Migration Toolkit for Containers) を OpenShift Container Platform 4.5 ターゲットクラスターにインストールできます。

前提条件

  • cluster-admin 権限を持つユーザーとしてすべてのクラスターにログインしている必要があります。

手順

  1. OpenShift Container Platform Web コンソールで、OperatorsOperatorHub をクリックします。
  2. Filter by keyword フィールドを使用して、 Migration Toolkit for Containers Operator を見つけます。
  3. Migration Toolkit for Containers Operator を選択し、Install をクリックします。

    注記

    サブスクリプションの承認オプションを Automatic に変更しないでください。MTC (Migration Toolkit for Containers) のバージョンは、ソースとターゲットクラスターで同一である必要があります。

  4. Install をクリックします。

    Installed Operators ページで、Migration Toolkit for Containers Operator は、Succeeded のステータスで openshift-migration プロジェクトに表示されます。

  5. Migration Toolkit for Containers Operator をクリックします。
  6. Provided APIs の下で Migration Controller タイルを見つけ、Create Instance をクリックします。
  7. Create をクリックします。
  8. WorkloadsPods をクリックし、MTC Pod が実行されていることを確認します。

1.4.1.2. OpenShift Container Platform 3 ソースクラスターへの Migration Toolkit for Containers Operator のインストール

Migration Toolkit for Containers (MTC) を手動で OpenShift Container Platform 3 ソースクラスターにインストールできます。

重要

OpenShift Container Platform 3 および 4 クラスターに同じ MTC バージョンをインストールする必要があります。

OpenShift Container Platform 3 クラスターで最新バージョンを使用できるようにするには、移行計画を作成し、実行する準備ができたら operator.yml および controller-3.yml ファイルをダウンロードします。

前提条件

  • cluster-admin 権限を持つユーザーとしてすべてのクラスターにログインしている必要があります。
  • registry.redhat.io にアクセスできる必要があります。
  • podman がインストールされている必要があります。
  • ソースクラスターは OpenShift Container Platform 3.7、3.9、3.10、または 3.11 である必要があります。
  • ソースクラスターは、イメージを registry.redhat.io からプルするように設定されている必要があります。

    イメージをプルするには、イメージストリームのシークレットを作成 し、これをクラスター内の各ノードにコピーする必要があります。

手順

  1. Red Hat カスタマーポータルの認証情報を使用して registry.redhat.io にログインします。

    $ sudo podman login registry.redhat.io
  2. operator.yml ファイルをダウンロードします。

    $ sudo podman cp $(sudo podman create \
      registry.redhat.io/rhmtc/openshift-migration-rhel7-operator:v1.4):/operator.yml ./
  3. controller-3.yml ファイルをダウンロードします。

    $ sudo podman cp $(sudo podman create \
      registry.redhat.io/rhmtc/openshift-migration-rhel7-operator:v1.4):/controller-3.yml ./
  4. OpenShift Container Platform 3 クラスターにログインします。
  5. クラスターが registry.redhat.io で認証できることを確認します。

    $ oc run test --image registry.redhat.io/ubi8 --command sleep infinity
  6. Migration Toolkit for Containers Operator オブジェクトを作成します。

    $ oc create -f operator.yml

    出力例

    namespace/openshift-migration created
    rolebinding.rbac.authorization.k8s.io/system:deployers created
    serviceaccount/migration-operator created
    customresourcedefinition.apiextensions.k8s.io/migrationcontrollers.migration.openshift.io created
    role.rbac.authorization.k8s.io/migration-operator created
    rolebinding.rbac.authorization.k8s.io/migration-operator created
    clusterrolebinding.rbac.authorization.k8s.io/migration-operator created
    deployment.apps/migration-operator created
    Error from server (AlreadyExists): error when creating "./operator.yml":
    rolebindings.rbac.authorization.k8s.io "system:image-builders" already exists 1
    Error from server (AlreadyExists): error when creating "./operator.yml":
    rolebindings.rbac.authorization.k8s.io "system:image-pullers" already exists

    1
    Error from server (AlreadyExists) メッセージは無視できます。これらは、以降のリソースで提供される OpenShift Container Platform 3 の以前のバージョン用にリソースを作成する Migration Toolkit for Containers Operator によって生じます。
  7. MigrationController オブジェクトを作成します。

    $ oc create -f controller-3.yml
  8. Velero および Restic Pod が実行されていることを確認します。

    $ oc get pods -n openshift-migration