Partilhar via


Gerenciar backups de Arquivos do Azure com a CLI do Azure

Este artigo descreve como gerir e monitorizar os Azure Files com cópia de segurança (cópias de segurança instantâneas e arquivadas em cofre) usando a CLI do Azure. A CLI do Azure fornece uma experiência de linha de comando para gerenciar recursos do Azure. É uma ótima ferramenta para criar automação personalizada para usar recursos do Azure. Você também pode gerenciar backups do Azure Files usando o portal do Azure, Azure PowerShell, API REST.

Pré-requisitos

Este artigo pressupõe que você já tenha um backup dos Arquivos do Azure pelo Backup do Azure. Se você não tiver um, consulte Fazer backup de arquivos do Azure com a CLI para configurar o backup para seus compartilhamentos de arquivos. Para este artigo, você usa os seguintes recursos:

  • Grupo de recursos: azurefiles
  • RecoveryServicesVault: azurefilesvault
  • Conta de armazenamento: afsaccount
  • Partilha de ficheiros: azurefiles
  • Este tutorial requer a versão 2.0.18 ou posterior da CLI do Azure. Se estiver usando o Azure Cloud Shell, a versão mais recente já está instalada.

Monitorizar trabalhos

Quando se acionam operações de backup ou restauração, o serviço de backup cria um trabalho para monitorização. Para monitorar trabalhos concluídos ou em execução no momento, use o cmdlet az backup job list . Com a CLI, você também pode suspender um trabalho em execução no momento ou aguardar até que um trabalho seja concluído.

O exemplo a seguir exibe o status das tarefas de backup para o cofre de Serviços de Recuperação azurefilesvault:

az backup job list --resource-group azurefiles --vault-name azurefilesvault
[
  {
    "eTag": null,
    "id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupJobs/d477dfb6-b292-4f24-bb43-6b14e9d06ab5",
    "location": null,
    "name": "d477dfb6-b292-4f24-bb43-6b14e9d06ab5",
    "properties": {
      "actionsInfo": null,
      "activityId": "3cef43ed-0af4-43e2-b9cb-1322c496ccb4",
      "backupManagementType": "AzureStorage",
      "duration": "0:00:29.718011",
      "endTime": "2020-01-13T08:05:29.180606+00:00",
      "entityFriendlyName": "azurefiles",
      "errorDetails": null,
      "extendedInfo": null,
      "jobType": "AzureStorageJob",
      "operation": "Backup",
      "startTime": "2020-01-13T08:04:59.462595+00:00",
      "status": "Completed",
      "storageAccountName": "afsaccount",
      "storageAccountVersion": "MicrosoftStorage"
    },
    "resourceGroup": "azurefiles",
    "tags": null,
    "type": "Microsoft.RecoveryServices/vaults/backupJobs"
  },
  {
    "eTag": null,
    "id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupJobs/1b9399bf-c23c-4caa-933a-5fc2bf884519",
    "location": null,
    "name": "1b9399bf-c23c-4caa-933a-5fc2bf884519",
    "properties": {
      "actionsInfo": null,
      "activityId": "2663449c-94f1-4735-aaf9-5bb991e7e00c",
      "backupManagementType": "AzureStorage",
      "duration": "0:00:28.145216",
      "endTime": "2020-01-13T08:05:27.519826+00:00",
      "entityFriendlyName": "azurefilesresource",
      "errorDetails": null,
      "extendedInfo": null,
      "jobType": "AzureStorageJob",
      "operation": "Backup",
      "startTime": "2020-01-13T08:04:59.374610+00:00",
      "status": "Completed",
      "storageAccountName": "afsaccount",
      "storageAccountVersion": "MicrosoftStorage"
    },
    "resourceGroup": "azurefiles",
    "tags": null,
    "type": "Microsoft.RecoveryServices/vaults/backupJobs"
  }
]

Criar uma política de backup

A política de Backup do Azure para Arquivos do Azure define como e quando os backups são criados, o período de retenção para pontos de recuperação e as regras para proteção e recuperação de dados.

Escolha uma camada de backup:

Você pode criar uma política de backup executando o comando az backup policy create com os seguintes parâmetros:

  • --backup-management-type – Armazenamento do Azure
  • --tipo-de-carga-de-trabalho - AzureFileShare
  • --name – Nome da política
  • --policy - arquivo JSON com detalhes apropriados para agendamento e retenção
  • --resource-group - Grupo de recursos do vault
  • --vault-name – Nome do cofre

Exemplo

az backup policy create --resource-group azurefiles --vault-name azurefilesvault --name schedule20 --backup-management-type AzureStorage --policy samplepolicy.json --workload-type AzureFileShare

Exemplo de JSON (samplepolicy.json)

{
  "eTag": null,
  "id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupPolicies/schedule20",
  "location": null,
  "name": "schedule20",
  "properties": {
    "backupManagementType": "AzureStorage",
    "protectedItemsCount": 0,
    "retentionPolicy": {
      "dailySchedule": {
        "retentionDuration": {
          "count": 30,
          "durationType": "Days"
        },
        "retentionTimes": [
          "2020-01-05T08:00:00+00:00"
        ]
      },
      "monthlySchedule": null,
      "retentionPolicyType": "LongTermRetentionPolicy",
      "weeklySchedule": null,
      "yearlySchedule": null
    },
    "schedulePolicy": {
      "schedulePolicyType": "SimpleSchedulePolicy",
      "scheduleRunDays": null,
      "scheduleRunFrequency": "Daily",
      "scheduleRunTimes": [
        "2020-01-05T08:00:00+00:00"
      ],
      "scheduleWeeklyFrequency": 0
    },
    "timeZone": "UTC",
    "workLoadType": “AzureFileShare”
  },
  "resourceGroup": "azurefiles",
  "tags": null,
  "type": "Microsoft.RecoveryServices/vaults/backupPolicies"
}

Exemplo para criar uma política de backup que configura vários backups por dia

Este exemplo de JSON é para os seguintes requisitos:

  • Horário: Faça backup a cada 4 horas a partir das 8h (UTC) durante as próximas 12 horas.
  • Retenção: Diária - cinco dias, Semanal - Todos os domingos durante 12 semanas, Mensal - Primeiro domingo de cada mês durante 60 meses, e Anual - Primeiro domingo de janeiro durante 10 anos.
{
    "properties":{
        "backupManagementType": "AzureStorage",
        "workloadType": "AzureFileShare",
        "schedulePolicy": {
            "schedulePolicyType": "SimpleSchedulePolicy",
            "scheduleRunFrequency": "Hourly",
            "hourlySchedule": {
                "interval": 4,
                "scheduleWindowStartTime": "2021-09-29T08:00:00.000Z",
                "scheduleWindowDuration": 12
            }
        },
        "timeZone": "UTC",
        "retentionPolicy": {
            "retentionPolicyType": "LongTermRetentionPolicy",
            "dailySchedule": {
                "retentionTimes": null,
                "retentionDuration": {
                    "count": 5,
                    "durationType": "Days"
                }
            },
            "weeklySchedule": {
                "daysOfTheWeek": [
                    "Sunday"
                ],
                "retentionTimes": null,
                "retentionDuration": {
                    "count": 12,
                    "durationType": "Weeks"
                }
            },
            "monthlySchedule": {
                "retentionScheduleFormatType": "Weekly",
                "retentionScheduleDaily": null,
                "retentionScheduleWeekly": {
                    "daysOfTheWeek": [
                        "Sunday"
                    ],
                    "weeksOfTheMonth": [
                        "First"
                    ]
                },
                "retentionTimes": null,
                "retentionDuration": {
                    "count": 60,
                    "durationType": "Months"
                }
            },
            "yearlySchedule": {
                "retentionScheduleFormatType": "Weekly",
                "monthsOfYear": [
                    "January"
                ],
                "retentionScheduleDaily": null,
                "retentionScheduleWeekly": {
                    "daysOfTheWeek": [
                        "Sunday"
                    ],
                    "weeksOfTheMonth": [
                        "First"
                    ]
                },
                "retentionTimes": null,
                "retentionDuration": {
                    "count": 10,
                    "durationType": "Years"
                }
            }
        }
    }
}

Depois que a política é criada com êxito, a saída do comando exibe o JSON de política que você passou como parâmetro durante a execução do comando.

Você pode modificar a seção de agendamento e retenção da política conforme necessário.

Exemplo

Se você quiser manter o backup do primeiro domingo de cada mês por dois meses, atualize a programação mensal de acordo com o exemplo a seguir:

"monthlySchedule": {
        "retentionDuration": {
          "count": 2,
          "durationType": "Months"
        },
        "retentionScheduleDaily": null,
        "retentionScheduleFormatType": "Weekly",
        "retentionScheduleWeekly": {
          "daysOfTheWeek": [
            "Sunday"
          ],
          "weeksOfTheMonth": [
            "First"
          ]
        },
        "retentionTimes": [
          "2020-01-05T08:00:00+00:00"
        ]
      }

Modificar política

Você pode modificar uma política de backup para alterar a frequência de backup ou o intervalo de retenção usando az backup item set-policy.

Para alterar a política, defina os seguintes parâmetros:

  • --container-name: O nome da conta de armazenamento que hospeda o Compartilhamento de Arquivos. Para recuperar o nome ou o nome amigável do seu contentor, use o comando az backup container list.
  • --name: O nome do Compartilhamento de Arquivos para o qual você deseja alterar a política. Para recuperar o nome ou o nome amigável do seu item de backup, use o comando az backup item list.
  • --policy-name: o nome da política de backup que você deseja definir para seu compartilhamento de arquivos. Você pode usar az backup policy list para visualizar todas as políticas do seu cofre.

O exemplo a seguir define a política de backup schedule2 para a azurefiles partilha de ficheiros existente na conta de armazenamento afsaccount.

az backup item set-policy --policy-name schedule2 --name azurefiles --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --name "AzureFileShare;azurefiles" --backup-management-type azurestorage --out table

Você também pode executar o comando anterior usando os nomes amigáveis para o contêiner e o item fornecendo mais dois parâmetros a seguir:

  • --tipo-de-gestão-de-backup: azurestorage
  • --tipo de carga de trabalho: azurefileshare
az backup item set-policy --policy-name schedule2 --name azurefiles --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --name azurefiles --backup-management-type azurestorage --out table
Name                                  ResourceGroup
------------------------------------  ---------------
fec6f004-0e35-407f-9928-10a163f123e5  azurefiles

O atributo Name na saída corresponde ao nome do trabalho criado pelo serviço de backup para a operação de política de alteração. Para controlar o estado da tarefa, use o cmdlet az backup job show.

Parar a proteção numa Partilha de Ficheiros

Há duas maneiras de parar de proteger os Arquivos do Azure:

  • Pare todos os trabalhos de backup futuros e exclua todos os pontos de recuperação.
  • Pare todos os trabalhos de backup futuros, mas deixe os pontos de recuperação.

Pode haver um custo associado a deixar os pontos de recuperação no armazenamento, porque os instantâneos subjacentes criados pelo Backup do Azure são mantidos. A vantagem de deixar os pontos de recuperação é a opção de restaurar o Compartilhamento de Arquivos mais tarde, se desejar. Para obter informações sobre o custo de sair dos pontos de recuperação, consulte os detalhes de preços. Se optar por eliminar todos os pontos de recuperação, não poderá restaurar a Partilha de Ficheiros.

Para interromper a proteção para o compartilhamento de arquivos, defina os seguintes parâmetros:

  • --container-name: O nome da conta de armazenamento que hospeda o Compartilhamento de Arquivos. Para recuperar o nome ou o nome amigável do seu contentor, use o comando az backup container list.
  • --item-name: O nome do Compartilhamento de Arquivos para o qual você deseja interromper a proteção. Para recuperar o nome ou o nome amigável do seu item de backup, use o comando az backup item list.

Parar a proteção e manter pontos de recuperação

Para interromper a proteção enquanto retém dados, use o cmdlet az backup protection disable.

O exemplo a seguir interrompe a proteção para o azurefiles Compartilhamento de Arquivos, mas mantém todos os pontos de recuperação.

az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name “AzureFileShare;azurefiles” --out table

Você também pode executar o comando anterior usando o nome amigável para o contêiner e o item fornecendo mais dois parâmetros a seguir:

  • --tipo-de-gestão-de-backup: azurestorage
  • --tipo de carga de trabalho: azurefileshare
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --out table
Name                                  ResourceGroup
------------------------------------  ---------------
fec6f004-0e35-407f-9928-10a163f123e5  azurefiles

O atributo Name na saída corresponde ao nome do trabalho criado pelo serviço de backup para a sua operação de interrupção de proteção. Para controlar o estado da tarefa, use o cmdlet az backup job show.

Parar a proteção sem reter pontos de recuperação

Para interromper a proteção sem reter pontos de recuperação, use o cmdlet az backup protection disable com a opção delete-backup-data definida como true.

O exemplo a seguir interrompe a proteção para o azurefiles compartilhamento de arquivos sem reter pontos de recuperação.

az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --item-name “AzureFileShare;azurefiles” --delete-backup-data true --out table

Você também pode executar o comando anterior usando o nome amigável para o contêiner e o item fornecendo mais dois parâmetros a seguir:

  • --tipo-de-gestão-de-backup: azurestorage
  • --tipo de carga de trabalho: azurefileshare
az backup protection disable --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --delete-backup-data true --out table

Retomar a proteção numa Partilha de Ficheiros

Se você interrompeu a proteção para um Arquivo do Azure, mas manteve pontos de recuperação, poderá retomar a proteção mais tarde. Se você não retiver os pontos de recuperação, não poderá retomar a proteção.

Para retomar a proteção para o Compartilhamento de Arquivos, defina os seguintes parâmetros:

  • --container-name: O nome da conta de armazenamento que hospeda o Compartilhamento de Arquivos. Para recuperar o nome ou o nome amigável do seu contentor, use o comando az backup container list.
  • --item-name: O nome do Compartilhamento de Arquivos para o qual você deseja retomar a proteção. Para recuperar o nome ou o nome amigável do seu item de backup, use o comando az backup item list.
  • --policy-name: O nome da política de backup para a qual você deseja retomar a proteção para o Compartilhamento de Arquivos.

O exemplo a seguir usa o cmdlet az backup protection resume para retomar a proteção para o azurefiles Compartilhamento de Arquivos usando a política de backup schedule1 .

az backup protection resume --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount” --item-name “AzureFileShare;azurefiles” --policy-name schedule2 --out table

Você também pode executar o comando anterior usando o nome amigável para o contêiner e o item fornecendo mais dois parâmetros a seguir:

  • --tipo-de-gestão-de-backup: azurestorage
  • --tipo de carga de trabalho: azurefileshare
az backup protection resume --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --item-name azurefiles --workload-type azurefileshare --backup-management-type Azurestorage --policy-name schedule2 --out table
Name                                  ResourceGroup
------------------------------------  ---------------
75115ab0-43b0-4065-8698-55022a234b7f  azurefiles

O atributo Name na saída corresponde ao nome do trabalho criado pelo serviço de backup para sua operação de proteção de currículo. Para controlar o estado da tarefa, use o cmdlet az backup job show.

Anular o registo de uma conta de armazenamento

Se você quiser proteger seus Compartilhamentos de Arquivos em uma conta de armazenamento específica usando um cofre de Serviços de Recuperação diferente, primeiro interrompa a proteção para todos os Compartilhamentos de Arquivos nessa conta de armazenamento. Em seguida, anule o registo da conta no cofre dos Serviços de Recuperação actualmente usado para protecção.

Você precisa fornecer um nome de contêiner para cancelar o registro da conta de armazenamento. Para recuperar o nome ou o nome de exibição do seu contentor, use o comando az backup container list.

O exemplo a seguir desregista a conta de armazenamento afsaccount do azurefilesvault usando o cmdlet az backup container unregister.

az backup container unregister --vault-name azurefilesvault --resource-group azurefiles --container-name "StorageContainer;Storage;AzureFiles;afsaccount" --out table

Você também pode executar o cmdlet anterior usando o nome amigável para o contêiner fornecendo mais o seguinte parâmetro:

  • --tipo-de-gestão-de-backup: azurestorage
az backup container unregister --vault-name azurefilesvault --resource-group azurefiles --container-name afsaccount --backup-management-type azurestorage --out table

Próximos passos

Solucionar problemas de backup do Azure Files.