Duplicar imágenes utilizando un registro de contenedores intermediario (Actualización de la versión 5.2 a la versión 5.3 )

Si la estación de trabajo de su cliente no puede conectarse a Internet ni al registro de contenedores privado, deberá duplicar las imágenes en un registro de contenedores intermediario antes de poder duplicarlas en su registro de contenedores privado.

Si la estación de trabajo de su cliente puede conectarse a Internet y al registro de contenedores privado, consulte Duplicar imágenes directamente en el registro de contenedores privado.

Fase de actualización
  • No estás aquí. Actualización de la estación de trabajo del cliente
  • No estás aquí. Recopilación de la información necesaria
  • No estás aquí. Preparación para ejecutar una actualización en una red restringida
  • Icono «Estás aquí». Preparación para ejecutar una actualización desde un registro de contenedores privado
  • No estás aquí. Actualización del software necesario
  • No estás aquí. Actualización de componentes compartidos del clúster
  • No estás aquí. Preparación para actualizar una instancia
  • No estás aquí. Actualización de una instancia
¿Quién debe completar esta tarea?

Administrador del registro Un administrador del registro o un usuario con permisos para enviar imágenes al registro de contenedores privado debe completar esta tarea.

¿Cuándo necesitas completar esta tarea?

Si extrae imágenes de un registro de contenedores privado, debe completar esta tarea antes de actualizar IBM® Software Hub.

Si tiene varias instancias de IBM Software Hub en su clúster, puede:

  • Configuración única Minimice el número de veces que duplica las imágenes de software mediante:
    1. Identificar todas las instancias de IBM Software Hub en el clúster.
    2. Identificar todos los componentes que están instalados en cada instancia.
    3. Especificar todos los componentes para todas las instancias al duplicar las imágenes.
  • Repita según sea necesario Refleje las imágenes para una instancia a la vez.

Antes de empezar

Práctica recomendada: puede ejecutar los comandos de esta tarea tal y como están escritos utilizando las variables de entorno de instalación. Asegúrate de haber añadido las nuevas variables de entorno desde Actualizar tu script de variables de entorno.

Además, asegúrese de obtener las variables de entorno antes de ejecutar los comandos de esta tarea.

Antes de reflejar las imágenes en el registro de contenedores privado:
  1. Asegúrate de tener suficiente espacio para las imágenes que planeas duplicar. Para obtener información sobre los tamaños aproximados de las imágenes, consulte Requisitos de hardware.
  2. Si planea instalar un servicio con una dependencia del componente Inference foundation models (ibm-watsonx-ai-ifm):
    1. Asegúrese de que Skopeo está instalado en la estación de trabajo del cliente:
      yum install skopeo
    2. Asegúrate de tener tu Red Hat® nombre de usuario y contraseña. (Las credenciales que utiliza para autenticarse en https://access.redhat.com)
    3. Establezca la REDHAT_ACCESS_USERNAME variable de entorno con su Red Hat nombre de usuario:
      export REDHAT_ACCESS_USERNAME=<username>
    4. Establezca la REDHAT_ACCESS_PASSWORD variable de entorno con la contraseña asociada a su Red Hat nombre de usuario:
      export REDHAT_ACCESS_PASSWORD=<password>

Acerca de esta tarea

Utilice los cpd-cli manage comandos para:
  • Refleje las imágenes del IBM Entitled Registry en un registro de contenedores intermedio en la estación de trabajo del cliente.
  • Refleje las imágenes del registro de contenedores intermediario en el registro de contenedores privado.

El cpd-cli manage mirror-images comando configura automáticamente un registro de contenedores intermediario en la estación de trabajo del cliente. La dirección del registro de contenedores intermediario es 127.0.0.1:12443.

Debe poder mover el registro de contenedores intermediario detrás de su firewall.

Los siguientes pasos asumen que las siguientes afirmaciones son ciertas:
  • Reflejará todos los componentes en un solo paso.

    Los componentes que se reflejan se determinan mediante la ${COMPONENTS} variable, desde el script de variables de entorno de instalación.

    Si desea duplicar un componente específico en lugar de varios componentes, puede exportarlo COMPONENTS con el ID de componente adecuado.

  • Identificaste los modelos o imágenes opcionales que necesitas duplicar

    Los modelos y las imágenes opcionales que se reflejan se determinan mediante la ${IMAGE_GROUPS} variable, desde el script de variables de entorno de instalación.

    Si no necesita duplicar ningún modelo o imagen opcional, ejecute los comandos que no incluyen la ${IMAGE_GROUPS} variable.

Procedimiento

  1. Desde una estación de trabajo cliente que pueda conectarse a Internet:
    1. Inicie sesión en el IBM Entitled Registry registro:
      cpd-cli manage login-entitled-registry \
      ${IBM_ENTITLEMENT_KEY}
    2. Confirma que tienes acceso a las imágenes que deseas duplicar desde IBM Entitled Registry:
      1. Inspeccione el IBM Entitled Registry:
        Consejo: Si desea comprobar que tiene acceso a las imágenes de un componente específico, puede ejecutar el siguiente comando antes de ejecutar el list-images comando:
        export COMPONENTS=<component-ID>
        Ejecute el comando adecuado para su entorno:
        Ya tienes los paquetes CASE en la estación de trabajo del cliente
        cpd-cli manage list-images \
        --components=${COMPONENTS} \
        --release=${VERSION} \
        --inspect_source_registry=true

        Descargue los paquetes « CASE » (Complemento de control de eventos) desde GitHub ( github.com/IBM )
        cpd-cli manage list-images \
        --components=${COMPONENTS} \
        --release=${VERSION} \
        --inspect_source_registry=true

        Descargue los paquetes « CASE » del repositorio « IBM Cloud Pak » de Open Container Initiative
        cpd-cli manage list-images \
        --components=${COMPONENTS} \
        --release=${VERSION} \
        --inspect_source_registry=true \
        --from_oci=true

        El resultado se guarda en el list_images.csv archivo del work/offline/${VERSION} directorio.

      2. Comprueba si hay errores en la salida:
        grep "level=fatal" list_images.csv

        El comando devuelve imágenes que han fallado debido a errores de autorización o errores de red.

    3. EDB Postgres Standard Solo para usuarios. Si ha adquirido EDB Postgres Standard, ejecute el siguiente comando para eliminar las EDB Postgres Enterprise imágenes de la lista de imágenes que se replicarán en el registro de contenedores privado:
      Estaciones de trabajo que utilizan el directorio cpd-cli-workspace/olm-utils-workspace/work predeterminado
      sed -i -e '/edb-postgres-advanced/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-cpd-edb/*/ibm-cpd-edb-*-images.csv
      Estaciones de trabajo que utilizan la variable CPD_CLI_MANAGE_WORKSPACE de entorno
      sed -i -e '/edb-postgres-advanced/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-cpd-edb/*/ibm-cpd-edb-*-images.csv
    4. Watson Studio Solo para usuarios. Si está duplicando las imágenes para Watson Studio, puede eliminar las siguientes imágenes si no las necesita:

      Imágenes de GPU

      Las imágenes de la GPU se reflejan de forma predeterminada. Si no necesita imágenes GPU, ejecute el siguiente comando para eliminarlas:

      Estaciones de trabajo que utilizan el directorio cpd-cli-workspace/olm-utils-workspace/work predeterminado
      sed -i -e '/gpu/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
      Estaciones de trabajo que utilizan la variable CPD_CLI_MANAGE_WORKSPACE de entorno
      sed -i -e '/gpu/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv

      Modelos de PLN preentrenados

      Las imágenes NLP preentrenadas se reflejan de forma predeterminada. Si no necesita modelos de procesamiento del lenguaje natural (NLP) preentrenados, ejecute el siguiente comando para eliminarlos:

      Estaciones de trabajo que utilizan el directorio cpd-cli-workspace/olm-utils-workspace/work predeterminado
      sed -i -e '/nlp/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
      Estaciones de trabajo que utilizan la variable CPD_CLI_MANAGE_WORKSPACE de entorno
      sed -i -e '/nlp/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv

    5. Refleje las imágenes en el registro de contenedores intermediario.

      El comando configura automáticamente un registro de contenedores intermediario en la estación de trabajo del cliente. La dirección del registro de contenedores intermediario es 127.0.0.1:12443.

      Consejo: Determina si necesitas modificar el comportamiento de este comando:
      • De forma predeterminada, este comando solo refleja las imágenes que son necesarias para la arquitectura de su clúster. Si desea duplicar las imágenes para todas las arquitecturas compatibles, elimine la --arch=${IMAGE_ARCH} opción.
      • Este comando duplica las imágenes de todos los componentes especificados en la variable ${COMPONENTS} de entorno. Si desea duplicar imágenes para un componente específico, puede ejecutar export COMPONENTS=<component-ID> antes de ejecutar el comando.

      Es necesario reflejar modelos o imágenes opcionales
      cpd-cli manage mirror-images \
      --components=${COMPONENTS} \
      --groups=${IMAGE_GROUPS} \
      --release=${VERSION} \
      --target_registry=127.0.0.1:12443 \
      --arch=${IMAGE_ARCH} \
      --case_download=false

      No es necesario duplicar modelos o imágenes opcionales
      cpd-cli manage mirror-images \
      --components=${COMPONENTS} \
      --release=${VERSION} \
      --target_registry=127.0.0.1:12443 \
      --arch=${IMAGE_ARCH} \
      --case_download=false

      Para cada componente, el comando genera un archivo de registro en el work directorio.

      Consejo: Ejecute el siguiente comando para imprimir cualquier error en los archivos de registro:
      grep "error" mirror_*.log
    6. Confirma que las imágenes se han reflejado en el registro de contenedores intermedio:
      1. Inspeccione el contenido del registro de contenedores intermedios:
        cpd-cli manage list-images \
        --components=${COMPONENTS} \
        --release=${VERSION} \
        --target_registry=127.0.0.1:12443 \
        --case_download=false

        El resultado se guarda en el list_images.csv archivo del work/offline/${VERSION} directorio.

      2. Comprueba si hay errores en la salida:
        grep "level=fatal" list_images.csv

        El comando devuelve imágenes que faltan o que no se pueden inspeccionar.

    7. Si planea instalar un servicio con una dependencia del componente Inference foundation models (ibm-watsonx-ai-ifm), copie las imágenes vLLM necesarias al registro de contenedores intermediario.

      Las imágenes que refleje dependerán de los modelos que tenga previsto instalar.

      Modelos de Mistral AI
      Si planea instalar cualquiera de los siguientes Mistral AI modelos, debe duplicar la imagen requerida vLLM desde el IBM Entitled Registry:
      • codestral-22b
      • codestral-2501
      • ministral-8b-instruct
      • mistral-large
      • mistral-large-instruct-2411
      • mistral-small-instruct
      • pixtral-large-instruct-2411
      skopeo copy --all \
      --src-username cp \
      --src-password ${IBM_ENTITLEMENT_KEY} \
      --src-tls-verify=false \
      --dest-tls-verify=false \
      docker://cp.icr.io/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9 \
      docker://127.0.0.1:12443/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9
      Todos los demás modelos
      Para todos los demás modelos, debe duplicar la imagen CUDA RHOAI vLLM desde registry.redhat.io:
      1. Iniciar sesión en registry.redhat.io:
        skopeo login registry.redhat.io \
        --username ${REDHAT_ACCESS_USERNAME} \
        --password ${REDHAT_ACCESS_PASSWORD}
      2. Copie la imagen en el tmp/rhoai-new directorio de la estación de trabajo del cliente:
        skopeo copy --all 
        docker://registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:fb84fbf103bf450ef5b060fc5f21a9cf16b166dba207a3c50aa91bccd919d604 \
        dir://tmp/rhoai-new
  2. Mueva el registro de contenedores intermediario detrás del firewall.

    Opciones para trasladar el registro de contenedores intermediarios
    Opción Detalles
    Utilice un dispositivo informático portátil, como un ordenador portátil, que pueda mover detrás de su cortafuegos.
    Puede utilizar el mismo dispositivo para:
    • Imágenes espejo desde el IBM Entitled Registry al registro de contenedores intermediario.
    • Duplicar imágenes del registro de contenedor intermedio en el registro de contenedor privado.
    Utilice un dispositivo de almacenamiento portátil, como una unidad USB, que pueda mover detrás de su firewall.
    Debe configurar dos estaciones de trabajo cliente:
    • Una estación de trabajo que se puede conectar a Internet. Desde esta estación de trabajo, puede duplicar las imágenes del IBM Entitled Registry al registro de contenedores intermedio en el dispositivo de almacenamiento portátil.
    • Una estación de trabajo que pueda conectarse al registro de contenedores privado. Después de mover el dispositivo de almacenamiento portátil a esta estación de trabajo, puede duplicar las imágenes del registro de contenedores intermedio al registro de contenedores privado.
    Importante: La estación de trabajo que se puede conectar al registro de contenedores privado debe tener:
    • Una copia del cpd-cli
    • Una copia del work directorio, que contiene los CASE paquetes y el registro de contenedores intermediarios.

      Para simplificar, puede copiar todo el cpd-cli-workspace directorio CPD_CLI_MANAGE_WORKSPACE o.

    Utilice un protocolo de transferencia de archivos, como scp o sftp, para mover imágenes detrás de su firewall.
    Debe configurar dos estaciones de trabajo cliente:
    • Una estación de trabajo que se puede conectar a Internet. Desde esta estación de trabajo, puede duplicar las imágenes del IBM Entitled Registry al registro de contenedores intermedio.
    • Una estación de trabajo que pueda conectarse al registro de contenedores privado. Después de transferir el registro de contenedores intermediario a esta estación de trabajo, puede duplicar las imágenes del registro de contenedores intermediario al registro de contenedores privado.
    Importante: La estación de trabajo que se puede conectar al registro de contenedores privado debe tener:
    • Una copia del cpd-cli
    • Una copia del work directorio, que contiene los CASE paquetes y el registro de contenedores intermediarios.

      Para simplificar, puede copiar todo el cpd-cli-workspace directorio CPD_CLI_MANAGE_WORKSPACE o.


  3. Si ha duplicado la imagen CUDA RHOAI vLLM en el tmp/rhoai-new directorio, mueva el directorio detrás del cortafuegos.
  4. Desde una estación de trabajo cliente que se conecta al registro de contenedores privado:
    1. Inicie sesión en el registro privado de contenedores.

      El siguiente comando asume que está utilizando un registro de contenedores privado protegido con credenciales:

      cpd-cli manage login-private-registry \
      ${PRIVATE_REGISTRY_LOCATION} \
      ${PRIVATE_REGISTRY_PUSH_USER} \
      ${PRIVATE_REGISTRY_PUSH_PASSWORD}
      Si su registro privado no es seguro, omita los siguientes argumentos:
      • ${PRIVATE_REGISTRY_PUSH_USER}
      • ${PRIVATE_REGISTRY_PUSH_PASSWORD}
    2. Refleje las imágenes del registro de contenedores intermediario en el registro de contenedores privado.
      Consejo: Determina si necesitas modificar el comportamiento de este comando:
      • De forma predeterminada, este comando solo refleja las imágenes que son necesarias para la arquitectura de su clúster. Si desea duplicar las imágenes para todas las arquitecturas compatibles, elimine la --arch=${IMAGE_ARCH} opción.
      • Este comando duplica las imágenes de todos los componentes especificados en la variable ${COMPONENTS} de entorno. Si desea duplicar imágenes para un componente específico, puede ejecutar export COMPONENTS=<component-ID> antes de ejecutar el comando.

      Es necesario reflejar modelos o imágenes opcionales
      cpd-cli manage mirror-images \
      --components=${COMPONENTS} \
      --groups=${IMAGE_GROUPS} \
      --release=${VERSION} \
      --source_registry=127.0.0.1:12443 \
      --target_registry=${PRIVATE_REGISTRY_LOCATION} \
      --arch=${IMAGE_ARCH} \
      --case_download=false

      No es necesario duplicar modelos o imágenes opcionales
      cpd-cli manage mirror-images \
      --components=${COMPONENTS} \
      --release=${VERSION} \
      --source_registry=127.0.0.1:12443 \
      --target_registry=${PRIVATE_REGISTRY_LOCATION} \
      --arch=${IMAGE_ARCH} \
      --case_download=false

      Para cada componente, el comando genera un archivo de registro en el work directorio.

    3. Confirme que las imágenes se hayan reflejado en el registro de contenedores privado:
      1. Inspeccione el contenido del registro de contenedores privado:
        cpd-cli manage list-images \
        --components=${COMPONENTS} \
        --release=${VERSION} \
        --target_registry=${PRIVATE_REGISTRY_LOCATION} \
        --case_download=false

        El resultado se guarda en el list_images.csv archivo del work/offline/${VERSION} directorio.

      2. Comprueba si hay errores en la salida:
        grep "level=fatal" list_images.csv

        El comando devuelve imágenes que faltan o que no se pueden inspeccionar.

    4. Si planea instalar un servicio con una dependencia del componente Inference foundation models (ibm-watsonx-ai-ifm), copie las imágenes vLLM necesarias del registro de contenedores intermediario al registro de contenedores privado.

      Las imágenes que refleje dependerán de los modelos que tenga previsto instalar.

      Modelos de Mistral AI
      Si planea instalar cualquiera de los siguientes Mistral AI modelos, debe duplicar la imagen requerida vLLM en el registro de contenedores privado:
      • codestral-22b
      • codestral-2501
      • ministral-8b-instruct
      • mistral-large
      • mistral-large-instruct-2411
      • mistral-small-instruct
      • pixtral-large-instruct-2411
      skopeo copy --all \
      --src-tls-verify=false \
      --dest-username ${PRIVATE_REGISTRY_PUSH_USER} \
      --dest-password ${PRIVATE_REGISTRY_PUSH_PASSWORD} \
      --dest-tls-verify=false \
      docker://127.0.0.1:12443/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9 \
      docker://${PRIVATE_REGISTRY_LOCATION}/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9
      Todos los demás modelos
      Para todos los demás modelos, debe duplicar la imagen CUDA RHOAI vLLM en el registro de contenedores privado:
      skopeo copy --all \
      --src-tls-verify=false \
      --dest-username ${PRIVATE_REGISTRY_PUSH_USER} \
      --dest-password ${PRIVATE_REGISTRY_PUSH_PASSWORD} \
      --dest-tls-verify=false \
      dir://tmp/rhoai-new \
      docker://${PRIVATE_REGISTRY_LOCATION}/rhoai/odh-vllm-cuda-rhel9@sha256:fb84fbf103bf450ef5b060fc5f21a9cf16b166dba207a3c50aa91bccd919d604

Resultados

Las imágenes para su arquitectura se reflejan en el registro de contenedores privado.
Nota: Algunos componentes, como el cpfs componente, solo proporcionan imágenes multiarch. En el caso de los componentes con imágenes multiarquitectura, todas las imágenes se replican en el registro de contenedores privado.

Qué hacer a continuación

Ahora que ha duplicado las imágenes en su registro de contenedores privado, está listo para completar la extracción de la imagen olm-utils-v4 del registro de contenedores privado (actualización de la versión 5.2 a la versión 5.3 ).