È possibile utilizzare Harbor come servizio supervisore come registro locale per le immagini di container del catalogo NVIDIA NGC o per lo storage di modelli ML convalidati.

Se si desidera utilizzare l'integrazione del registro Harbor con il supervisore, è possibile seguire questi approcci di configurazione:

Nota: Questa documentazione si basa su VMware Cloud Foundation 5.2.1. Per informazioni sulla funzionalità VMware Private AI Foundation with NVIDIA in VMware Cloud Foundation 5.2, vedere Guida di VMware Private AI Foundation with NVIDIA per VMware Cloud Foundation 5.2.
Ambiente disconnesso
Nota: L'installazione del servizio Harbor nel supervisore richiede una connessione Internet.
  • Utilizzare un registro Harbor solo nel supervisore nel dominio del carico di lavoro abilitato per GPU. Eseguire le attività seguenti:
    1. Abilitare Harbor come servizio supervisore.
      1. Per VMware Cloud Foundation 5.2.1, accedere all'istanza di vCenter Server per il dominio di gestione all'indirizzo https://<vcenter_server_fqdn>/ui.
      2. Nel pannello laterale di vSphere Client, fare clic su Private AI Foundation.
      3. Nel workflow Private AI Foundation selezionare Cloud disconnesso nella parte superiore e fare clic sulla sezione Configura dominio carico di lavoro.
      4. Installare i servizi supervisore per Contour e Harbor. Vedere Abilitazione di Harbor come servizio supervisore. Le procedure guidate per l'installazione dei servizi supervisore Contour e Harbor nel workflow della distribuzione guidata sono uguali a quelle dell'area Gestione carico di lavoro di vSphere Client.
    2. Caricamento delle immagini del container AI in un registro Harbor privato in VMware Private AI Foundation with NVIDIA

    In un ambiente disconnesso è possibile disconnettere l'ambiente da Internet e iniziare a utilizzare il servizio Harbor come registro di container locale dopo aver installato il servizio o dopo averlo installato e aver scaricato il set iniziale di immagini di container necessarie. In questo approccio, è necessario scaricare manualmente le immagini di container dal catalogo NVIDIA NGC in una macchina nell'ambiente e quindi caricarle nel registro.

  • Utilizzare un registro Harbor che sia una replica di un registro Harbor connesso a Internet.

    Un registro Harbor in esecuzione al di fuori dell'ambiente VMware Private AI Foundation with NVIDIA è sempre connesso a Internet. Il registro Harbor nel supervisore per il dominio del carico di lavoro abilitato per GPU riceve le immagini di container dal registro connesso tramite un meccanismo proxy. In questo modo, i componenti principali dell'istanza di VMware Cloud Foundation rimangono isolati.

    In questo approccio sono necessarie risorse aggiuntive per il registro connesso.

Nota: Allocare spazio di storage sufficiente per ospitare i container NVIDIA NGC che si intende distribuire in un'istanza di Deep Learning VM o in un cluster TKG. Includere almeno tre versioni di ciascun container nello spazio di storage.

Se la propria organizzazione non consente la connessione a Internet durante l'installazione del servizio Harbor o la configurazione di un registro Harbor connesso, utilizzare un registro di container di un altro fornitore.

Archiviazione di modelli ML
Utilizzare un registro Harbor nel supervisore nel dominio del carico di lavoro abilitato per GPU. Eseguire le attività seguenti:
  1. Vedere Abilitazione di Harbor come servizio supervisore.
  2. Caricamento delle immagini del container AI in un registro Harbor privato in VMware Private AI Foundation with NVIDIA

Caricamento delle immagini del container AI in un registro Harbor privato in VMware Private AI Foundation with NVIDIA

In un ambiente disconnesso in cui si utilizza un registro Harbor solo nel supervisore pronto per AI, è necessario caricare manualmente le immagini del container AI che si intende distribuire in Deep Learning VM o in un cluster TKG dal catalogo NVIDIA NGC in Harbor.

Procedura

  1. Nelle macchine per l'accesso a NVIDIA NGC e all'istanza di VMware Cloud Foundation disconnessa, configurare il client Docker con il certificato del registro Harbor.
  2. Accedere a NVIDA NGC.
    Utilizzare il nome utente riservato di $oauthtoken e incollare la chiave API nel campo della password.
    docker login nvcr.io
  3. Estrarre le immagini del container richieste nella macchina con accesso al catalogo NVIDIA NGC e salvarle in un archivio.
    Ad esempio, per scaricare l'immagine del container di esempio CUDA, eseguire i comandi seguenti.
    docker pull nvcr.io/nvidia/k8s/cuda-sample:vectoradd-cuda11.7.1-ubi8
    docker save > cuda-sample.tar nvcr.io/nvidia/k8s/cuda-sample:vectoradd-cuda11.7.1-ubi8
  4. Copiare l'archivio nella macchina con accesso al registro del container locale.
  5. Nella macchina con accesso al registro del container locale, caricare l'immagine del container.
    docker load < cuda-sample.tar
  6. Accedere al registro Harbor.
    Ad esempio, se il registro Harbor è in esecuzione in my-harbor-registry.example.com, eseguire i comandi seguenti.
    docker login my-harbor-registry.example.com
  7. Contrassegnare l'immagine di cui si desidera eseguire il push nel progetto con lo stesso nome dello spazio dei nomi in cui si desidera utilizzarla.
    Ad esempio, per contrassegnare l'immagine del container di esempio CUDA come la più recente per il progetto my-private-ai-namespace nel registro my-harbor-registry.example.com, eseguire il comando seguente.
    docker tag nvcr.io/nvidia/k8s/cuda-sample:vectoradd-cuda11.7.1-ubi8 my-harbor-registry.example.com/my-private-ai-namespace/cuda-sample:latest
    
  8. Eseguire il push delle immagini del container nel registro Harbor.
    docker push my-harbor-registry.example.com/my-private-ai-namespace/cuda-sample:latest
    

Creazione di un registro Harbor in VMware Private AI Foundation with NVIDIA come replica di un registro connesso

Per poter eseguire facilmente l'aggiornamento alle immagini più recenti nel catalogo NVIDIA NGC, è possibile utilizzare un registro Harbor in un supervisore che si trova in un altro dominio del carico di lavoro VI o in un'altra istanza di VMware Cloud Foundation e può essere connesso a Internet. È quindi possibile replicare questo registro connesso nel supervisore in cui si intende eseguire i carichi di lavoro AI.

Estrarre le immagini del container più recenti da NVIDIA NGC nel registro Harbor connesso e trasferirle nel registro disconnesso utilizzando una connessione con proxy memorizzato nella cache. In questo modo, non è necessario scaricare di frequente le immagini del container e quindi caricarle manualmente.

Nota: È inoltre possibile utilizzare un registro di container connesso di un altro fornitore.

Configurare la rete tra i due registri nel modo seguente:

  • Il registro connesso può essere instradato al registro di replica.
  • Il registro connesso viene inserito in una DMZ dove tra i due registri sono consentite solo le comunicazioni docker push e docker pull.

Prerequisiti

Abilitazione di Harbor come servizio supervisore nel supervisore nel dominio del carico di lavoro abilitato per GPU.

Procedura

  1. Accedere all'interfaccia utente del registro Harbor connesso come amministratore di sistema di Harbor.
  2. Passare alla pagina Amministrazione > Registri e creare un endpoint per il catalogo NVIDIA NGC nvcr.io/nvaie selezionando il provider Registro Docker e con la chiave NVIDIA NGC API.
  3. Passare alla pagina Amministrazione > Progetti e creare un progetto con proxy memorizzato nella cache, connesso all'endpoint per nvcr.io/nvaie.
  4. Nella pagina Registri creare un endpoint di replica per il registro disconnesso, selezionando il provider Harbor.
  5. Passare alla pagina Amministrazione > Repliche e creare una regola di replica.
    • Utilizzare la modalità di replica basata su push.
    • Nella proprietà Registro di destinazione immettere l'URL del registro disconnesso nel supervisore pronto per AI.
    • Impostare filtri, spazio dei nomi di destinazione e modalità di attivazione in base ai requisiti dell'organizzazione.

Operazioni successive

  1. Estrarre da NVIDIA NGC le immagini del container richieste dall'organizzazione nel registro connesso eseguendo docker pull nella macchina client Docker.
  2. Se la regola di replica ha la modalità di attivazione manuale, eseguire le repliche manuali eventualmente necessarie.