Configure VMs para instalar pacotes RPM

Esta página descreve a configuração de VMs para instalar pacotes RPM a partir de um repositório Yum do Artifact Registry. Os repositórios Yum do Artifact Registry suportam clientes yum e dnf.

Antes de começar

Se o repositório Yum de destino não existir, crie um novo repositório. Pode criar um repositório privado ou um repositório público que não requer autenticação.

Prepare uma VM para aceder a um repositório Yum

Para preparar uma VM para aceder a um repositório Yum, use a ferramenta de cliente yum ou dnf:

Repositório privado

  1. Escolha a conta de serviço que vai usar para conceder acesso.

    • Para VMs do Compute Engine, pode ser a conta de serviço predefinida. O Artifact Registry obtém automaticamente as credenciais da conta de serviço da VM do Compute Engine para qualquer VM que use uma conta de serviço.
    • Para outras VMs, crie ou escolha uma conta de serviço para agir em nome da sua VM. Precisa da localização do ficheiro de chave da conta de serviço para configurar a VM. Pode ver e criar chaves para contas existentes na página Contas de serviço.
  2. Conceda autorizações de acesso ao repositório à sua conta de serviço.

  3. Prepare a VM para aceder ao repositório.

    VM do Compute Engine

    1. Atribua cloud-platform âmbitos de acesso à API à VM. Para ver informações sobre a definição de âmbitos de acesso, consulte o artigo Alterar a conta de serviço e os âmbitos de acesso de uma instância.

    2. Atualize a cache de pacotes através do seguinte comando:

      sudo yum makecache
      
    3. Instale o plug-in do Artifact Registry na VM através do seguinte comando:

      sudo yum install FORMAT-plugin-artifact-registry
      

      Substitua o seguinte:

      • FORMAT com uma das seguintes opções:
        • yum, se o seu sistema operativo for o Enterprise Linux 7 ou anterior
        • dnf, se o seu sistema operativo for o Enterprise Linux 8 ou posterior

    Outra VM

    1. Instale a chave de assinatura RPM através do seguinte comando:

      sudo rpm --import https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      
    2. Crie um ficheiro com o nome /etc/yum.repos.d/artifact-registry-plugin.repo com o seguinte conteúdo:

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

      Substitua o seguinte:

      • FORMAT com uma das seguintes opções:
        • yum, se o seu sistema operativo for o Enterprise Linux 7 ou anterior
        • dnf, se o seu sistema operativo for o Enterprise Linux 8 ou posterior
      • DISTRO com a versão principal do Red Hat Enterprise Linux no formato elX, em que X é a versão de lançamento. Exemplos de valores DISTRO válidos são el7 e el8.
    3. Atualize o Yum através do seguinte comando:

      sudo yum makecache
      
    4. Instale o plug-in do Artifact Registry na VM através do seguinte comando:

      yum install FORMAT-plugin-artifact-registry
      

      Substitua FORMAT por uma das seguintes opções:

      • yum, se o seu sistema operativo for o Enterprise Linux 7 ou anterior
      • dnf, se o seu sistema operativo for o Enterprise Linux 8 ou posterior
    5. Encontre a linha #service_account_json = "/path/to/creds.json" no ficheiro artifact-registry.conf, descomente a linha e adicione o caminho da chave da conta de serviço.

      • Para sistemas operativos Enterprise Linux 7 ou anteriores, o caminho para o ficheiro de configuração é /etc/yum/pluginconf.d/artifact-registry.conf.
      • Para sistemas operativos Enterprise Linux 8 ou posteriores, o caminho para o ficheiro de configuração é /etc/dnf/plugins/artifact-registry.conf.

      Entrada do ficheiro de configuração:

      service_account_json = "PATH_TO_SERVICE_ACCOUNT_KEY"
      

      Substitua PATH_TO_SERVICE_ACCOUNT_KEY pelo caminho para o ficheiro JSON da chave da conta de serviço.

Repositório público

Configure o acesso público ao repositório.

Configure uma VM para aceder a um repositório Yum padrão

Para configurar uma VM para aceder a um repositório Yum, use a ferramenta de cliente yum ou dnf:

  1. Execute o comando gcloud beta artifacts print-settings yum para gerar o comando de configuração da VM:

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

    Substitua o seguinte:

    • REPOSITORY é o nome do repositório do Artifact Registry.
    • LOCATION é a localização regional do repositório.

    O resultado é semelhante ao seguinte:

    # 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. Configure a ferramenta de cliente yum para obter pacotes do seu repositório através do comando tee a partir do resultado do comando print-settings.

    Por exemplo, para instalar pacotes do my-repo público no projeto my-project e na localização u-france-east1, use o seguinte comando:

    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. Atualize as origens do repositório com o seguinte comando:

    sudo yum makecache
    

Agora, o Yum pode estabelecer ligação ao repositório.

Se criar repositórios Yum adicionais, crie um ficheiro .repo para cada um deles em /etc/yum.repos.d/. Volte a executar sudo yum update para atualizar as origens do repositório.

O que se segue?