Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo descreve como usar o Azure PowerShell para fazer backup dos Arquivos do Azure por uma cofre dos Serviços de Recuperação do Backup do Azure.
Pré-requisitos
Antes de fazer backup dos Arquivos do Azure, verifique se os seguintes pré-requisitos são atendidos:
Saiba mais sobre o cofre dos Serviços de Recuperação.
Examine a referência dereferência do cmdlet AZ.Recoveryservices na biblioteca do Azure.
Examine a seguinte hierarquia de objeto do PowerShell para Serviços de recuperação:
Configurar o PowerShell
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Observação
Atualmente, o Azure PowerShel não suporta políticas de backup com agendamento por hora. Use o portal do Azure para aplicar esse recurso. Saiba mais
Configurar o PowerShell conforme a seguir:
Baixe a última versão do Azure PowerShell.
Observação
A versão mínima do PowerShell necessária para o backup dos Arquivos do Azure é Az.RecoveryServices 2.6.0. A versão mais recente ou pelo menos a versão mínima ajuda você a evitar problemas com scripts existentes. Instale a versão mínima usando o seguinte comando do PowerShell:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0
Encontre os cmdlets do PowerShell para o Backup do Azure usando este comando:
Get-Command *azrecoveryservices*
Examine os aliases e os cmdlets do Backup do Azure, do Azure Site Recovery e do cofre do Recovery Services. Aqui está um exemplo do que você pode ver. Esta não é a lista completa dos cmdlets.
Entre em sua conta do Azure usando Connect-AzAccount.
Na página da Web que aparece, você será solicitado a inserir as credenciais de sua conta.
Como alternativa, é possível incluir as credenciais de conta como um parâmetro no cmdlet Connect-AzAccount ao usar o parâmetro -Credential.
Se você for um parceiro do CSP (Provedor de Serviços de Nuvem) trabalhando em nome de um locatário, especifique o cliente como um locatário. Use a ID de locatário ou o nome de domínio primário do locatário. Um exemplo é Connect-AzAccount – Locatário "fabrikam.com" .
Associe a assinatura que deseja usar com a conta, porque uma conta pode ter várias assinaturas:
Select-AzSubscription -SubscriptionName $SubscriptionName
Se estiver usando um Backup do Azure pela primeira vez, use o cmdlet Register-AzResourceProvider para registrar o provedor dos Serviços de Recuperação do Azure com sua assinatura:
Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
Verifique se os provedores foram registrados com êxito:
Get-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
Na saída do comando, verifique se o RegistrationState se altera para Registrado. Se isso não ocorrer, execute novamente o cmdlet Register-AzResourceProvider.
Criar um cofre dos Serviços de Recuperação
O cofre dos Serviços de Recuperação é um recurso do Resource Manager e, portanto, deverá ser colocado em um grupo de recursos. É possível usar um grupo de recursos existente ou criar um grupo de recursos com o cmdlet New-AzResourceGroup. Ao criar um grupo de recursos, especifique o nome e o local.
Siga estas etapas para criar um cofre dos Serviços de Recuperação:
Crie um novo grupo de recursos usando o cmdlet New-AzResourceGroup , se você não tiver um existente. Neste exemplo, criaremos um grupo de recursos na região Oeste dos EUA:
New-AzResourceGroup -Name "test-rg" -Location "West US"
Use o cmdlet New-AzRecoveryServicesVault para criar o cofre. Especifique o mesmo local para o cofre usado para o grupo de recursos.
New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName "test-rg" -Location "West US"
Exibir os cofres em uma assinatura
Para exibir todos os cofres da assinatura, use Get-AzRecoveryServicesVault:
Get-AzRecoveryServicesVault
A saída deverá ser semelhante à seguinte. A saída fornece o grupo de recursos e o local associados.
Name : Contoso-vault
ID : /subscriptions/1234
Type : Microsoft.RecoveryServices/vaults
Location : WestUS
ResourceGroupName : Contoso-docs-rg
SubscriptionId : 1234-567f-8910-abc
Properties : Microsoft.Azure.Commands.RecoveryServices.ARSVaultProperties
Definir o contexto do cofre
Armazene o objeto do cofre em uma variável e defina o contexto do cofre.
Muitos cmdlets do Backup do Azure exigem o objeto de cofre dos Serviços de Recuperação como uma entrada, portanto, é conveniente armazenar o objeto de cofre em uma variável.
O contexto do cofre é o tipo de dados protegido no cofre. Defina-o usando set-AzRecoveryServicesVaultContext. Depois que o contexto estiver definido, ele se aplicará a todos os cmdlets subsequentes.
O exemplo a seguir define o contexto do cofre para testvault
:
Get-AzRecoveryServicesVault -Name "testvault" | Set-AzRecoveryServicesVaultContext
Buscar a ID do cofre
Planejamos substituir a configuração de contexto do cofre de acordo com as diretrizes do Azure PowerShell. Em vez disso, é possível armazenar ou buscar a ID do cofre e passá-la para comandos relevantes. Portanto, se não tiver definido o contexto do cofre ou quiser especificar o comando a ser executado para um determinado cofre, passe a ID do cofre como -vaultID
para todo comando relevante, da seguinte maneira:
$vaultID = Get-AzRecoveryServicesVault -ResourceGroupName "Contoso-docs-rg" -Name "testvault" | select -ExpandProperty ID
New-AzRecoveryServicesBackupProtectionPolicy -Name "NewAFSPolicy" -WorkloadType "AzureFiles" -RetentionPolicy $retPol -SchedulePolicy $schPol -VaultID $vaultID
Configurar uma política de backup
Uma política de backup especifica o agendamento de backups e por quanto tempo os pontos de recuperação de backup devem ser mantidos.
Uma política de backup está associada a pelo menos uma política de retenção. Uma política de retenção define por quanto tempo um ponto de recuperação é mantido. É possível configurar backups com retenção diária, semanal, mensal ou anual. Com a política de vários backups, você também pode configurar a retenção de backups por hora.
Importante
Os seguintes cmdlets são usados para as políticas de Backup:
- Visualize a política de retenção de backup padrão usando
Get-AzRecoveryServicesBackupRetentionPolicyObject
. - Visualize a política de agendamento de backup padrão usando
Get-AzRecoveryServicesBackupSchedulePolicyObject
. - Crie uma nova política de backup usando
New-AzRecoveryServicesBackupProtectionPolicy
. Forneça os objetos de política de agendamento e retenção como entradas.
Escolher um nível de backup:
Para criar uma política de backup que configure vários backups por dia para o backup de instantâneo dos Arquivos do Azure, execute os seguintes cmdlets:
Buscar o objeto de política de agendamento.
$schPol=Get-AzRecoveryServicesBackupSchedulePolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly $schPol
Exemplo de saída:
ScheduleRunFrequency : Hourly ScheduleRunDays : ScheduleRunTimes : ScheduleInterval : 8 ScheduleWindowStartTime : 12/22/2021 8:00:00 AM ScheduleWindowDuration : 16 ScheduleRunTimeZone : India Standard Time
Defina os diferentes parâmetros da agenda conforme necessário.
$schpol.ScheduleInterval=4 $schpol.ScheduleWindowDuration=12
A configuração anterior ajuda a agendar 4 backups por dia em uma janela das 8h às 20h (8h+ 12h). Você também pode definir o fuso horário conforme mencionado no cmdlet a seguir:
$timeZone= $timeZone=Get-TimeZone -ListAvailable |Where-Object{$_.Id-match "Russia Time Zone 11"} $schPol.ScheduleRunTimeZone=$timeZone.Id
Para criar uma política com programação diária, execute o seguinte cmdlet:
$UtcTime = Get-Date -Date "2019-03-20 01:30:00Z" $UtcTime = $UtcTime.ToUniversalTime() $schpol.ScheduleRunTimes[0] = $UtcTime
Busque o objeto de política de retenção usando o seguinte cmdlet:
$retPol=Get-AzRecoveryServicesBackupRetentionPolicyObject -WorkloadType AzureFiles -BackupManagementType AzureStorage -ScheduleRunFrequency Hourly
Defina os valores de retenção conforme necessário.
$retPol.DailySchedule.DurationCountInDays=15
Crie uma nova política de backup usando New-AzRecoveryServicesBackupProtectionPolicy.
É possível passar o agendamento e os objetos de política de retenção definidos anteriormente como entradas.
New-AzRecoveryServicesBackupProtectionPolicy -Name "FilesPolicytesting" -WorkloadType AzureFiles -RetentionPolicy $retpol -SchedulePolicy $schpol
A saída exibe a configuração da política:
Name WorkloadType BackupManagementType ScheduleFrequency BackupTime WindowStartTime Interval WindowDuration TimeZone (UTC) (Hours) ---- ------------ -------------------- ----------------- ------------ --------------- -------- -------------- -------- FilesPolicy testing AzureFiles AzureStorage Hourly 12/22/2021 8:00:00 AM 4 12 Russia Time Zone 11
Habilitar backup
Depois de definir a política de backup, você pode habilitar a proteção para os Arquivos do Azure usando a política.
Recuperar uma política de backup
Busque o objeto de política relevante com Get-AzRecoveryServicesBackupProtectionPolicy. Use este cmdlet para obter uma política específica ou para exibir as políticas associadas a um tipo de carga de trabalho ou para obter a política específica.
Recuperar uma política para um tipo de carga de trabalho
O exemplo a seguir obtém as políticas para o tipo de carga de trabalho AzureFiles:
Get-AzRecoveryServicesBackupProtectionPolicy -WorkloadType "AzureFiles"
Exemplo de saída:
Name WorkloadType BackupManagementType BackupTime DaysOfWeek
---- ------------ -------------------- ---------- ----------
dailyafs AzureFiles AzureStorage 1/10/2018 12:30:00 AM
Observação
O fuso horário do campo BackupTime no PowerShell é o UTC. Quando a hora de backup é mostrada no Portal do Azure, o horário é ajustado para seu fuso horário local.
Recuperar uma política específica
A política a seguir recupera a política de backup chamada dailyafs:
$afsPol = Get-AzRecoveryServicesBackupProtectionPolicy -Name "dailyafs"
Habilitar a proteção e aplicar a política
Habilite a proteção usando Enable-AzRecoveryServicesBackupProtection. Depois que a política estiver associada ao cofre, os backups serão disparados de acordo com o agendamento da política.
O exemplo a seguir habilita a proteção para os Arquivos do Azure testAzureFS na conta de armazenamento testStorageAcct, com a política dailyafs:
Enable-AzRecoveryServicesBackupProtection -StorageAccountName "testStorageAcct" -Name "testAzureFS" -Policy $afsPol
O comando aguarda até que o trabalho configure-protection seja concluído e forneça uma saída semelhante ao exemplo a seguir:
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS ConfigureBackup Completed 11/12/2018 2:15:26 PM 11/12/2018 2:16:11 PM ec7d4f1d-40bd-46a4-9edb-3193c41f6bf6
Para obter mais informações sobre como obter uma lista de Compartilhamentos de Arquivos para uma conta de armazenamento, consulte este artigo.
Aviso importante: identificação do item de backup
Esta seção descreve uma alteração importante nos backups dos Arquivos do Azure em preparação para disponibilidade geral.
Quando você habilita um backup para Arquivos do Azure, o usuário obtém um nome de compartilhamento de arquivo como o nome da entidade e um item de backup é criado. O nome do item de backup é um identificador exclusivo que o Serviço de Backup do Azure cria. Normalmente, o identificador é um nome amigável para o usuário. Para lidar com cenários de exclusão reversível, em que um Compartilhamento de Arquivos é excluído e um novo com o mesmo nome é criado, os Arquivos do Azure agora usam uma ID exclusiva.
Para saber a ID exclusiva de cada item, execute o comando Get-AzRecoveryServicesBackupItem com os filtros relevantes para backupManagementType e workloadtype para obter todos os itens relevantes. Em seguida, observe o campo nome no objeto/resposta do PowerShell retornado.
É recomendável que liste itens e, em seguida, recupere seu nome exclusivo do campo nome na resposta. Use esse valor para filtrar os itens com o parâmetro Name. Caso contrário, use o parâmetro FriendlyName para recuperar o item com sua ID.
Importante
Verifique se o PowerShell foi atualizado para a versão mínima (Az.RecoveryServices 2.6.0) para backups de Arquivos do Azure. Com essa versão, o filtro FriendlyName está disponível para o comando Get-AzRecoveryServicesBackupItem.
Passe o nome do Azure Files para o parâmetro FriendlyName. Se você passar o nome do Compartilhamento de Arquivos para o parâmetro Name , essa versão lançará um aviso para passar o nome para o parâmetro FriendlyName .
Não instalar a versão mínima pode resultar em uma falha dos scripts existentes. Instale a versão mínima do PowerShell usando o seguinte comando:
Install-module -Name Az.RecoveryServices -RequiredVersion 2.6.0
Disparar um backup sob demanda
Para executar um backup sob demanda para um Arquivo do Azure protegido, use o cmdlet Backup-AzRecoveryServicesBackupItem :
- Recupere a conta de armazenamento do contêiner no cofre que contém os dados de backup usando Get-AzRecoveryServicesBackupContainer.
- Inicie um trabalho de backup, obtenha informações sobre os Arquivos do Azure usando Get-AzRecoveryServicesBackupItem.
- Execute um backup sob demanda com Backup-AzRecoveryServicesBackupItem.
Execute um trabalho de backup sob demanda como a seguir:
$afsContainer = Get-AzRecoveryServicesBackupContainer -FriendlyName "testStorageAcct" -ContainerType AzureStorage
$afsBkpItem = Get-AzRecoveryServicesBackupItem -Container $afsContainer -WorkloadType "AzureFiles" -FriendlyName "testAzureFS"
$job = Backup-AzRecoveryServicesBackupItem -Item $afsBkpItem
O comando retorna um trabalho com uma ID a ser rastreada, como no exemplo a seguir:
WorkloadName Operation Status StartTime EndTime JobID
------------ --------- ------ --------- ------- -----
testAzureFS Backup Completed 11/12/2018 2:42:07 PM 11/12/2018 2:42:11 PM 8bdfe3ab-9bf7-4be6-83d6-37ff1ca13ab6
Snapshots do Azure Files são usados durante a execução dos backups. Normalmente, o trabalho é concluído no momento em que o comando retorna essa saída.
Próximas etapas
- Restaurar arquivos do Azure usando o Azure PowerShell.
- Restaurar arquivos do Azure usando o portal do Azure, a CLI do Azure, a API REST.
- Gerenciar backups dos Arquivos do Azure usando o portal do Azure, o Azure PowerShell, a CLI do Azure, a API REST.
- Script de exemplo no GitHub para usar um runbook do Azure Automation para agendar backups.