Configurer une réplication asynchrone sur disque persistant


Ce document explique comment configurer la réplication asynchrone sur disque persistant. La réplication asynchrone des disques persistants est utile pour la reprise après sinistre à faibles RPO et RTO.

Pour activer la réplication asynchrone des disques, procédez comme suit:

  1. Configurez une paire de réplication sur disque pour configurer la réplication asynchrone sur disque persistant.
  2. Démarrez manuellement la réplication pour commencer à répliquer les données entre le disque principal et le disque secondaire.

Limites

Les disques secondaires doivent être vides lors de leur création. Vous ne pouvez pas les créer à partir d'images, d'instantanés ni d'autres disques.

Avant de commencer

  • Choisissez une paire de régions.
  • Créez un groupe de cohérence (facultatif).
  • 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, then initialize it by running the following command:

      gcloud init
    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.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

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

Configurer une paire de réplication sur disque

Avant de pouvoir répliquer des données entre des disques, vous devez configurer la réplication en effectuant les tâches suivantes:

  1. Choisissez une paire de régions, ainsi que vos régions principale et secondaire.
  2. Facultatif: Si vous devez coordonner la réplication sur un groupe de disques, créez un groupe de cohérence dans la région principale. Vous devez ajouter des disques principaux à un groupe de cohérence avant de commencer la réplication.
  3. Créez ou sélectionnez les disques principaux. Vous pouvez éventuellement ajouter ces disques au groupe de cohérence.
  4. Créez des disques secondaires vides.

Exigences concernant le disque

Pour être utilisés comme disques principaux ou secondaires pour la réplication asynchrone des disques persistants, les disques doivent répondre aux exigences suivantes:

Créer ou sélectionner un disque principal

Le disque principal est le disque de démarrage ou de données associé à la VM sur laquelle s'exécute la charge de travail. Vous pouvez utiliser n'importe quel disque préexistant répondant aux exigences de disque comme disque principal, ou en créer un. Si vous souhaitez utiliser un disque existant comme disque principal, vous n'avez pas besoin d'effectuer de configuration supplémentaire sur le disque. Procédez à la création d'un disque secondaire pour terminer la configuration de la réplication asynchrone sur disque persistant.

Créer un disque principal

Créez un disque principal à l'aide des méthodes décrites dans l'un des documents suivants.

  • Créez un disque de démarrage principal lors de la création d'une VM. Vous pouvez éventuellement ajouter le disque à un groupe de cohérence en créant la VM à l'aide de la gcloud CLI ou de REST et en spécifiant l'un des éléments suivants :

    • Si vous créez la VM à l'aide de la gcloud CLI, spécifiez l'option --create-disk :

      --create-disk=disk-resource-policy=projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME
      
    • Si vous créez la VM à l'aide de REST, spécifiez la propriété resourcePolicies :

      "disks":
      {
      …
      "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME"
      }
      
  • Créez un disque de données principal lors de la création d'une VM. Vous pouvez éventuellement ajouter le disque à un groupe de cohérence en créant la VM à l'aide de la gcloud CLI ou de REST et en spécifiant l'un des éléments suivants :

    • Si vous créez la VM à l'aide de la gcloud CLI, spécifiez l'option --create-disk :

      --create-disk=disk-resource-policy=projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME
      
    • Si vous créez la VM à l'aide de REST, spécifiez la propriété resourcePolicies :

      "disks":
      {
      …
      "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME"
      }
      
  • Créez un disque de données principal sans créer de VM. Vous pouvez éventuellement ajouter le disque à un groupe de cohérence en créant la VM à l'aide de la console Google Cloud, de la gcloud CLI ou de REST et en spécifiant l'un des éléments suivants :

    • Si vous créez le disque à l'aide de la console Google Cloud, sélectionnez le groupe de cohérence dans la liste déroulante Groupe de cohérence.

    • Si vous créez le disque à l'aide de la gcloud CLI, spécifiez l'option --resource-policies :

      --resource-policies=projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME
      
    • Si vous créez le disque à l'aide de REST, spécifiez la propriété resourcePolicies :

      "disks":
      {
      …
      "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/CONSISTENCY_GROUP_NAME"
      }
      

    Remplacez les éléments suivants :

    • PROJECT: projet contenant le groupe de cohérence.
    • REGION: région dans laquelle se trouve le groupe de cohérence.
    • CONSISTENCY_GROUP_NAME: nom du groupe de cohérence auquel ajouter le disque

Créer un disque secondaire

Le disque secondaire est un disque de données situé dans une région distincte du disque principal. Il reçoit et écrit les données répliquées à partir du disque principal. Lorsque vous configurez la réplication asynchrone des disques persistants, vous devez créer un disque secondaire vide qui référence le disque principal.

Pour créer un disque secondaire avec les mêmes propriétés que le disque principal, suivez les étapes décrites dans la section Créer un disque secondaire identique au disque principal.

Pour créer un disque secondaire différent du disque principal, consultez la section Créer un disque secondaire personnalisé.

Créer un disque secondaire identique au disque principal

Cette section explique comment créer un disque secondaire identique au disque principal.

Vous pouvez créer un disque secondaire à l'aide de la console Google Cloud, de gcloud CLI ou de REST.

Console

Créez un disque secondaire et démarrez la réplication en procédant comme suit:

  1. Dans la console Google Cloud, accédez à la page Disques.

    Accéder à la page Disques

  2. Cliquez sur le nom du disque principal. La page Gérer le disque s'ouvre.

  3. Cliquez sur Créer un disque secondaire.

  4. Dans le champ Nom, saisissez un nom pour la connexion.

  5. Dans la section Emplacement, effectuez l'une des opérations suivantes:

  6. Cliquez sur Créer. Compute Engine crée le disque et démarre la réplication.

gcloud

Créez un disque secondaire à l'aide de la commande gcloud compute disks create:

gcloud compute disks create SECONDARY_DISK_NAME \
    --SECONDARY_LOCATION_FLAG=SECONDARY_LOCATION \
    --size=SIZE \
    --primary-disk=PRIMARY_DISK_NAME \
    --PRIMARY_DISK_LOCATION_FLAG=PRIMARY_LOCATION \
    --primary-disk-project=PRIMARY_DISK_PROJECT

Pour créer un disque secondaire régional, spécifiez également l'indicateur --replica-zones:

--replica-zones=ZONE_1,ZONE_2

Remplacez les éléments suivants :

  • SECONDARY_DISK_NAME: nom du disque secondaire.
  • SECONDARY_LOCATION_FLAG : option d'emplacement du disque secondaire. Pour créer un disque secondaire régional, utilisez --region. Pour créer un disque secondaire zonal, utilisez --zone.
  • SECONDARY_LOCATION: région ou zone du disque secondaire.
  • SIZE : la taille du nouveau disque, en Go. La taille doit être identique à celle du disque principal. Les tailles acceptées sont comprises entre 10 Go et 2 000 Go (incréments de 1 Go).
  • PRIMARY_DISK_NAME : nom du disque principal à partir duquel le disque secondaire reçoit les données.
  • PRIMARY_LOCATION_FLAG : option d'emplacement du disque principal.
    • Pour un disque principal régional, utilisez --primary-disk-region.
    • Pour un disque principal zonal, utilisez --primary-disk-zone.
  • PRIMARY_LOCATION : région ou zone du disque principal.
    • Pour un disque régional, utilisez la région.
    • Pour un disque zonal, utilisez la zone.
  • PRIMARY_PROJECT: projet contenant le disque principal.
  • ZONE_1: l'une des zones dans lesquelles le disque régional est répliqué. Doit être une zone de la région spécifiée et être différente de ZONE_2.
  • ZONE_2: l'une des zones dans lesquelles le disque régional est répliqué. Doit être une zone de la région spécifiée et être différente de ZONE_1.

REST

Créez un disque secondaire zonal ou régional à l'aide de l'une des méthodes suivantes :

  • Pour créer un disque secondaire zonal, utilisez la méthode disks.insert:

    POST https://compute.googleapis.com/compute/v1/projects/SECONDARY_DISK_PROJECT/zones/SECONDARY_DISK_LOCATION/disks
    
    {
    "name": "SECONDARY_DISK_NAME",
    "sizeGb": "DISK_SIZE",
    "type": "DISK_TYPE"
    "asyncPrimaryDisk": {
      "disk": "projects/PRIMARY_DISK_PROJECT/PRIMARY_DISK_LOCATION_PARAMETER/PRIMARY_DISK_LOCATION/disks/PRIMARY_DISK_NAME"
      }
    }
    
  • Pour créer un disque secondaire régional, utilisez la méthode regionDisks.insert:

    POST https://compute.googleapis.com/compute/v1/projects/SECONDARY_DISK_PROJECT/regions/SECONDARY_DISK_LOCATION/disks
    
    {
    "name": "SECONDARY_DISK_NAME",
    "sizeGb": "DISK_SIZE",
    "type": "DISK_TYPE"
    "asyncPrimaryDisk": {
      "disk": "projects/PRIMARY_DISK_PROJECT/PRIMARY_DISK_LOCATION_PARAMETER/PRIMARY_DISK_LOCATION/disks/PRIMARY_DISK_NAME"
      }
    }
    

Remplacez les éléments suivants :

  • SECONDARY_DISK_PROJECT: projet du disque secondaire.
  • SECONDARY_DISK_LOCATION: région ou zone du disque secondaire.
    • Pour un disque régional, utilisez la région.
    • Pour un disque zonal, utilisez la zone.
  • SECONDARY_DISK_NAME: nom du disque secondaire.
  • DISK_SIZE : taille du disque secondaire. Doit être identique à la taille du disque principal.
  • SECONDARY_DISK_TYPE: type de disque Doit être défini sur pd-ssd ou pd-balanced.
  • PRIMARY_DISK_PROJECT : projet contenant le disque principal.
  • PRIMARY_DISK_LOCATION_PARAMETER: paramètre d'emplacement du disque principal.
    • Pour un disque principal régional, utilisez regions.
    • Pour un disque principal zonal, utilisez zones.
  • PRIMARY_DISK_LOCATION: région ou zone du disque principal. Pour les disques régionaux, utilisez la région. Pour les disques zonaux, utilisez la zone.
  • PRIMARY_DISK_NAME : nom du disque principal à partir duquel le disque secondaire reçoit les données.

Créer un disque secondaire personnalisé

Cette section explique comment créer un disque secondaire personnalisé, c'est-à-dire un disque secondaire dont les propriétés diffèrent de celles du disque principal.

Si le disque principal est un disque de démarrage, vous ne pouvez pas modifier ni supprimer les fonctionnalités de l'OS invité du disque principal. Vous pouvez uniquement ajouter d'autres fonctionnalités de l'OS invité. Pour en savoir plus, consultez la section Personnalisation du disque secondaire.

Vous pouvez créer un disque secondaire personnalisé à l'aide de gcloud CLI ou de REST. Vous ne pouvez pas personnaliser le disque secondaire à partir de la console Google Cloud.

gcloud

Pour créer un disque secondaire personnalisé, exécutez la commande gcloud compute disks create, comme décrit dans la section Créer un disque secondaire identique au disque principal. Utilisez des options supplémentaires pour personnaliser les propriétés du disque secondaire.

Vous trouverez ci-dessous des exemples de personnalisation du disque secondaire :

  • Pour spécifier des fonctionnalités d'OS invité supplémentaires, utilisez le paramètre --guest-os-features.

     --guest-os-features=UEFI_COMPATIBLE,GVNIC,MULTI_IP_SUBNET
     

  • Pour attribuer des libellés supplémentaires au disque secondaire, utilisez le paramètre --labels.
      --labels=secondary-disk-for-replication=yes
      

REST

Pour créer un disque secondaire personnalisé, utilisez la même méthode que celle décrite dans la section Créer un disque secondaire identique au disque principal. Spécifiez des champs supplémentaires pour personnaliser les propriétés du disque secondaire.

Vous trouverez ci-dessous des exemples de personnalisation du disque secondaire :

  • Pour spécifier des fonctionnalités d'OS invité supplémentaires, utilisez le champ guestOsFeatures. Vous ne pouvez spécifier que des fonctionnalités d'OS invité supplémentaires. Vous ne pouvez pas modifier ni supprimer les fonctionnalités d'OS invité qui ont été copiées à partir du disque principal.
    "guestOsFeatures": [
      {
        "type": "NEW_FEATURE_ID_1"
      },
      {
        "type": "NEW_FEATURE_ID_1"
      }
    ]
    
  • Pour attribuer des libellés supplémentaires au disque secondaire, utilisez le champ labels.
      "labels": [
        {
          "key": "value"
        },
      ]
    

Démarrer la réplication

Après avoir créé un disque principal et un disque secondaire, vous devez démarrer la réplication pour commencer à répliquer les données depuis le disque principal vers le disque secondaire.

Étapes suivantes