This site will be decommissioned on January 30th 2025. After that date content will be available at techdocs.broadcom.com.

Actualizar un registro de Harbor sin conexión en vSphere

En este tema se describe cómo actualizar un registro de imagen de Harbor privado desde un archivo OVA descargado para actualizar Tanzu Kubernetes Grid (TKG) en un entorno de vSphere sin conexión. Este registro de Harbor se ejecuta junto a TKG para almacenar y administrar las imágenes de componentes que utiliza TKG.

Esta implementación de Harbor basada en máquina virtual solo se admite para alojar imágenes del sistema de TKG en un entorno restringido por Internet o aislado. Para implementar un Harbor escalable y de alta disponibilidad que pueda administrar grandes cantidades de imágenes para aplicaciones alojadas en un entorno de producción, implemente el paquete de Harbor en clústeres de TKG como se describe en Instalar Harbor para el registro de servicios en Crear y administrar clústeres de carga de trabajo de TKG 2.1 con la CLI de Tanzu.

Para realizar una copia de seguridad y restaurar un registro de Harbor sin conexión, consulte Realizar copia de seguridad y restaurar un registro de Harbor sin conexión en vSphere.

Actualizar Harbor desde un OVA

Los siguientes pasos actualizan la instancia de Harbor que se ejecuta en vSphere mediante dos OVA:

  • OVA 1 es el archivo OVA de Harbor anterior que se va a actualizar. Por ejemplo, un archivo OVA de Harbor v2.6.3.
  • OVA 2 es el archivo OVA que ejecuta la nueva versión de Harbor a la que está actualizando (por ejemplo, v2.7.1).

El disco de datos para OVA 1 contiene todos los datos que utiliza actualmente Harbor, incluidas las imágenes, los usuarios, los proyectos y las contraseñas. Para realizar la actualización, migre los datos agregando el disco de datos OVA 1 como un disco existente a OVA 2 y, a continuación, copie sobre su contenido:

Nota

El proceso de actualización de OVA sobrescribe la configuración de la contraseña del administrador y la contraseña de la base de datos en Personalizar plantilla > Configuraciones de Harbor con la configuración de contraseña de OVA 1.

  1. Descargue un nuevo archivo OVA de Harbor desde la página de descargas de Tanzu Kubernetes Grid e impleméntelo en vSphere siguiendo el procedimiento descrito en Implementar un registro de Harbor sin conexión en vSphere.

  2. Apague OVA 1.

    1. En vSphere, haga clic con el botón secundario en OVA 1 en el inventario y seleccione Encender > Apagar SO invitado:

      Captura de pantalla de actualización de Harbor

    2. Realice una instantánea de OVA 1 (Harbor v2.6.3):

      Captura de pantalla de actualización de Harbor

      Para restaurar desde esta copia de seguridad, consulte Realizar una copia de seguridad y restaurar un registro de Harbor sin conexión en vSphere.

    3. Recupere la ubicación del archivo de disco OVA 1. Haga clic con el botón secundario en OVA 1 en el inventario, seleccione Editar configuración > Archivo de disco y registre el valor.

      Captura de pantalla de actualización de Harbor

    No vuelva a encender OVA 1 durante el proceso de actualización.

  3. Inicie sesión en OVA 2 mediante ssh :

    ssh root@OVA2-IP
    
  4. Detenga Harbor en OVA 2:

    1. Confirme que Harbor se está ejecutando:

      docker ps
      
    2. Detenga el proceso de Harbor:

      systemctl stop harbor
      
    3. Confirme que Harbor está detenido y no se está ejecutando:

      docker ps
      
  5. Agregue el disco de datos de OVA 1 como un "disco existente" a OVA 2:

    1. En vSphere, haga clic con el botón secundario en la máquina virtual de OVA 2 y seleccione Editar configuración.

      Captura de pantalla de actualización de Harbor

    2. Aparecerá una nueva ventana. En el menú desplegable AGREGAR NUEVO DISPOSITIVO situado en la esquina superior derecha, seleccione Disco duro existente.

      Captura de pantalla de actualización de Harbor

    3. En Seleccionar archivo (Select File), seleccione el almacén de datos de OVA 1, como vsanDatastore, y la ubicación del archivo de disco tal como se registró anteriormente. La ubicación del archivo termina con .vmdk. Haga clic en Aceptar (OK).

      Captura de pantalla de actualización de Harbor

    4. Se agrega una lista Nuevo disco duro (New Hard Disk) en la pestaña Editar configuración (Edit Settings) > Configuración virtual (Virtual Settings). Haga clic en Aceptar (OK).

      Captura de pantalla de actualización de Harbor

    5. Espere a que el nuevo disco agregado se complete en la barra Tareas recientes (Recent Tasks) a continuación.

      Captura de pantalla de actualización de Harbor

    6. Para editar más ajustes del disco duro virtual, por ejemplo, para cambiar su nombre, vuelva a hacer clic con el botón secundario en su lista.

      Captura de pantalla de actualización de Harbor

  6. Monte el disco con los datos de OVA 1 en el sistema de archivos OVA 2:

    1. En la línea de comandos que inició sesión en OVA 2 a través de ssh, ejecute lsblk para ver a qué dispositivo de bloques se agregó el disco que se agregó recientemente.

      Captura de pantalla de actualización de Harbor

    2. Ejecute mkdir -p /ova263 para crear un punto de montaje para el nuevo disco en el sistema de archivos OVA 2.

      Captura de pantalla de actualización de Harbor

    3. Ejecute el comando mount para montar el dispositivo de bloques en el punto de montaje en el nivel superior del sistema de archivos.

      mount DEVICE /ova263
      

      Donde DEVICE es el nuevo dispositivo indicado por lsblk, por ejemplo, /dev/sdc1.

      Captura de pantalla de actualización de Harbor

  7. Realice una copia de seguridad del archivo harbor.yml con un nombre de archivo que indique la versión OVA 2, por ejemplo:

    mv /etc/goharbor/harbor/harbor.yml /etc/goharbor/harbor/harbor271.origin.yml
    
  8. Copie el archivo harbor.yml del disco de datos OVA 1 migrado al directorio Harbor de OVA 2, por ejemplo:

    cp -pr /ova263/harbor.yml /etc/goharbor/harbor/harbor.yml
    
  9. Si el OVA 2 tiene una dirección IP asignada dinámicamente o un FQDN o una IP estática diferentes de OVA 1, es posible que deba actualizar la opción hostname en su archivo /etc/goharbor/harbor/harbor.yml según corresponda. Si el valor de hostname copiado de OVA 1 no es correcto para OVA 2, cámbielo por la dirección o el FQDN correctos para OVA 2.

    Nota

    No es necesario copiar certificados de OVA 1 a OVA 2. En función de la administración de red, el certificado de OVA 2 es nuevo o idéntico al certificado de OVA 1, pero funciona de cualquier manera.

  10. Elimine los siguientes directorios de OVA 2:

    rm -rf /storage/data/!(ca_download)
    rm -rf /storage/log/*
    
  11. Copie el directorio de datos del disco de datos de OVA 1 a OVA 2:

    cp -pr /ova263/data/!(ca_download) /storage/data
    
  12. Copie el directorio de registros de Harbor del disco de datos de OVA 1 a OVA 2:

    cp -pr /ova263/log/* /storage/log
    
  13. Desmontar el disco OVA 1 de OVA 2:

    umount /ova263
    
  14. Elimine el disco de datos de OVA 1 de OVA 2. En vCenter Hardware virtual > Editar configuración para OVA 2, haga clic en el botón X en la línea que indica el disco duro OVA 1 agregado. No active la casilla de verificación Eliminar archivos del almacén de datos y haga clic en Aceptar para confirmar.

    Captura de pantalla de actualización de Harbor

    Captura de pantalla de actualización de Harbor

  15. Actualice el archivo harbor.yml copiado ejecutando migrate en el contenedor de Harbor:

    cd /etc/goharbor/harbor && docker run -it --rm -v /:/hostfs vmware.io/goharbor/prepare:vOVA-2-VERSION_vmware.1 migrate -i /etc/goharbor/harbor/harbor.yml
    

    Donde OVA-2-VERSION es la versión de Harbor para OVA 2, por ejemplo, 2.7.1.

    Captura de pantalla de actualización de Harbor

  16. Copie la nueva versión OVA 2 de Harbor harbor.yml a /storage/harbor.yml:

    cp -pr /etc/goharbor/harbor/harbor.yml /storage/harbor.yml
    
  17. Ejecute el script prepare de Harbor en OVA 2. En función de si habilitó el escáner predeterminado de Harbor en OVA 1, es posible que deba anexar la marca --with-trivy:

    • Escáner no habilitado :

      cd /etc/goharbor/harbor && /etc/goharbor/harbor/prepare
      
    • Escáner habilitado:

      cd /etc/goharbor/harbor && /etc/goharbor/harbor/prepare --with-trivy
      
  18. Inicie el servicio de Harbor:

    systemctl start harbor
    
check-circle-line exclamation-circle-line close-line
Scroll to top icon