다음을 통해 공유


정기적 백업 모드에서 지속적인 백업 모드로 Azure Cosmos DB 계정 마이그레이션

주기적 모드 백업 정책이 있는 Azure Cosmos DB 계정은 Azure Portal, Azure CLI, Azure PowerShell 또는 Bicep 템플릿을 사용하여 연속 모드로 마이그레이션할 수 있습니다. 주기적 모드에서 연속 모드로 마이그레이션하는 것은 단방향이며 되돌릴 수 없습니다. 주기적 모드에서 연속 모드로 마이그레이션한 후에는 연속 모드의 이점을 얻을 수 있습니다.

연속 모드로 마이그레이션해야 하는 주요 이유:

  • Azure Portal, CLI 또는 PowerShell을 사용하여 직접 데이터를 복원합니다.
  • 지난 30일 또는 7일 기간 내에 특정 초로 복원합니다.
  • 분할된 데이터베이스 또는 파티션 키 범위에서 백업이 일관되는지 확인합니다.
  • 삭제 또는 변경 후 컨테이너, 데이터베이스 또는 전체 계정을 복원합니다.
  • 컨테이너, 데이터베이스 또는 계정에서 이벤트를 선택하고 복원을 시작할 시기를 선택합니다.

참고

마이그레이션은 단방향이며 되돌릴 수 없습니다. 정기 모드에서 연속 모드로 마이그레이션한 후에는 다시 전환할 수 없습니다.

이러한 조건이 충족되는 경우에만 계정을 연속 백업 모드로 마이그레이션할 수 있습니다. 또한 마이그레이션하기 전에 특정 시점 복원 제한을 확인합니다 .

  • 계정은 NoSQL, Table, Gremlin 또는 MongoDB에 대한 API입니다.
  • 계정에 컨테이너에 대해 Azure Synapse Link를 사용하지 않도록 설정한 적이 없습니다.

계정에서 고객 관리형 키를 사용하는 경우 Key Vault 액세스 정책에서 관리 ID(시스템 할당 또는 사용자 할당)를 선언하고 계정의 기본 ID로 설정합니다.

중요합니다

계정을 연속 백업 모드로 마이그레이션한 후에는 주기적 백업 모드에 비해 비용이 변경될 수 있습니다. 30일에서 7일 사이의 선택은 백업 비용에도 영향을 줍니다. 자세한 내용은 연속 백업 모드 가격 책정을 참조하세요.

필수 조건

  • Azure Cosmos DB 계정
  • Microsoft.DocumentDB/databaseAccounts/write 마이그레이션 중인 계정에 대한 역할 기반 액세스 제어 권한
  • 최신 버전의 Azure CLI 또는 Azure PowerShell

포털을 사용하여 마이그레이션

다음 단계를 사용하여 정기적 백업에서 지속적인 백업 모드로 계정을 마이그레이션합니다.

  1. Azure CLI에 로그인합니다.

    az login
    
  2. 계정을 continuous30days 또는 continuous7days 계층으로 마이그레이션합니다.

    az cosmosdb update \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
        --backup-policy-type "Continuous"
    
    az cosmosdb update \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
        --backup-policy-type "Continuous" \
        --continuous-tier "Continuous7Days"
    

    참고

    계층 값을 제공하지 않으면 기본값은 .입니다 continuous30days.

  3. 마이그레이션이 성공적으로 완료되면 출력에 backupPolicy 값이 있는 type 속성이 포함된 Continuous 개체가 표시됩니다.

    {
      ...
      "backupPolicy": {
        "continuousModeProperties": {
          "tier": "Continuous7Days"
        },
        "migrationState": null,
        "type": "Continuous"
      },
      ...
    }
    

마이그레이션 상태 확인

Azure CLI를 사용하여 기존 마이그레이션의 상태를 확인합니다.

  1. 다음 명령을 실행하여 Azure Cosmos DB 계정의 속성을 가져옵니다.

    az cosmosdb show \
        --resource-group "<resource-group-name>" \
        --name "<account-name>" \
    
  2. 개체의 status 속성과 targetType 속성을 backupPolicy 확인합니다. 상태는 마이그레이션이 시작된 후여야 InProgress 합니다.

    {
      ...
      "backupPolicy": {
        ...
        "migrationState": {
          "status": "InProgress",
          "targetType": "Continuous"
        },
        "type": "Periodic"
      },
      ...
    }
    
  3. 마이그레이션이 완료되면 백업 유형이 변경 Continuous 되고 선택한 계층이 포함됩니다. 계층이 제공되지 않은 경우 계층은 Continuous30Days로 설정됩니다. 동일한 az cosmosdb show 명령을 다시 실행하여 상태를 확인합니다.

    {
      ...
      "backupPolicy": {
        "continuousModeProperties": {
          "tier": "Continuous7Days"
        },
        "migrationState": null,
        "type": "Continuous"
      },
      ...
    }
    

연속 모드 계층 변경

Azure PowerShell, Azure CLI 또는 Azure Portal 간에 Continuous30DaysContinous7Days 전환할 수 있습니다.

다음 Azure CLI 명령은 기존 계정을 Continous7Days로 전환하는 방법을 보여 줍니다.

az cosmosdb update \
    --resource-group "<resource-group-name>" \
    --name "<account-name>" \
    --backup-policy-type "Continuous" \
    --continuous-tier "Continuous7Days"

Azure CLI 및 Azure PowerShell을 사용하는 것과 유사한 방법으로 ARM 템플릿을 사용할 수도 있습니다.

참고

30일에서 7일 계층으로 전환하면 7일보다 오래된 데이터를 즉시 복원할 수 없게 됩니다. 7일에서 30일 계층으로 전환하는 경우 새 백업이 누적될 때까지 지난 7일의 데이터만 복원할 수 있습니다. Azure PowerShell 또는 Azure CLI를 사용하여 사용 가능한 가장 빠른 복원 시간을 확인할 수 있습니다. 계층 전환의 가격 변경은 즉시 적용됩니다.

Bicep을 사용하여 연속 백업으로 마이그레이션

Bicep 템플릿 및 Azure Resource Manager를 사용하여 연속 백업 모드로 마이그레이션하려면 템플릿의 backupPolicy 섹션을 찾아 속성을 업데이트 type 합니다.

  1. 백업 정책이 있는 다음 예제 템플릿을 Periodic 고려합니다.

    resource azureCosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2025-04-15' = {
      name: '<account-name>'
      properties: {
        // Other required properties omitted for brevity
        backupPolicy: {
          type: 'Periodic'
          periodicModeProperties: {
            backupIntervalInMinutes: 240 // 4 hours
            backupRetentionIntervalInHours: 48 // 2 days
          }
        }
      }
    }
    
  2. 7일 계층에서 백업 모드를 사용하도록 Continuous 예제 템플릿을 업데이트합니다.

    resource azureCosmosDBAccount 'Microsoft.DocumentDB/databaseAccounts@2025-04-15' = {
      name: '<account-name>'
      properties: {
        // Other required properties omitted for brevity
        backupPolicy: {
          type: 'Continuous'
          continuousModeProperties: {
            tier: 'Continuous7Days'
          }
        }
      }
    }
    
  3. Azure PowerShell 또는 CLI를 사용하여 템플릿을 배포합니다. 다음 예제에서는 CLI 명령을 사용하여 템플릿을 배포하는 방법을 보여줍니다.

    az deployment group create \
        --resource-group "<resource-group-name>" \
        --template-file "<template-file-path>"