Imposta le località di creazione e ripristino per gli snapshot con scope regionale


Per impostazione predefinita, gli snapshot vengono creati con scope globale. Gli snapshot con scope globale vengono archiviati in una località di archiviazione specifica e possono essere ripristinati (utilizzati per creare un nuovo disco) in qualsiasi regione o zona. Per un ulteriore controllo dell'isolamento in base alla località, puoi creare snapshot con scope regionale. Gli snapshot con scope regionale memorizzano tutti i dati e i metadati degli snapshot insieme nella regione in cui è definito l'ambito. Con gli snapshot a livello di regione, puoi anche limitare le regioni in cui puoi creare e ripristinare gli snapshot.

Questo documento spiega come impostare le località consentite per la creazione e il ripristino degli snapshot a livello di regione.

Prima di iniziare

  • Se non l'hai ancora fatto, configura l'autenticazione. L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API di Google Cloud . Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:

    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. Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, devi utilizzare le credenziali che fornisci a gcloud CLI.

      Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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.

    Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

Limitazioni

  • L'impostazione di uno scope regionale sostituisce tutte le impostazioni della località di archiviazione predefinita per il progetto.
  • L'impostazione di uno scope regionale si applica solo ai nuovi snapshot a livello di regione.
  • Non puoi convertire uno snapshot con scope globale in uno con scope regionale. Devi creare un nuovo snapshot con lo scope appropriato.

Ruoli e autorizzazioni richiesti

Per ottenere le autorizzazioni necessarie per impostare le località di archiviazione e ripristino per gli snapshot con scope regionale, chiedi all'amministratore di concederti i seguenti ruoli IAM sul progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per impostare le località di creazione e ripristino degli snapshot. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Imposta le località consentite per la creazione degli snapshot

Per impostazione predefinita, puoi creare snapshot in tutte le regioni. Per limitare le località in cui puoi creare snapshot con scope regionale, imposta le località di accesso consentite a livello di progetto. Dopo aver impostato le località di accesso, puoi creare snapshot con ambito regionale per il progetto solo in queste località.

gcloud

Per consentire ai dischi di zona nella Zona A di creare snapshot in qualsiasi regione, utilizza il comando gcloud beta compute disk-settings update:

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

Per consentire ai dischi regionali nella Regione A di creare snapshot in qualsiasi regione, utilizza il comando gcloud beta compute disk-settings update:

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

Per consentire ai dischi nella Regione A di creare snapshot solo nella Regione B, utilizza il 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

Sostituisci quanto segue:

  • ZONE_A: la zona dei dischi che può creare snapshot in qualsiasi regione.
  • REGION_A: la regione di tutti i dischi (in un progetto) che richiedono limitazioni alla creazione di snapshot con scope regionale.
  • REGION_B: una regione consentita per la creazione di snapshot con scope regionale. Puoi impostare più regioni come località di accesso consentite. Devi includere la regione in cui è archiviato il disco di origine come una delle regioni consentite.

REST

Per consentire ai dischi di zona nella Zona A di creare snapshot in qualsiasi regione, invia una richiesta PATCH al metodo diskSettings.patch:

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

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

Per consentire ai dischi regionali nella Regione A di creare snapshot solo nella Regione B, invia una richiesta PATCH al metodo 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"}
      }
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto.
  • ZONE_A: la zona del disco.
  • REGION_A: la regione del disco.
  • REGION_B: una regione consentita per la creazione di snapshot. Puoi impostare più regioni come località di accesso consentite. Devi includere la regione in cui è archiviato il disco di origine come una delle regioni consentite.

Imposta le località consentite per il ripristino degli snapshot

Per impostazione predefinita, puoi ripristinare gli snapshot con scope regionale e globale in qualsiasi regione. Per configurare le località di ripristino per gli snapshot con scope regionale, imposta le località di accesso consentite a livello di progetto. Devi impostare singolarmente le località di accesso consentite per ogni progetto. Dopo aver impostato le località di accesso, puoi ripristinare gli snapshot con ambito regionale per il progetto solo in queste località.

gcloud

Per consentire il ripristino degli snapshot di un progetto nella Regione A in tutte le regioni, utilizza il comando gcloud beta compute snapshot-settings update:

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

Per consentire il ripristino degli snapshot di un progetto nella Regione A solo nella Regione B, utilizza il 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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto.
  • REGION_A: la regione in cui vengono archiviati gli snapshot con scope regionale.
  • REGION_B: una regione consentita in cui è possibile ripristinare gli snapshot con scope regionale. Puoi impostare più regioni come località di ripristino consentite.

REST

Per consentire il ripristino degli snapshot di un progetto nella Regione A in tutte le regioni, invia una richiesta PATCH al metodo regionSnapshotSettings.patch:

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

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

Per consentire il ripristino degli snapshot di un progetto nella Regione A solo nella Regione B, invia una richiesta PATCH al metodo 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"}
        }
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto.
  • REGION_A: la regione in cui vengono archiviati gli snapshot con scope regionale.
  • REGION_B: una regione consentita in cui è possibile ripristinare gli snapshot con scope regionale. Puoi impostare più regioni come località di ripristino consentite.

Modifica le località consentite per il ripristino degli snapshot

gcloud

Per visualizzare le posizioni di ripristino consentite per gli snapshot di un progetto archiviato nella Regione A, utilizza il comando gcloud beta compute snapshot-settings describe:

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

Per rimuovere la Regione B dall'elenco delle località di ripristino consentite per gli snapshot per un progetto archiviato nella Regione A, utilizza il 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

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto.
  • REGION_A: la regione in cui vengono archiviati gli snapshot con scope regionale.
  • REGION_B: la regione in cui vuoi ripristinare l'accesso per gli snapshot con scope regionale.

REST

Per visualizzare le località di ripristino consentite per gli snapshot di un progetto archiviati nella Regione A, invia una richiesta GET al metodo regionSnapshotSettings.get:

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

Per rimuovere la Regione B dall'elenco delle località di ripristino consentite per gli snapshot per un progetto archiviato nella Regione A, invia una richiesta PATCH al metodo 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":{}}
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto.
  • REGION_A: la regione in cui vengono archiviati gli snapshot con scope regionale.
  • REGION_B: la regione in cui vuoi ripristinare l'accesso per gli snapshot con scope regionale.