VMs für die Installation von RPM-Paketen konfigurieren

Auf dieser Seite wird beschrieben, wie Sie VMs so konfigurieren, dass RPM-Pakete aus einem Artifact Registry-Yum-Repository installiert werden. Artifact Registry-Yum-Repositories unterstützen yum- und dnf-Clients.

Hinweis

Wenn das Ziel-Yum-Repository nicht vorhanden ist, erstellen Sie ein neues Repository. Sie können ein privates oder ein öffentliches Repository erstellen, für das keine Authentifizierung erforderlich ist.

VM für den Zugriff auf ein Yum-Repository vorbereiten

Verwenden Sie das Clienttool yum oder dnf, um eine VM für den Zugriff auf ein Yum-Repository vorzubereiten:

Privates Repository

  1. Wählen Sie das Dienstkonto aus, mit dem Sie Zugriff gewähren möchten.

    • Bei Compute Engine-VMs kann dies das Standarddienstkonto sein. Artifact Registry ruft automatisch die Anmeldedaten des Dienstkontos der Compute Engine-VM für jede VM ab, die ein Dienstkonto verwendet.
    • Erstellen oder wählen Sie für andere VMs ein Dienstkonto aus, das im Namen Ihrer VM agieren soll. Sie benötigen den Speicherort der Dienstkonto-Schlüsseldatei, um die VM zu konfigurieren. Auf der Seite Dienstkonten können Sie Schlüssel für vorhandene Konten aufrufen und erstellen.
  2. Gewähren Sie Ihrem Dienstkonto Berechtigungen für den Repository-Zugriff.

  3. Bereiten Sie die VM für den Zugriff auf das Repository vor.

    Compute Engine-VM

    1. Weisen Sie der VM cloud-platform API-Zugriffsbereiche zu. Informationen zum Festlegen von Zugriff sbereichen finden Sie unter Dienstkonto und Zugriffsbereiche für eine Instanz ändern.

    2. Aktualisieren Sie den Paketcache mit dem folgenden Befehl:

      sudo yum makecache
      
    3. Installieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:

      sudo yum install FORMAT-plugin-artifact-registry
      

      Ersetzen Sie Folgendes:

      • FORMAT durch einen der folgenden Werte:
        • yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version ist
        • dnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist

    Andere VM

    1. Installieren Sie den RPM-Signaturschlüssel mit dem folgenden Befehl:

      sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      
    2. Erstellen Sie eine Datei mit dem Namen /etc/yum.repos.d/artifact-registry-plugin.repo und dem folgenden Inhalt:

      [ar-plugin]
      name=Artifact Registry Plugin
      baseurl=https://packages.cloud.google.com/yum/repos/FORMAT-plugin-artifact-registry-DISTRO-stable
      enabled=1
      gpgcheck=1
      

      Ersetzen Sie Folgendes:

      • FORMAT durch einen der folgenden Werte:
        • yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version ist
        • dnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist
      • DISTRO durch die Hauptversion von Red Hat Enterprise Linux im Format elX, wobei X die Release version ist. Gültige DISTRO-Werte sind beispielsweise el7 und el8.
    3. Aktualisieren Sie Yum mit dem folgenden Befehl:

      sudo yum makecache
      
    4. Installieren Sie das Artifact Registry-Plug-in auf der VM mit dem folgenden Befehl:

      yum install FORMAT-plugin-artifact-registry
      

      Ersetzen Sie FORMAT durch einen der folgenden Werte:

      • yum, wenn Ihr Betriebssystem Enterprise Linux 7 oder eine frühere Version ist
      • dnf, wenn Ihr Betriebssystem Enterprise Linux 8 oder eine höhere Version ist
    5. Suchen Sie die Zeile #service_account_json = "/path/to/creds.json" in der Datei artifact-registry.conf, heben Sie die Auskommentierung der Zeile auf und fügen Sie den Pfad Ihres Dienstkontoschlüssels hinzu.

      • Bei Betriebssystemen mit Enterprise Linux 7 oder einer früheren Version ist der Pfad zur Konfigurationsdatei /etc/yum/pluginconf.d/artifact-registry.conf.
      • Bei Betriebssystemen mit Enterprise Linux 8 oder einer höheren Version ist der Pfad zur Konfigurationsdatei /etc/dnf/plugins/artifact-registry.conf.

      Eintrag in der Konfigurationsdatei:

      service_account_json = "PATH_TO_SERVICE_ACCOUNT_KEY"
      

      Ersetzen Sie PATH_TO_SERVICE_ACCOUNT_KEY durch den Pfad zu Ihrer JSON-Datei mit dem Dienstkontoschlüssel.

Öffentliches Repository

Konfigurieren Sie den öffentlichen Zugriff auf das Repository.

VM für den Zugriff auf ein Standard-Yum-Repository konfigurieren

Verwenden Sie das Clienttool yum oder dnf, um eine VM für den Zugriff auf ein Yum-Repository zu konfigurieren:

  1. Generieren Sie den VM-Konfigurationsbefehl, indem Sie den gcloud beta artifacts print-settings yum Befehl ausführen:

    gcloud beta artifacts print-settings yum \
        --repository=REPOSITORY \
        --location=LOCATION
    

    Ersetzen Sie Folgendes:

    • REPOSITORY durch den Namen des Artifact Registry-Repositorys.
    • LOCATION durch den regionalen Speicherort des Repositorys.

    Die Ausgabe sieht etwa so aus:

    # To configure your package manager with this repository:
    
    # Update Yum:
    sudo yum makecache
    
    # Install the Yum credential helper:
    sudo yum install yum-plugin-artifact-registry
    
    # Configure your VM to access Artifact Registry packages using the following
    # command:
    
    sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL
    [REPOSITORY]
    name=REPOSITORY
    baseurl=https://LOCATION-yum.s3nsregistry.fr/projects/PROJECT/REPOSITORY
    enabled=1
    repo_gpgcheck=0
    gpgcheck=0
    EOL
    
    # Update Yum:
    sudo yum makecache
    
  2. Konfigurieren Sie das yum-Clienttool so, dass Pakete aus Ihrem Repository abgerufen werden. Verwenden Sie dazu den Befehl tee aus der Ausgabe des Befehls print-settings.

    Wenn Sie beispielsweise Pakete aus dem öffentlichen my-repo im Projekt my-project und am Speicherort u-france-east1 installieren möchten, verwenden Sie den folgenden Befehl:

    sudo tee -a /etc/yum.repos.d/artifact-registry.repo << EOL
    [my-repo]
    name=My Repository
    baseurl=https://u-france-east1-yum.s3nsregistry.fr/projects/my-project/my-repo
    enabled=1
    repo_gpgcheck=0
    gpgcheck=0
    EOL
    
  3. Aktualisieren Sie Ihre Repository-Quellen mit dem folgenden Befehl:

    sudo yum makecache
    

Yum kann jetzt eine Verbindung zum Repository herstellen.

Wenn Sie weitere Yum-Repositories erstellen, erstellen Sie für jedes eine .repo-Datei in /etc/yum.repos.d/. Führen Sie sudo yum update noch einmal aus, um die Repository-Quellen zu aktualisieren.

Nächste Schritte