Configurare un Container Registry privato

Questa pagina spiega come configurare un server di registry dei container esistente per Google Distributed Cloud (solo software) per VMware.

Questa pagina è rivolta ad amministratori, architetti e operatori che configurano, monitorano e gestiscono l'infrastruttura tecnica. Per scoprire di più sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei contenuti di Google Cloud , consulta Ruoli e attività comuni degli utenti di GKE Enterprise.

Panoramica

Fornire il tuo server di registry dei container è facoltativo. Se non fornisci un server di registry dei container, Google Distributed Cloud estrae le immagini dei container da Artifact Registry.

Google Distributed Cloud non supporta i registry dei container non sicuri. Quando avvii il server del registry dei container, devi fornire un certificato e una chiave. Il certificato può essere firmato da un'autorità di certificazione (CA) pubblica o autofirmato.

Crea un server del registry dei container

Per scoprire come creare un server di registry dei container, consulta Eseguire un registry accessibile dall'esterno nella documentazione di Docker.

Configurare il registry

Per utilizzare un registry dei contenitori privato, compila la sezione privateRegistry nel file di configurazione del cluster amministrativo durante la creazione del cluster.

Verifica che le immagini vengano estratte dal server del registry

Il modo in cui verifichi che le immagini vengano estratte dal server del registry dipende dal fatto che tu abbia attivato i cluster avanzati quando hai creato il cluster di amministrazione.

  • Se i cluster avanzati non sono abilitati, esegui il seguente comando:

    kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get pods \
        --all-namespaces -o jsonpath="{.items[*].spec['initContainers', 'containers'][*].image}"
    

    Sostituisci ADMIN_CLUSTER_KUBECONFIG con il percorso del file kubeconfig per il tuo cluster di amministrazione.

    L'output di questo comando mostra tutte le immagini del cluster. Puoi verificare che tutte le immagini di Google Distributed Cloud provengano dal tuo server di registry.

  • Se i cluster avanzati sono abilitati, svolgi i seguenti passaggi:

    Puoi determinare se containerd estrae le immagini dal tuo registry locale esaminando i contenuti di un file denominato config.toml, come mostrato nei passaggi che seguono:

    1. Accedi a un nodo ed esamina i contenuti del file/etc/containerd/config.toml.
    2. Controlla il campo pluginsio.containerd.grpc.v1.cri".registry.mirrors del config.toml file per verificare se il tuo server di registry è elencato nel endpoint campo.

      Di seguito è riportato un estratto di un file config.toml di esempio.

      version = 2
      root = "/var/lib/containerd"
      state = "/run/containerd"
      ...
      [plugins."io.containerd.grpc.v1.cri".registry]
      [plugins."io.containerd.grpc.v1.cri".registry.configs]
      [plugins."io.containerd.grpc.v1.cri".registry.configs."gcr.io"]
      [plugins."io.containerd.grpc.v1.cri".registry.configs."privateregistry2.io".tls]
      ca_file = '/etc/containerd/certs.d/privateregistry2.io/ca.crt'
      [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
      [plugins."io.containerd.grpc.v1.cri".registry.mirrors."gcr.io"]
      endpoint = ["http://privateregistry.io", "http://privateregistry2.io"]
      ...
      
    3. Se il mirror del registry viene visualizzato nel campo endpoint, il nodo sta recuperando le immagini dal mirror del registry anziché da Artifact Registry.