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 un champ d'application global. Les instantanés à portée mondiale 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 à portée régionale. Les instantanés à portée régionale stockent toutes les données et métadonnées des instantanés dans la région concernée. Avec les instantanés à 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 les zones autorisées 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 services et aux API Google Cloud . 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. 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

    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.

      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.

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

Limites

  • La définition d'un champ d'application régional remplace tous les paramètres d'emplacement de stockage par défaut du projet.
  • La définition d'un champ d'application régional 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 instantané avec le champ d'application approprié.

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 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 des instantanés. Pour afficher les autorisations exactes requises, développez la section Autorisations requises :

Définir les emplacements autorisés pour la création d'instantané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 à portée régionale, définissez les emplacements d'accès autorisés au niveau du projet. Une fois que vous avez défini les emplacements d'accès, vous ne pouvez créer des instantanés à 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, utilisez 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) qui nécessitent 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 autorisés. Vous devez inclure la région dans laquelle le disque source est stocké parmi les 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 autorisés. Vous devez inclure la région dans laquelle le disque source est stocké parmi les régions autorisées.

Définir les emplacements autorisés pour la restauration d'instantanés

Par défaut, vous pouvez restaurer des instantanés à portée régionale et mondiale dans n'importe quelle région. Pour configurer les emplacements de restauration de vos instantanés à portée régionale, définissez les emplacements d'accès autorisés au niveau du projet. Vous devez définir les zones d'accès autorisées pour chaque projet individuellement. Une fois que vous avez défini des emplacements d'accès, vous ne pouvez restaurer les instantanés à portée régionale pour le 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ù sont stockés les instantanés à portée régionale.
  • REGION_B : région autorisée dans laquelle les instantanés à 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ù sont stockés les instantanés à portée régionale.
  • REGION_B : région autorisée dans laquelle les instantanés à 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 des 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, utilisez 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ù sont stockés les instantanés à portée régionale.
  • REGION_B : région dans laquelle vous souhaitez supprimer l'accès à la restauration 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ù sont stockés les instantanés à portée régionale.
  • REGION_B : région dans laquelle vous souhaitez supprimer l'accès à la restauration pour les instantanés de portée régionale.