7.3. Instalación del operador de Migration Toolkit for Containers heredado en OpenShift Container Platform 3

Puede instalar manualmente el operador de Migration Toolkit for Containers heredado en OpenShift Container Platform 3.

Requisitos previos

  • Debe iniciar la sesión como usuario con privilegios de administrador de clúster en todos los clústeres.
  • Debe tener acceso a registry.redhat.io.
  • Debe tener instalado Podman.
  • Debe crear un secreto de flujo de imágenes y copiarlo en cada nodo del clúster.
  • Debe tener una estación de trabajo Linux con acceso a la red para poder descargar archivos de registry.redhat.io.
  • Debe crear una imagen en espejo del catálogo de operadores.
  • Debe instalar el operador de Migration Toolkit for Containers desde el catálogo de operadores en espejo en OpenShift Container Platform 4.10.

Procedimiento

  1. Inicie sesión en registry.redhat.io con sus credenciales del Portal del cliente de Red Hat:

    $ sudo podman login registry.redhat.io
  2. Descargue el archivo operator.yml:

    $ sudo podman cp $(sudo podman create \
      registry.redhat.io/rhmtc/openshift-migration-legacy-rhel8-operator:v1.5.3):/operator.yml ./
  3. Descargue el archivo controller.yml:

    $ sudo podman cp $(sudo podman create \
      registry.redhat.io/rhmtc/openshift-migration-legacy-rhel8-operator:v1.5.3):/controller.yml ./
  4. Obtenga la asignación de la imagen del operador ejecutando el siguiente comando:

    $ grep openshift-migration-legacy-rhel8-operator ./mapping.txt | grep rhmtc

    El archivo mapping.txt se creó cuando se replicó el catálogo de operadores. El resultado muestra la asignación entre la imagen registry.redhat.io y su imagen de registro en espejo.

    Ejemplo de salida

    registry.redhat.io/rhmtc/openshift-migration-legacy-rhel8-operator@sha256:468a6126f73b1ee12085ca53a312d1f96ef5a2ca03442bcb63724af5e2614e8a=<registry.apps.example.com>/rhmtc/openshift-migration-legacy-rhel8-operator

  5. Actualice los valores de la imagen para los contenedores ansible y operator y el valor REGISTRY en el archivo operator.yml:

    containers:
      - name: ansible
        image: <registry.apps.example.com>/rhmtc/openshift-migration-legacy-rhel8-operator@sha256:<468a6126f73b1ee12085ca53a312d1f96ef5a2ca03442bcb63724af5e2614e8a> 1
    ...
      - name: operator
        image: <registry.apps.example.com>/rhmtc/openshift-migration-legacy-rhel8-operator@sha256:<468a6126f73b1ee12085ca53a312d1f96ef5a2ca03442bcb63724af5e2614e8a> 2
    ...
        env:
        - name: REGISTRY
          value: <registry.apps.example.com> 3
    1 2
    Especifique su registro de réplica y el valor sha256 de la imagen del operador.
    3
    Especifique su registro de réplica.
  6. Inicie sesión en su clúster de OpenShift Container Platform 3.
  7. Cree el objeto del operador de Migration Toolkit for Containers:

    $ oc create -f operator.yml

    Ejemplo de salida

    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
    Puede ignorar los mensajes de error del servidor (AlreadyExists). Son causados por el operador de Migration Toolkit for Containers que crea recursos para versiones anteriores de OpenShift Container Platform 3 que se proporcionan en versiones posteriores.
  8. Cree el objeto MigrationController:

    $ oc create -f controller.yml
  9. Compruebe que los pods de MTC estén en funcionamiento:

    $ oc get pods -n openshift-migration