Panoramica di Managed Harbor Service

Questo documento fornisce una panoramica di Managed Harbor Service (MHS) in Google Distributed Cloud (GDC) con air gap.

MHS è un container registry completamente gestito basato sul progetto open source Harbor. L'integrazione di MHS nel tuo ambiente GDC fornisce un modo sicuro e scalabile per gestire il ciclo di vita degli artefatti dei container in ambienti isolati senza manutenzione manuale.

Questa panoramica introduce i concetti fondamentali necessari per lavorare con MHS in GDC con air gap, inclusa la relazione tra i progetti GDC e i progetti di istanze Harbor. Inoltre, descrive i confini amministrativi tra i ruoli di Identity and Access Management (IAM) a livello di infrastruttura e controllo dell'accesso basato su ruoli (RBAC) a livello di registry, nonché le funzionalità principali come la garbage collection automatizzata e i limiti di prestazioni del servizio.

Questo documento è rivolto agli sviluppatori dei gruppi di amministratori della piattaforma o di operatori delle applicazioni che utilizzano e amministrano MHS in GDC. Per saperne di più, consulta la documentazione relativa ai segmenti di pubblico per GDC con air gap.

Come funziona Managed Harbor Service in GDC

Piani operativi

GDC MHS opera su due livelli funzionali distinti dell'architettura di rete. Ogni livello consente operazioni specifiche:

  • Livello del piano di gestione: consente di creare ed eliminare istanze del registry Harbor.
  • Livello del piano dati: consente di eseguire il push e il pull delle immagini container nell'istanza Harbor.

Differenze tra i progetti GDC e i progetti di istanze Harbor

Managed Harbor Service prevede due tipi di progetti distinti. Comprendere l'interazione tra queste entità ti consente di gestire le risorse e i controlli degli accessi al livello appropriato:

  • Progetto GDC: l'unità organizzativa per la gestione dell'infrastruttura. Utilizzalo per gestire l'istanza del registry Harbor insieme ad altre risorse GDC come VM e cluster.

    • Limiti: un progetto GDC può contenere una sola istanza Harbor. Tuttavia, questa singola istanza può essere condivisa tra più progetti GDC per fornire un registry centralizzato per il tuo ambiente.
    • Accesso: richiede ruoli IAM a livello di progetto GDC per la creazione, la gestione e le attività amministrative delle istanze.
  • Progetto dell'istanza Harbor: un gruppo logico per la gestione degli artefatti che esiste all'interno di un'istanza Harbor. Utilizzalo per organizzare le immagini container e l'accesso a livello di repository.

    • Limiti: un'istanza Harbor supporta più progetti Harbor. Questi possono essere assegnati a singoli team o utenti per consentire la multitenancy all'interno di un registry condiviso.
    • Accesso: richiede ruoli RBAC specifici del registry per gestire i repository, eseguire attività amministrative e controllare l'accesso agli artefatti all'interno del progetto.

Funzionalità

Harbor è un progetto open source della Cloud Native Computing Foundation (CNCF) che fornisce una soluzione di registro dei container cloud integrata per Kubernetes e Docker. Con l'integrazione dei servizi gestiti, puoi eseguire il deployment di un'istanza Harbor per archiviare e gestire gli artefatti su GDC. MHS offre le seguenti funzionalità:

  • Il provisioning e la gestione delle istanze Harbor vengono eseguiti automaticamente da GDC.
  • Harbor è integrato con IAM per l'autenticazione.
  • Harbor supporta l'accesso programmatico tramite i service account dei progetti per abilitare i workload automatizzati.
  • È possibile eseguire l'upgrade delle istanze Harbor alla versione stabile più recente.
  • Harbor è stato migliorato per soddisfare i requisiti di conformità e qualità di GDC.
  • Un'istanza Harbor è una risorsa di zona; viene eseguito il deployment in una zona, ma è accessibile da qualsiasi zona all'interno dell'universo di deployment di GDC.

Controllo dell'accesso basato su ruoli per MHS

GDC applica controllo dell'accesso basato su ruoli (RBAC) per Managed Harbor Service (MHS) a due livelli distinti: il livello del progetto GDC e il livello del progetto del registry Harbor.

I service account del progetto eseguono l'autenticazione in modo programmatico utilizzando token di identità di breve durata emessi da IAM. In questo modo non è necessario creare e gestire manualmente gli account robot di Harbor. Sebbene il ruolo IAM di un account di servizio consenta l'interazione con l'istanza Harbor, devi comunque assegnargli un ruolo di progetto del registry Harbor corrispondente per autorizzare operazioni sui dati specifiche.

Per controllare l'accesso ai tuoi registry, configura le autorizzazioni sia a livello di piattaforma sia di repository.

Ruoli IAM per l'accesso ai progetti GDC

GDC gestisce le autorizzazioni a livello di progetto utilizzando i ruoli IAM. Puoi assegnare questi ruoli sia agli utenti sia ai service account del progetto per controllare l'accesso alle tue istanze Harbor.

  • Per amministratori e utenti della piattaforma: identifica i ruoli richiesti relativi alla tua attività specifica nella documentazione procedurale e richiedi l'accesso all'amministratore dell'organizzazione IAM. Per saperne di più, consulta Concedi e revoca l'accesso.
  • Per i service account: concedi questi stessi ruoli IAM ai service account del progetto per abilitare l'autenticazione programmatica per i workload automatizzati, come la gestione delle istanze del registry e il deployment degli artefatti.
  • Per gli operatori dell'infrastruttura: consulta i manuali di servizio di GDC MHS per determinare i ruoli IAM esatti richiesti per le tue attività operative specifiche.

Ruoli del registry per l'accesso ai progetti Harbor

Un progetto Harbor utilizza il proprio insieme di meccanismi RBAC che operano in modo indipendente dai ruoli IAM. Per gestire repository e artefatti, sia gli utenti sia i service account del progetto devono avere il ruolo richiesto assegnato direttamente a livello di progetto Harbor.

Per saperne di più sui ruoli e sulle autorizzazioni specifici di Harbor, consulta la documentazione di Harbor per la gestione dell'accesso degli utenti.

Prestazioni

Google ha testato e verificato MHS per supportare i limiti specificati in Limiti di sistema.

I limiti di prestazioni effettivi potrebbero essere più elevati.

Garbage collection

Quando utilizzi MHS per aggiungere ed eliminare immagini dal registry, i dati inutilizzati possono accumularsi nel tempo. Per evitare di sovraccaricare le risorse di archiviazione, MHS esegue automaticamente la garbage collection ogni 12 ore. Non è necessario configurare manualmente la garbage collection.

Passaggi successivi

Configura l'area di lavoro e i progetti per iniziare a gestire le immagini container: