Definir locais de criação e restauração para snapshots com escopo regional


Por padrão, os snapshots são criados com escopo global. Os instantâneos com escopo global são armazenados em um local de armazenamento específico e podem ser restaurados (usados ​​para criar um novo disco) em qualquer região ou zona. Para controle adicional de isolamento baseado em localização, você pode criar instantâneos com escopo regional. Os instantâneos com escopo regional armazenam todos os dados e metadados do instantâneo juntos na região com escopo definido. Com instantâneos com escopo regional, você também pode restringir as regiões onde pode criar e restaurar instantâneos.

Este documento explica como definir locais permitidos para criação e restauração de snapshots regionais.

Antes de começar

  • Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar no Compute Engine selecionando uma das seguintes opções:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.
    3. REST

      Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Limitações

  • A definição de um escopo regional substitui todas as configurações de local de armazenamento padrão do projeto.
  • A definição de um escopo regional aplica-se somente a novos instantâneos regionais.
  • Não é possível converter um instantâneo com escopo global em um instantâneo com escopo regional. Você deve criar uma nova captura instantânea com o escopo apropriado.

Funções e permissões necessárias

Para obter as permissões necessárias para definir locais de armazenamento e restauração para snapshots com escopo regional, peça ao administrador para conceder a você as seguintes funções do IAM no projeto:

Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .

Essas funções predefinidas contêm as permissões necessárias para definir locais de criação e restauração de snapshots. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias :

Definir locais permitidos para criação de snapshots

Por padrão, você pode criar snapshots em todas as regiões. Para restringir onde você pode criar instantâneos com escopo regional, defina locais de acesso permitidos no nível do projeto. Depois de definir os locais de acesso, você poderá criar instantâneos com escopo regional para o projeto somente nesses locais.

gcloud

Para permitir que os discos zonais na Zona A criem snapshots em qualquer região, use o comando gcloud beta compute disk-settings update :

  gcloud beta compute disk-settings update \
      --zone=ZONE_A \
      --access-location-policy=all-regions \

Para permitir que os discos regionais na região A criem snapshots em qualquer região, use o comando gcloud beta compute disk-settings update :

  gcloud beta compute disk-settings update \
      --region=REGION_A \
      --access-location-policy=all-regions

Para permitir que os discos na região A criem snapshots somente na região B, use o comando gcloud beta compute disk-settings update :

  gcloud beta compute disk-settings update \
      --access-location-policy=specific-regions \
      --region=REGION_A \
      --add-access-locations=REGION_B

Substitua o seguinte:

  • ZONE_A : A zona dos discos que pode criar instantâneos em qualquer região.
  • REGION_A : a região de todos os discos (em um projeto) que exigem restrições de criação de snapshots com escopo regional.
  • REGION_B : uma região permitida para criação de snapshots com escopo regional. Você pode definir várias regiões como locais de acesso permitido. Você deve incluir a região em que o disco de origem está armazenado como uma das regiões permitidas.

DESCANSAR

Para permitir que os discos zonais na Zona A criem snapshots em qualquer região, faça uma solicitação PATCH para o método diskSettings.patch :

  PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE_A/diskSettings?updateMask=accessLocation

  {
    "accessLocation":
    {
      "policy":"ALL_REGIONS"
    }
  }

Para permitir que os discos regionais na Região A criem snapshots apenas na Região B, faça uma solicitação PATCH para o método regionDiskSettings.patch :

  PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION_A/diskSettings?updateMask=accessLocation

  {
    "accessLocation":
    {
      "policy":"SPECIFIC_REGIONS",
      "locations":
      {
        "REGION_B":{"region":"REGION_B"}
      }
    }
  }

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • ZONE_A : A zona do disco.
  • REGION_A : A região do disco.
  • REGION_B : uma região permitida para criação de snapshot. Você pode definir várias regiões como locais de acesso permitido. Você deve incluir a região em que o disco de origem está armazenado como uma das regiões permitidas.

Definir locais permitidos para restauração de snapshots

Por padrão, você pode restaurar snapshots com escopo regional e global para qualquer região. Para configurar locais de restauração para seus instantâneos com escopo regional, defina locais de acesso permitidos no nível do projeto. Você deve definir locais de acesso permitidos para cada projeto individualmente. Depois de definir os locais de acesso, você poderá restaurar snapshots com escopo regional para o projeto somente nesses locais.

gcloud

Para permitir que os snapshots de um projeto na região A sejam restaurados em todas as regiões, use o comando gcloud beta compute snapshot-settings update :

  gcloud beta compute snapshot-settings update \
      --project=PROJECT_ID \
      --region=REGION_A \
      --access-location-policy=all-regions

Para permitir que os snapshots de um projeto na região A sejam restaurados somente na região B, use o comando gcloud beta compute snapshot-settings update :

  gcloud beta compute snapshot-settings update \
      --project=PROJECT_ID \
      --access-location-policy=specific-regions \
      --region=REGION_A \
      --add-access-locations=REGION_B

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • REGION_A : a região onde os instantâneos com escopo regional são armazenados.
  • REGION_B : uma região permitida onde os instantâneos com escopo regional podem ser restaurados. Você pode definir várias regiões como locais de restauração permitidos.

DESCANSAR

Para permitir que os snapshots de um projeto na Região A sejam restaurados em todas as regiões, faça uma solicitação PATCH para o método regionSnapshotSettings.patch :

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation

  {
    "accessLocation":
    {
      "policy":"ALL_REGIONS"
    }
  }

Para permitir que os snapshots de um projeto na Região A sejam restaurados apenas na Região B, faça uma solicitação PATCH para o método regionSnapshotSettings.patch :

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation

  {
    "accessLocation":
    {
      "policy":"SPECIFIC_REGIONS",
      "locations":
        {"REGION_B":
          {"region":"REGION_B"}
        }
    }
  }

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • REGION_A : a região onde os instantâneos com escopo regional são armazenados.
  • REGION_B : uma região permitida onde os instantâneos com escopo regional podem ser restaurados. Você pode definir várias regiões como locais de restauração permitidos.

Editar locais permitidos para restauração de snapshots

gcloud

Para visualizar os locais de restauração permitidos para snapshots de um projeto armazenado na região A, use o comando gcloud beta compute snapshot-settings describe :

  gcloud beta compute snapshot-settings describe \
      --project=PROJECT_ID \
      --region=REGION_A

Para remover a região B da lista de locais de restauração permitidos para snapshots de um projeto armazenado na região A, use o comando gcloud beta compute snapshot-settings update :

  gcloud beta compute snapshot-settings update \
      --project=PROJECT_ID \
      --access-location-policy=specific-regions \
      --remove-access-locations=REGION_B \
      --region=REGION_A

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • REGION_A : a região onde os instantâneos com escopo regional são armazenados.
  • REGION_B : a região onde você deseja remover o acesso de restauração para snapshots com escopo regional.

DESCANSAR

Para visualizar os locais de restauração permitidos para snapshots de um projeto armazenado na Região A, faça uma solicitação GET para o método regionSnapshotSettings.get :

  GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings

Para remover a Região B da lista de locais de restauração permitidos para instantâneos de um projeto armazenado na Região A, faça uma solicitação PATCH para o método regionSnapshotSettings.patch :

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_A/snapshotSettings?updateMask=accessLocation

  {
    "accessLocation":
    {
      "policy":"SPECIFIC_REGIONS",
      "locations":
        {"REGION_B":{}}
    }
  }

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • REGION_A : a região onde os instantâneos com escopo regional são armazenados.
  • REGION_B : a região onde você deseja remover o acesso de restauração para snapshots com escopo regional.