Gérer la réplication d'instance

Ce guide vous explique comment configurer la réplication d'instance pour associer une instance source à un réplica de secours. Vous pouvez utiliser la réplication d'instance dans les scénarios suivants :

  • Protéger les instances contre les pannes : maintenez une instance de basculement interrégionale mise à jour en permanence pour la reprise après sinistre.
  • Migrer des données : promouvez un réplica de secours pour migrer définitivement une instance vers un nouvel emplacement avec un temps d'arrêt minimal.
  • Exécuter des tests opérationnels : suspendez la réplication pour installer temporairement la réplique et exécuter des exercices de reprise après sinistre isolés ou des charges de travail de test sans affecter votre instance principale.

Avant de commencer

Créez une instance Filestore à utiliser comme instance source pour votre réplica.

Activer les API

Activez l'API Filestore.

Rôles requis pour activer les API

Pour activer les API, vous devez disposer de l'autorisation serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation grâce au rôle Propriétaire (roles/owner). Sinon, vous pouvez obtenir cette autorisation grâce au rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.

Activer l'API

Rôles requis

Pour obtenir les autorisations nécessaires pour configurer la réplication d'instances et surveiller les répliques, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :

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

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Si vous créez un réplica interprojets, vous devez disposer du rôle Éditeur Cloud Filestore (roles/file.editor) dans les projets source et de réplica. Ce rôle inclut l'autorisation file.instances.create, qui est requise dans le projet source pour créer un réplica inter-projets.

Créer une instance répliquée

Vous ne pouvez pas utiliser la console Google Cloud pour créer un réplica multiprojet. Utilisez plutôt gcloud CLI ou l'API REST.

Console Google Cloud

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

    Accéder à la page "Instances"

  2. Cliquez sur l'ID de l'instance que vous souhaitez répliquer.

  3. Sur la page d'informations sur l'instance, cliquez sur l'onglet Réplications.

  4. Cliquez sur Créer une instance répliquée.

  5. Vérifiez les détails de l'instance source, examinez l'objectif de point de récupération compatible, puis cliquez sur Suivant.

  6. Créez l'instance. Pour en savoir plus, consultez Créer une instance. Tenez compte des points suivants :

    • La capacité spécifiée doit être supérieure ou égale à celle de l'instance source.
    • Le niveau de service et le protocole Filestore doivent être identiques pour l'instance source et la réplique.
    • Pour une solution de reprise après sinistre robuste, nous vous recommandons de choisir une région différente pour le réplica, plutôt qu'une zone différente.
  7. Cliquez sur Suivant.

  8. Vérifiez les détails, puis cliquez sur Suivant.

  9. Cliquez sur Créer.

  10. Patientez jusqu'à la fin de l'opération. Une fois le processus terminé, l'instance répliquée est listée sous l'instance source sur la page Réplications. Cliquez sur l'ID d'instance du réplica pour afficher ses détails.

gcloud

  1. Pour créer une instance répliquée, exécutez la commande filestore instances create.

    gcloud filestore instances create INSTANCE_ID \
      --source-instance=projects/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/instances/SOURCE_INSTANCE_ID \
      --project=REPLICA_PROJECT_ID \
      --location=LOCATION \
      --network=name="NETWORK" \
      --tier=TIER \
      --file-share=name="FILE_SHARE_NAME",capacity=FILE_SHARE_SIZE \
    

Remplacez les éléments suivants :

  • INSTANCE_ID par le nom de l'instance répliquée que vous souhaitez créer. Exemple :sample-replica
  • SOURCE_PROJECT_ID par l'ID du projet Google Cloud dans lequel se trouve l'instance source.
  • SOURCE_LOCATION par l'emplacement de l'instance source.
  • SOURCE_INSTANCE_ID avec le nom de l'instance source pour laquelle vous souhaitez créer une réplique. Exemple :sample-instance
  • REPLICA_PROJECT_ID par l'ID du projet Google Cloud dans lequel vous souhaitez que l'instance répliquée réside.
  • LOCATION par l'emplacement où vous souhaitez que l'instance de réplica réside, par exemple us-central1-a. Si la source se trouve dans un niveau de service zonal, vous devez spécifier une région et une zone pour le réplica.
  • NETWORK par le nom du réseau que vous souhaitez utiliser, tel que default.
  • TIER avec le niveau de service dont vous avez besoin, par exemple ZONAL. Le niveau et la plage de capacité doivent correspondre à l'instance source.
  • FILE_SHARE_NAME est le nom que vous spécifiez pour le partage de fichiers NFS qui est diffusé à partir de l'instance, tel que vol1.
  • FILE_SHARE_SIZE par la taille souhaitée pour le partage de fichiers, par exemple 1.25TiB.

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour créer une réplique d'instance, utilisez la requête suivante :

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request POST \
      -d '{"tier": "TIER",
          "networks": { "network": "NETWORK" },
          "file_shares": {"name": "SHARE_NAME","capacity_gb": "CAPACITY"},
          "replication": {"replicas":[{"peer_instance": "projects/SOURCE_PROJECT_ID/locations/ACTIVE_LOCATION/instances/ACTIVE_NAME"}], "role":"standby"},
          "description": "DESCRIPTION" }' \
      "https://file.googleapis.com/v1/projects/REPLICA_PROJECT_ID/locations/REPLICA_LOCATION/instances?instanceId=REPLICA_INSTANCE_NAME"
    

    Remplacez les éléments suivants :

    • TIER est le nom du niveau de service que vous souhaitez utiliser pour le réplica. Exemple :REGIONAL
    • NETWORK est le nom du réseau que vous souhaitez utiliser pour l'instance répliquée. Exemple :default Vous devez utiliser le même réseau que la source.
    • SHARE_NAME est le nom du partage de fichiers. Exemple : vol1.
    • CAPACITY correspond à la taille, en Gio, que vous souhaitez allouer au réplica. Exemple :1024 La capacité doit être supérieure ou égale à celle de l'instance source.
    • REPLICA_PROJECT_ID correspond au nom du projet dans lequel vous souhaitez que le réplica réside. Exemple :sample-project
    • SOURCE_PROJECT_ID est le nom du projet dans lequel réside votre instance source.
    • ACTIVE_LOCATION est l'emplacement de la source. Exemple :us-east1
    • ACTIVE_NAME est le nom de l'instance que vous souhaitez répliquer. Exemple :sample-instance
    • DESCRIPTION est une description de l'instance répliquée que vous souhaitez créer. Exemple : A sample replica.
    • REPLICA_LOCATION correspond à l'emplacement où vous souhaitez que l'instance dupliquée réside. Exemple :us-central1
    • REPLICA_INSTANCE_NAME est le nom de l'instance répliquée que vous souhaitez créer. Exemple :sample-replica

Afficher l'état des réplicas

Console Google Cloud

  1. Dans la console Google Cloud , accédez à la page Réplications de Filestore.

Accéder à la page "Réplications"

  1. Cliquez sur l'ID d'instance du réplica pour afficher ses détails.

gcloud

  1. Pour afficher des informations sur une instance spécifique, exécutez la commande instances describe :

    gcloud filestore instances describe <var>INSTANCE_ID</var> \
       --project=<var>PROJECT_ID</var> \
      --location=<var>LOCATION</var> \
    

Remplacez les éléments suivants :

  • INSTANCE_ID par l'ID de l'instance Filestore que vous souhaitez afficher, par exemple genomics-instance.
  • PROJECT_ID par l'ID du projet Google Cloud contenant l'instance Filestore.
  • LOCATION par l'emplacement où réside l'instance, par exemple us-east1-b.

    La réponse à la commande instances describe ressemble à l'un des exemples suivants.

    Cet exemple de réponse montre une instance source avec la réplication d'instance activée. Notez que le rôle spécifié est ACTIVE :

    createTime: '2024-06-17T22:17:26.475900265Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-east1-b/instances/genomics-instance-source
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 172.27.220.2
      modes:
      - MODE_IPV4
      network: default
      reservedIpRange: 172.27.220.0/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-central1-a/instances/genomics-instance-replica
        state: READY
      role: ACTIVE
    state: READY
    tier: ZONAL
    

    Cet exemple de réponse montre une instance répliquée qui a été promue en instance régulière. Notez que la réplication n'est pas spécifiée, car elle n'est pas encore active :

    createTime: '2024-06-20T17:11:56.048062134Z'
    fileShares:
    - capacityGb: '1024'
      name: vol1
    name: projects/genomics-project/locations/us-west2-a/instances/genomics-instance-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.155.90.194
      network: default
      reservedIpRange: 10.155.90.192/26
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

    Cet exemple de réponse montre une instance répliquée associée à une instance active. Le rôle de réplication est STANDBY :

    createTime: '2024-06-21T04:15:21.721579074Z'
    fileShares:
    - capacityGb: '1280'
      name: vol1
    name: projects/genomics-project/locations/us-west1-a/instances/genomics-replica
    networks:
    - connectMode: DIRECT_PEERING
      ipAddresses:
      - 10.153.44.194
      network: default
      reservedIpRange: 10.153.44.192/26
    replication:
      replicas:
      - peerInstance: projects/genomics-project/locations/us-west2-a/instances/genomics-instance
        state: READY
      role: STANDBY
    satisfiesPzi: true
    state: READY
    tier: ZONAL
    

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour afficher l'état des répliques, utilisez la requête suivante :

        curl -s \
        --header "Authorization: Bearer $(gcloud auth print-access-token)" \
        --header "Content-Type: application/json" \
        --request GET \
        "https://file.googleapis.com/v1/projects/<var>PROJECT</var>/locations/<var>LOCATION</var>/instances/<var>INSTANCE_NAME</var>"
    

    Remplacez les éléments suivants :

    • PROJECT est le nom du projet dans lequel se trouve votre instance. Exemple :sample-project
    • LOCATION est l'emplacement de votre instance. Exemple :us-west1-a
    • INSTANCE_NAME est le nom de l'instance que vous souhaitez afficher. Exemple :sample-instance

Répertorier toutes les répliques d'un projet

Console Google Cloud

  1. Dans la console Google Cloud , accédez à la page Réplications de Filestore.

    Accéder à la page "Réplications"

Le tableau liste les instances sources avec leurs répliques. Cliquez sur l'ID d'instance du réplica pour afficher ses détails.

gcloud

  1. Pour afficher la liste de toutes les instances du projet, exécutez la commande instances list :

    gcloud filestore instances list
      --project=PROJECT_ID \
    

    Remplacez PROJECT_ID par l'ID du projet que vous souhaitez afficher.

    La réponse renvoie une liste d'instances et de répliques, semblable à la suivante :

    INSTANCE_NAME                       LOCATION     TIER      CAPACITY_GB  FILE_SHARE_NAME  IP_ADDRESS     STATE  CREATE_TIME
    genomics-source-1                   us-east1-b   ZONAL     1024         vol1             172.27.220.2   READY  2024-06-17T22:17:26
    genomics-source-1-replica           us-west1-a   ZONAL     1024         vol1             10.142.57.194  READY  2024-06-17T23:47:19
    

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour lister les réplicas dans un projet spécifique, utilisez la requête suivante :

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request GET \
      "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances"

    Remplacez les éléments suivants :

    • PROJECT est le nom du projet dans lequel se trouve votre instance. Exemple :sample-project
    • LOCATION est l'emplacement que vous souhaitez rechercher. Pour rechercher toutes les instances dans n'importe quel emplacement d'un projet, utilisez le point de terminaison list.

Mettre en pause la réplication

Console Google Cloud

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

    Accéder à la page "Instances"

  2. Cliquez sur l'ID de l'instance de la réplique que vous souhaitez mettre en veille.

  3. Dans la section Description, cliquez sur l'onglet Réplications.

  4. Dans la section Détails de l'instance active, cliquez sur Mettre en veille la réplication.

  5. Lisez l'alerte avant de continuer, puis confirmez en cliquant sur Suspendre la réplication.

L'état de la réplication passe à Mise en veille. Une fois l'opération terminée, l'état de réplication passe à Mise en pause.

gcloud

Pour mettre en veille une réplique, exécutez la commande gcloud filestore instances pause-replica.

  gcloud filestore instances pause-replica INSTANCE_ID \
      --project=PROJECT_ID \
      --location=LOCATION \

Remplacez les éléments suivants :

  • INSTANCE_ID par l'ID de l'instance Filestore que vous souhaitez suspendre, par exemple my-replica.
  • PROJECT_ID par l'ID du projet Google Cloud contenant l'instance Filestore.
  • LOCATION par l'emplacement de la réplique, par exemple us-central1.

Si l'opération réussit, la réponse suivante ou une réponse similaire s'affiche :

createTime: '2025-12-22T14:03:33.727531128Z'
customPerformanceSupported: true
description: Replica of active, us-east1-b
fileShares:
- capacityGb: '1024'
  name: share
name: projects/genomics-project/locations/us-west2-a/instances/my-replica
networks:
- connectMode: DIRECT_PEERING
  ipAddresses:
  - 10.229.150.130
  modes:
  - MODE_IPV4
  network: default
  reservedIpRange: 10.229.150.128/26
performanceLimits:
  maxIops: '12000'
  maxReadIops: '12000'
  maxReadThroughputBps: '125829120'
  maxWriteIops: '4000'
  maxWriteThroughputBps: '104857600'
protocol: NFS_V3
replication:
  replicas:
  - peerInstance: projects/genomics-project/locations/us-east1-b/instances/my-source
    state: PAUSED
    stateUpdateTime: '2025-12-22T14:24:27.558413891Z'
  role: STANDBY
state: READY
tier: REGIONAL

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour mettre en veille une réplique, utilisez la requête suivante :

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request POST \
      -d '{}' \
      "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances/REPLICA_NAME:pauseReplica"

    Remplacez les éléments suivants :

    • PROJECT est le nom du projet dans lequel réside votre réplica. Par exemple, sample-project.
    • LOCATION correspond à l'emplacement où réside la réplique. Exemple :us-west1-a
    • REPLICA_NAME est le nom de l'instance que vous souhaitez suspendre. Exemple :sample-replica

Reprendre la réplication

Console Google Cloud

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

    Accéder à la page "Instances"

  2. Cliquez sur l'ID de l'instance répliquée que vous souhaitez utiliser.

  3. Dans la section Description, cliquez sur l'onglet Réplications.

  4. Dans la section Détails de l'instance active, cliquez sur Reprendre la réplication.

  5. Lisez l'alerte avant de continuer, puis confirmez en saisissant resume dans le champ prévu à cet effet.

L'état de la réplication passe à Reprise. Une fois l'opération terminée, l'état de la réplication passe à Prêt.

gcloud

Vous pouvez réactiver une instance répliquée en exécutant la commande gcloud filestore instances resume-replica.

  gcloud filestore instances resume-replica INSTANCE_ID \
      --project=PROJECT_ID \
      --location=LOCATION \

Remplacez les éléments suivants :

  • INSTANCE_ID par l'ID de l'instance répliquée Filestore que vous souhaitez réactiver, par exemple my-replica.
  • PROJECT_ID par l'ID du projet Google Cloud contenant l'instance répliquée Filestore.
  • LOCATION par l'emplacement de la réplique, par exemple us-central1.

Si l'opération réussit, la réponse suivante ou une réponse similaire s'affiche :

  createTime: '2025-12-22T14:03:33.727531128Z'
  customPerformanceSupported: true
  description: Replica of active, us-central1
  fileShares:
  - capacityGb: '1024'
    name: share
  name: projects/genomics-project/locations/us-central1/instances/my-replica
  networks:
  - connectMode: DIRECT_PEERING
    ipAddresses:
    - 10.229.150.130
    modes:
    - MODE_IPV4
    network: default
    reservedIpRange: 10.229.150.128/26
  performanceLimits:
    maxIops: '12000'
    maxReadIops: '12000'
    maxReadThroughputBps: '125829120'
    maxWriteIops: '4000'
    maxWriteThroughputBps: '104857600'
  protocol: NFS_V3
  replication:
    replicas:
    - peerInstance: projects/genomics-project/locations/us-central1/instances/my-source
      state: READY
      stateUpdateTime: '2025-12-22T14:24:27.558413891Z'
    role: STANDBY
  state: READY
  tier: REGIONAL

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour reprendre la réplication, utilisez la requête suivante :
curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request POST \
      -d '{}' \
      "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances/REPLICA_NAME:resumeReplica"

Remplacez les éléments suivants :

  • PROJECT est le nom du projet dans lequel se trouve votre réplica. Exemple :sample-project
  • LOCATION correspond à l'emplacement où réside la réplique. Exemple :us-west1-a
  • REPLICA_NAME est le nom de l'instance que vous souhaitez réactiver. Exemple :sample-replica

Interrompre la réplication et promouvoir une réplique

L'interruption de la réplication entre les instances active et de secours promeut l'instance répliquée en instance régulière. Cette opération est irréversible.

Console Google Cloud

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

    Accéder à la page "Instances"

  2. Cliquez sur l'ID de l'instance répliquée que vous souhaitez utiliser.

  3. Cliquez sur Arrêter la réplication.

  4. Saisissez l'ID d'instance de la réplique, puis cliquez sur Interrompre la réplication.

  5. Patientez jusqu'à la fin de l'opération.

gcloud

Pour promouvoir une instance répliquée, exécutez la commande gcloud filestore instances promote-replica.

  gcloud filestore instances promote-replica INSTANCE_ID 
--project=PROJECT_ID
--location=LOCATION

Remplacez les éléments suivants :

  • INSTANCE_ID par l'ID de l'instance Filestore que vous souhaitez promouvoir, par exemple my-replica.
  • PROJECT_ID par l'ID du projet Google Cloud contenant l'instance Filestore.
  • LOCATION par l'emplacement de la réplique, par exemple us-central1.

Si l'opération réussit, la réponse suivante ou une réponse similaire s'affiche :

capacityGb: '1024'
capacityStepSizeGb: '256'
createTime: '2024-06-20T17:11:56.048062134Z'
fileShares:
- capacityGb: '1024'
  name: vol1
maxCapacityGb: '9984'
maxShareCount: '1'
name: projects/genomics-project/locations/us-west2-a/instances/my-replica
networks:
- connectMode: DIRECT_PEERING
  ipAddresses:
  - 10.155.90.194
  network: default
  reservedIpRange: 10.155.90.192/26
protocol: NFS_V3
replication:
  replicas:
  - lastActiveSyncTime: '2024-06-21T00:13:23Z'
    peerInstance: projects/genomics-project/locations/us-east1-b/instances/my-source
  role: STANDBY
satisfiesPzi: true
state: PROMOTING
tier: ZONAL

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour promouvoir la réplique, utilisez la requête suivante :

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request POST \
      -d '{}' \
      "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances/REPLICA_NAME:promoteReplica"

    Remplacez les éléments suivants :

    • PROJECT est le nom du projet dans lequel se trouve votre réplica. Exemple :sample-project
    • LOCATION correspond à l'emplacement où réside la réplique. Exemple :us-west1-a
    • REPLICA_NAME est le nom de l'instance que vous souhaitez promouvoir. Exemple :sample-replica

Supprimer une instance répliquée

Console Google Cloud

  1. Dans la console Google Cloud , accédez à la page "Instances Filestore".

    Accéder à la page "Instances"

    Les répliques sont listées sous leurs instances sources associées. Si vous ne voyez pas de réplica, consultez les commandes gcloud pour cette tâche.

  2. Cliquez sur l'ID de l'instance à supprimer.

  3. Cliquez sur Supprimer.

gcloud

  1. Pour afficher la liste de toutes les instances, y compris les répliques, exécutez la commande instances list :

    gcloud filestore instances list
      --project=PROJECT_ID \
    

    Remplacez PROJECT_ID par l'ID du projet que vous souhaitez afficher.

  2. Copiez les détails de l'instance que vous souhaitez supprimer.

  3. Pour supprimer une instance répliquée, exécutez la commande filestore instances delete.

    gcloud filestore instances delete INSTANCE_ID \
      --location=LOCATION \
    

Remplacez les éléments suivants :

  • INSTANCE_ID par l'ID de l'instance Filestore que vous souhaitez supprimer, par exemple my-replica.
  • LOCATION par l'emplacement de la réplique, par exemple us-central1-a.

API REST

  1. Vous devez installer et initialiser la gcloud CLI afin de générer un jeton d'accès pour l'en-tête Authorization.

  2. Pour supprimer une instance répliquée, utilisez la requête suivante :

    curl -s \
      --header "Authorization: Bearer $(gcloud auth print-access-token)" \
      --header "Content-Type: application/json" \
      --request DELETE \
      "https://file.googleapis.com/v1/projects/PROJECT/locations/LOCATION/instances/INSTANCE_NAME"

    Remplacez les éléments suivants :

    • PROJECT est le nom du projet dans lequel se trouve votre instance. Exemple :sample-project
    • LOCATION est l'emplacement de votre instance. Exemple :us-west1-a
    • INSTANCE_NAME est le nom de l'instance que vous souhaitez supprimer. Exemple :sample-instance

Surveiller la réplication d'instances

Console Google Cloud

Pour afficher les métriques de réplication des instances Filestore dans un tableau de bord Cloud Monitoring, procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page  Explorateur de métriques.

    Accéder à l'Explorateur de métriques

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.

  2. Cliquez sur la section extensible Sélectionner une métrique.

  3. Dans le champ Filtrer par nom de ressource ou de métrique, saisissez filestore et sélectionnez la section extensible Instance Filestore.

  4. Sélectionnez la section extensible Instance, puis cliquez sur RPO.

  5. La métrique RPO times_since_last_replication s'affiche. Cette métrique devient disponible plusieurs minutes après la fin de la synchronisation initiale des données répliquées.

Étapes suivantes