Définir des emplacements de création et de restauration pour les instantanés de portée régionale


Par défaut, les instantanés sont créés avec une portée globale. Les instantanés à portée globale sont stockés dans un emplacement de stockage spécifique et peuvent être restaurés (utilisés pour créer un disque) dans n'importe quelle région ou zone. Pour un contrôle supplémentaire de l'isolation basée sur la localisation, vous pouvez créer des instantanés de portée régionale. Les instantanés de portée régionale stockent toutes les données et métadonnées d'instantané ensemble dans la région de portée. Avec les instantanés de portée régionale, vous pouvez également limiter les régions dans lesquelles vous pouvez créer et restaurer des instantanés.

Ce document explique comment définir des emplacements autorisés pour la création et la restauration d'instantanés régionaux.

Avant de commencer

  • Si ce n'est pas déjà fait, configurez l'authentification. L'authentification est le processus permettant de valider votre identité pour accéder aux Google Cloud services et aux API. Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:

    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

      Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à 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.

      Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.

Limites

  • Définir une portée régionale remplace tous les paramètres d'emplacement de stockage par défaut du projet.
  • La définition d'une portée régionale ne s'applique qu'aux nouveaux instantanés régionaux.
  • Vous ne pouvez pas convertir un instantané à portée mondiale en instantané à portée régionale. Vous devez créer un nouvel instantané avec la portée appropriée.

Rôles et autorisations requis

Pour obtenir les autorisations nécessaires pour définir des emplacements de stockage et de restauration pour les instantanés à portée régionale, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet:

Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.

Ces rôles prédéfinis contiennent les autorisations requises pour définir les emplacements de création et de restauration d'instantanés. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :

Définir les emplacements de création d'instantanés autorisés

Par défaut, vous pouvez créer des instantanés dans toutes les régions. Pour limiter les emplacements où vous pouvez créer des instantanés de portée régionale, définissez les emplacements d'accès autorisés au niveau du projet. Une fois que vous avez défini des emplacements d'accès, vous ne pouvez créer des instantanés de portée régionale pour le projet que dans ces emplacements.

gcloud

Pour autoriser les disques zonaux de la zone A à créer des instantanés dans n'importe quelle région, exécutez la commande gcloud beta compute disk-settings update:

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

Pour autoriser les disques régionaux de la région A à créer des instantanés dans n'importe quelle région, exécutez la commande gcloud beta compute disk-settings update:

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

Pour autoriser les disques de la région A à créer des instantanés uniquement dans la région B, exécutez la commande 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

Remplacez les éléments suivants :

  • ZONE_A: zone des disques pouvant créer des instantanés dans n'importe quelle région.
  • REGION_A: région de tous les disques (dans un projet) nécessitant des restrictions de création d'instantanés à portée régionale.
  • REGION_B: région autorisée pour la création d'instantanés à portée régionale. Vous pouvez définir plusieurs régions comme emplacements d'accès autorisés. Vous devez inclure la région dans laquelle le disque source est stocké comme l'une des régions autorisées.

REST

Pour autoriser les disques zonaux de la zone A à créer des instantanés dans n'importe quelle région, envoyez une requête PATCH à la méthode diskSettings.patch:

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

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

Pour autoriser les disques régionaux de la région A à créer des instantanés uniquement dans la région B, envoyez une requête PATCH à la méthode 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"}
      }
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • ZONE_A : zone du disque.
  • REGION_A: région du disque.
  • REGION_B: région autorisée pour la création d'instantanés. Vous pouvez définir plusieurs régions comme emplacements d'accès autorisés. Vous devez inclure la région dans laquelle le disque source est stocké comme l'une des régions autorisées.

Définir les emplacements de restauration d'instantanés autorisés

Par défaut, vous pouvez restaurer des instantanés à portée régionale et mondiale dans n'importe quelle région. Pour configurer des emplacements de restauration pour vos instantanés de portée régionale, définissez les emplacements d'accès autorisés au niveau du projet. Vous devez définir les emplacements d'accès autorisés pour chaque projet individuellement. Une fois que vous avez défini des emplacements d'accès, vous ne pouvez restaurer les instantanés de portée régionale du projet que dans ces emplacements.

gcloud

Pour autoriser la restauration des instantanés d'un projet dans la région A dans toutes les régions, utilisez la commande gcloud beta compute snapshot-settings update:

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

Pour autoriser la restauration des instantanés d'un projet dans la région A uniquement dans la région B, utilisez la commande 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

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • REGION_A: région où les instantanés de portée régionale sont stockés.
  • REGION_B: région autorisée dans laquelle les instantanés de portée régionale peuvent être restaurés. Vous pouvez définir plusieurs régions comme emplacements de restauration autorisés.

REST

Pour autoriser la restauration des instantanés d'un projet dans la région A dans toutes les régions, envoyez une requête PATCH à la méthode regionSnapshotSettings.patch:

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

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

Pour autoriser la restauration des instantanés d'un projet dans la région A uniquement dans la région B, envoyez une requête PATCH à la méthode 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"}
        }
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • REGION_A: région où les instantanés de portée régionale sont stockés.
  • REGION_B: région autorisée dans laquelle les instantanés de portée régionale peuvent être restaurés. Vous pouvez définir plusieurs régions comme emplacements de restauration autorisés.

Modifier les emplacements de restauration d'instantanés autorisés

gcloud

Pour afficher les emplacements de restauration autorisés pour les instantanés d'un projet stocké dans la région A, exécutez la commande gcloud beta compute snapshot-settings describe:

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

Pour supprimer la région B de la liste des emplacements de restauration autorisés pour les instantanés d'un projet stocké dans la région A, utilisez la commande 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

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • REGION_A: région où les instantanés de portée régionale sont stockés.
  • REGION_B: région dans laquelle vous souhaitez supprimer l'accès restauré pour les instantanés de portée régionale.

REST

Pour afficher les emplacements de restauration autorisés pour les instantanés d'un projet stocké dans la région A, envoyez une requête GET à la méthode regionSnapshotSettings.get:

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

Pour supprimer la région B de la liste des emplacements de restauration autorisés pour les instantanés d'un projet stocké dans la région A, envoyez une requête PATCH à la méthode 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":{}}
    }
  }

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet
  • REGION_A: région où les instantanés de portée régionale sont stockés.
  • REGION_B: région dans laquelle vous souhaitez supprimer l'accès restauré pour les instantanés de portée régionale.