È possibile utilizzare Harbor come registro locale per le immagini di container del catalogo NVIDIA NGC.

Nota: L'installazione del servizio Harbor nel supervisore richiede una connessione Internet.

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

  • Utilizzare un registro Harbor solo nel supervisore nel dominio del carico di lavoro abilitato per GPU. Eseguire le attività seguenti:
    1. 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

    È 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 richieste.

    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 una macchina virtuale di deep learning 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.

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 una macchina virtuale di deep learning 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 il 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. Eseguire il push delle immagini del container nel registro Harbor.

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.