Provisionner un compte Azure Cosmos DB avec la sauvegarde continue et la restauration à un instant dans le passé

S’APPLIQUE À : API SQL API Azure Cosmos DB pour MongoDB

La fonctionnalité de restauration à un instant dans le passé d’Azure Cosmos DB vous permet de récupérer vos données après une modification accidentelle au sein d’un conteneur, de restaurer une ressource supprimée, ou de restaurer dans une région où des sauvegardes existent. Le mode de sauvegarde continue vous permet d’effectuer une restauration à n’importe quel instant dans le passé au cours des 30 ou 7 derniers jours. La distance à laquelle vous pouvez aller dans le temps dépend du niveau du mode continu pour le compte.

Cet article explique comment provisionner un compte avec la sauvegarde continue et la restauration à un instant dans le passé en utilisant le portail Azure, PowerShell, CLI et des modèles Resource Manager.

Important

La prise en charge de la sauvegarde continue sur 7 jours dans les scénarios de provisionnement et de migration est toujours en préversion. Utilisez PowerShell et Azure CLI pour migrer ou provisionner un compte avec une sauvegarde continue configurée au niveau 7 jours.

Notes

Vous pouvez provisionner le compte en mode de sauvegarde continue uniquement si les conditions suivantes sont remplies :

  • Si le compte est de type API SQL ou API pour MongoDB.
  • Si le compte est de type API Table ou API Gremlin.
  • Si le compte a une seule région d’écriture.

Provisionner avec le portail Azure

Lorsque vous créez un compte Azure Cosmos DB, sous l’onglet Stratégie de sauvegarde, choisissez le mode continu pour activer la fonctionnalité de restauration à un instant dans le passé pour le nouveau compte. Avec la restauration à un instant dans le passé, les données sont restaurées sur un nouveau compte. Actuellement, vous ne pouvez pas effectuer de restauration sur un compte existant.

Approvisionner un compte Azure Cosmos DB avec une configuration de sauvegarde continue.

L’API Table et l’API Gremlin sont en préversion et peuvent être approvisionnées via PowerShell et Azure CLI.

Provisionner avec Azure PowerShell

Pour les commandes PowerShell et CLI, la valeur de niveau est facultative, si elle n’est pas déjà fournie. Si la sauvegarde du compte n’est pas fournie, elle est conservée pendant 30 jours. Les niveaux sont représentés par les valeurs Continuous7Days ou Continuous30Days.

  1. Installer la dernière version d’Azure PowerShell

    • Avant de provisionner le compte, installez toute version d’Azure PowerShell supérieure à 6.2.0. Pour plus d’informations sur la dernière version d’Azure PowerShell, consultez Dernière version d’Azure PowerShell.
    • Pour provisionner le niveau Continuous7Days, vous devez installer la préversion du module en exécutant Install-Module -Name Az.CosmosDB -AllowPrerelease.
  2. Connectez-vous ensuite à votre compte Azure et sélectionnez l’abonnement requis avec les commandes suivantes :

    1. Connectez-vous à Azure en utilisant la commande suivante :

      Connect-AzAccount
      
    2. Sélectionnez un abonnement spécifique avec la commande suivante :

      Select-AzSubscription -Subscription <SubscriptionName>
      

Compte API SQL

Pour approvisionner un compte avec sauvegarde continue, ajoutez l’argument -BackupPolicyType Continuous à la commande d’approvisionnement standard.

La cmdlet suivante suppose un compte d’écriture de région unique, Pitracct, dans la région USA Ouest dans le groupe de ressources MyRG. Le compte dispose d’une stratégie de sauvegarde continue activée. La sauvegarde continue est configurée au niveau Continuous7days :

New-AzCosmosDBAccount `
  -ResourceGroupName "MyRG" `
  -Location "West US" `
  -BackupPolicyType Continuous `
  -ContinuousTier Continuous7Days `
  -Name "pitracct" `
  -ApiKind "Sql"

API pour MongoDB

La cmdlet suivante est un exemple de compte de sauvegarde continue configuré avec le niveau Continuous30days :

New-AzCosmosDBAccount `
  -ResourceGroupName "MyRG" `
  -Location "West US" `
  -BackupPolicyType Continuous `
  -ContinuousTier Continuous30Days `
  -Name "Pitracct" `
  -ApiKind "MongoDB" `
  -ServerVersion "3.6"

Compte API Table

Pour approvisionner un compte avec sauvegarde continue, ajoutez un argument -BackupPolicyType Continuous à la commande d’approvisionnement standard.

La cmdlet suivante est un exemple de stratégie de sauvegarde continue avec le niveau Continuous7days :

New-AzCosmosDBAccount `
  -ResourceGroupName "MyRG" `
  -Location "West US" `
  -BackupPolicyType Continuous `
  -ContinuousTier Continuous7Days `
  -Name "pitracct" `
  -ApiKind "Table"

Compte API Gremlin

Pour approvisionner un compte avec sauvegarde continue, ajoutez un argument -BackupPolicyType Continuous à la commande d’approvisionnement standard.

La cmdlet suivante est un exemple de compte avec une stratégie de sauvegarde continue configurée avec le niveau Continuous30days :

New-AzCosmosDBAccount `
  -ResourceGroupName "MyRG" `
  -Location "West US" `
  -BackupPolicyType Continuous `
  -ContinuousTier Continuous30Days `
  -Name "pitracct" `
  -ApiKind "Gremlin" 

Provisionner avec Azure CLI

Pour la valeur du niveau de commandes PowerShell et CLI est facultative, si elle n’est pas fournie, la sauvegarde du compte sera conservée pendant 30 jours. Les niveaux sont représentés par Continuous7Days ou Continuous30Days.

Avant de provisionner le compte, installez Azure CLI en suivant ces étapes :

  1. Installez la dernière version d’Azure CLI.

    • Installez une version d’Azure CLI supérieure à 2.26.0. Pour plus d’informations sur la dernière version d’Azure CLI, consultez Azure CLI.
    • Si vous avez déjà installé l’interface CLI, exécutez la commande az upgrade pour effectuer la mise à jour vers la dernière version. Cette commande ne fonctionnera qu’avec une version de CLI supérieure à la version 2.11. Si vous disposez d’une version antérieure, utilisez le lien ci-dessus pour installer la dernière version.
    • Pour provisionner le niveau Continuous7Days, vous devez installer la préversion de l’extension par az extension update --name cosmosdb-preview
  2. Se connecter et sélectionner votre abonnement

    • Connectez-vous à votre compte Azure à l’aide de la commande az login.
    • Sélectionnez l’abonnement requis à l’aide de la commande az account set -s <subscriptionguid>.

Compte API SQL

Pour approvisionner un compte d’API SQL avec sauvegarde continue, un argument supplémentaire --backup-policy-type Continuous doit être transmis avec la commande d’approvisionnement standard. La commande suivante est un exemple de compte d’écriture monorégion appelé Pitracct avec une stratégie de sauvegarde continue et le niveau Continuous7days :


az cosmosdb create \
  --name Pitracct \
  --resource-group MyRG \
  --backup-policy-type Continuous \
  --continuous-tier "Continuous7Days" \
  --default-consistency-level Session \
  --locations regionName="West US"

API pour MongoDB

La commande suivante montre un exemple de compte d’écriture monorégion appelé Pitracct avec une stratégie de sauvegarde continue et le niveau Continuous30days :

az cosmosdb create \
  --name Pitracct \
  --kind MongoDB \
  --resource-group MyRG \
  --server-version "3.6" \
  --backup-policy-type Continuous \
  --continuous-tier "Continuous30Days" \
  --default-consistency-level Session \
  --locations regionName="West US"

Compte API Table

La commande suivante montre un exemple de compte d’écriture monorégion appelé Pitracct avec une stratégie de sauvegarde continue et le niveau Continuous30days :

az cosmosdb create \
  --name Pitracct \
  --kind GlobalDocumentDB  \
  --resource-group MyRG \
  --capabilities EnableTable \ 
  --backup-policy-type Continuous \
  --continuous-tier "Continuous30Days" \
  --default-consistency-level Session \
  --locations regionName="West US"

Compte API Gremlin

La commande suivante montre un exemple de compte d’écriture monorégion appelé Pitracct avec une stratégie de sauvegarde continue et le niveau Continuous7days créée dans la région USA Ouest sous le groupe de ressources MyRG :

az cosmosdb create \
  --name Pitracct \
  --kind GlobalDocumentDB  \
  --resource-group MyRG \
  --capabilities EnableGremlin \ 
  --backup-policy-type Continuous \
  --continuous-tier "Continuous7Days" \
  --default-consistency-level Session \
  --locations regionName="West US"

Provisionner avec un modèle Resource Manager

Vous pouvez utiliser des modèles Azure Resource Manager pour déployer un compte Azure Cosmos DB en mode continu. Lorsque vous définissez le modèle pour approvisionner un compte, incluez backupPolicy et le paramètre de niveau comme indiqué dans l’exemple suivant, le niveau peut être Continuous7Days ou Continuous30Days :

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "resources": [
    {
      "name": "ademo-pitr1",
      "type": "Microsoft.DocumentDB/databaseAccounts",
      "apiVersion": "2016-03-31",
      "location": "West US",
      "properties": {
        "locations": [
          {
            "locationName": "West US"
          }
        ],
        "backupPolicy":{
        "type":"Continuous", 
        "continuousModeProperties":{
        "tier":"Continuous7Days"
        }
        } 
        "databaseAccountOfferType": "Standard"
        }
        ]
        }

Ensuite, déployez le modèle à l’aide d’Azure PowerShell ou de l’interface CLI. L’exemple suivant montre comment déployer le modèle avec une commande CLI :

az deployment group create -g <ResourceGroup> --template-file <ProvisionTemplateFilePath>

Étapes suivantes