Compartilhar via


Implantar e gerenciar backup em servidores do DPM (Azure for Data Protection Manager) usando o PowerShell

Este artigo descreve como usar o PowerShell para configurar o Backup do Azure em um servidor DPM e gerenciar o backup e a recuperação.

Configurar o ambiente do PowerShell para DPM

Antes de usar o PowerShell para gerenciar backups do Data Protection Manager para o Azure, você precisa ter o ambiente certo no PowerShell. No início da sessão do PowerShell, verifique se você executa o seguinte comando para importar os módulos certos e permitir que você referencie corretamente os cmdlets do DPM:

& "C:\Program Files\Microsoft System Center 2012 R2\DPM\DPM\bin\DpmCliInitScript.ps1"
Welcome to the DPM Management Shell!

Full list of cmdlets: Get-Command
Only DPM cmdlets: Get-DPMCommand
Get general help: help
Get help for a cmdlet: help <cmdlet-name> or <cmdlet-name> -?
Get definition of a cmdlet: Get-Command <cmdlet-name> -Syntax
Sample DPM scripts: Get-DPMSampleScript

Instalação e registro do DPM no Backup do Azure usando o PowerShell

Observação

Recomendamos que você use o módulo do 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.

Para começar, baixe o Azure PowerShell mais recente.

As seguintes tarefas de configuração e registro podem ser automatizadas com o PowerShell:

  • Criar um cofre dos Serviços de Recuperação
  • Instalando o agente de Backup do Azure
  • Registrando-se no serviço de Backup do Azure
  • Configurações de rede
  • Configurações de criptografia

Criar um cofre dos Serviços de Recuperação

As etapas a seguir orientarão você durante a criação de um cofre dos Serviços de Recuperação. Um cofre dos Serviços de Recuperação é diferente de um cofre de Backup.

  1. Se você estiver usando o Backup do Azure pela primeira vez, deverá usar o cmdlet Register-AzResourceProvider para registrar o provedor do Serviço de Recuperação do Azure com sua assinatura.

    Register-AzResourceProvider -ProviderNamespace "Microsoft.RecoveryServices"
    
  2. O cofre dos Serviços de Recuperação é um recurso do ARM e, portanto, você precisará colocá-lo em um Grupo de Recursos. Você pode usar um grupo de recursos existente ou criar um novo. Ao criar um novo grupo de recursos, especifique o nome e o local do grupo de recursos.

    New-AzResourceGroup –Name "test-rg" –Location "West US"
    
  3. Utilize o cmdlet New-AzRecoveryServicesVault para criar um novo cofre. Lembre-se de especificar o mesmo local para o cofre usado para o grupo de recursos.

    New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName " test-rg" -Location "West US"
    
  4. Especifique o tipo de redundância de armazenamento a ser usado. Você pode usar O LRS (armazenamento com redundância local),GRS (armazenamento com redundância geográfica) ou ZRS (armazenamento com redundância de zona). O exemplo a seguir mostra a opção BackupStorageRedundancy para testVault definida como GeoRedundant.

    Dica

    Muitos cmdlets do Backup do Azure exigem o objeto do cofre dos Serviços de Recuperação como entrada. Por esse motivo, é conveniente armazenar o objeto de backup do cofre dos Serviços de Recuperação em uma variável.

    $vault1 = Get-AzRecoveryServicesVault –Name "testVault"
    Set-AzRecoveryServicesBackupProperties  -vault $vault1 -BackupStorageRedundancy GeoRedundant
    

Exibir os cofres em uma assinatura

Use Get-AzRecoveryServicesVault para ver a lista de todos os cofres da assinatura atual. Você pode usar esse comando para verificar se um novo cofre foi criado ou para ver quais cofres estão disponíveis na assinatura.

Execute o comando Get-AzRecoveryServicesVault e todos os cofres na assinatura serão listados.

Get-AzRecoveryServicesVault
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

Instalando o agente de Backup do Azure em um servidor DPM

Antes de instalar o agente de Backup do Azure, você precisa ter o instalador baixado e presente no Windows Server. Você pode obter a última versão do instalador no Centro de Download da Microsoft ou na página Painel do cofre dos Serviços de Recuperação. Salve o instalador em um local facilmente acessível, como C:\Downloads\*.

Para instalar o agente, execute o seguinte comando em um console do PowerShell com privilégios elevados no servidor DPM:

MARSAgentInstaller.exe /q

Isso instala o agente com todas as opções padrão. A instalação leva alguns minutos em segundo plano. Se você não especificar a opção /nu , a janela do Windows Update será aberta no final da instalação para verificar se há atualizações.

O agente aparece na lista de programas instalados. Para ver a lista de programas instalados, acesseProgramas e Recursos do >> de Controle.

Agente instalado

Opções de instalação

Para ver todas as opções disponíveis por meio da linha de comando, use o seguinte comando:

MARSAgentInstaller.exe /?

As opções disponíveis incluem:

Opção Detalhes Padrão
/q Instalação silenciosa -
/p:"location" Caminho para a pasta de instalação do agente de Backup do Azure. C:\Arquivos de Programas\Microsoft Azure Recovery Services Agent
/s:"location" Caminho para a pasta de cache do agente de Backup do Azure. C:\Arquivos de Programas\Agente dos Serviços de Recuperação do Microsoft Azure\Scratch
/m Inscrever-se no Microsoft Update -
/nu Não verificar se há atualizações após a conclusão da instalação -
/d Desinstala o Agente dos Serviços de Recuperação do Microsoft Azure -
/ph Endereço do host do proxy -
/po Número da porta do host do proxy -
/pu Nome de Usuário do Host proxy -
/pw Senha de proxy -

Registrar o DPM em um cofre dos Serviços de Recuperação

Depois de criar o cofre dos Serviços de Recuperação, baixe o agente mais recente e as credenciais do cofre e armazene-o em um local conveniente, como C:\Downloads.

$credspath = "C:\downloads"
$credsfilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $vault1 -Path  $credspath
$credsfilename
C:\downloads\testvault\_Sun Apr 10 2016.VaultCredentials

No servidor DPM, execute o cmdlet Start-OBRegistration para registrar o computador no cofre.

$cred = $credspath + $credsfilename
Start-OBRegistration-VaultCredentials $cred -Confirm:$false
CertThumbprint      :7a2ef2caa2e74b6ed1222a5e89288ddad438df2
SubscriptionID      : aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e
ServiceResourceName: testvault
Region              :West US
Machine registration succeeded.

Configurações iniciais

Depois que o Servidor de DPM estiver registrado no cofre dos Serviços de Recuperação, ele será iniciado com as configurações de assinatura padrão. Essas configurações de assinatura incluem Rede, Criptografia e a área de Preparo. Para alterar as configurações de assinatura, primeiro você precisa obter um identificador sobre as configurações existentes (padrão) usando o cmdlet Get-DPMCloudSubscriptionSetting :

$setting = Get-DPMCloudSubscriptionSetting -DPMServerName "TestingServer"

Todas as modificações são feitas neste objeto $setting do PowerShell local e, em seguida, o objeto completo é confirmado para o DPM e o Backup do Azure para salvá-las usando o cmdlet Set-DPMCloudSubscriptionSetting . Você precisa usar o –Commit sinalizador para garantir que as alterações sejam mantidas. As configurações não serão aplicadas e usadas pelo Backup do Azure, a menos que confirmadas.

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -Commit

Configurações de rede do DPM para o Backup do Azure

Se a conectividade do computador DPM com o serviço de Backup do Azure na Internet for por meio de um servidor proxy, as configurações do servidor proxy deverão ser fornecidas para backups bem-sucedidos. Isso é feito usando os parâmetros -ProxyServer, -ProxyPort, -ProxyUsername e ProxyPassword com o cmdlet Set-DPMCloudSubscriptionSetting. Neste exemplo, não há nenhum servidor proxy, portanto, estamos explicitamente limpando qualquer informação relacionada a proxy.

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -NoProxy

O uso de largura de banda também pode ser controlado com opções de -WorkHourBandwidth e -NonWorkHourBandwidth para um determinado conjunto de dias da semana. Neste exemplo, não definimos nenhuma limitação.

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -NoThrottle

Configurar a Área de Preparação do DPM para o Backup do Azure

O agente de Backup do Azure em execução no servidor DPM precisa de armazenamento temporário para dados restaurados da nuvem (área de preparo local). Configure a área de preparo usando o cmdlet Set-DPMCloudSubscriptionSetting e o parâmetro -StagingAreaPath.

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -StagingAreaPath "C:\StagingArea"

No exemplo acima, a área de preparo será definida como C:\StagingArea no objeto $settingdo PowerShell. Verifique se a pasta especificada já existe ou se a confirmação final das configurações de assinatura falhará.

Configurações de criptografia

Os dados de backup enviados ao Backup do Azure são criptografados para proteger a confidencialidade dos dados. A senha de criptografia é a "senha" para descriptografar os dados no momento da restauração. É importante manter essas informações seguras quando elas estiverem definidas.

No exemplo a seguir, o primeiro comando converte a cadeia passphrase123456789 de caracteres em uma cadeia de caracteres segura e atribui a cadeia de caracteres segura à variável chamada $Passphrase. O segundo comando define a cadeia de $Passphrase caracteres segura como a senha para criptografar backups.

$Passphrase = ConvertTo-SecureString -string "passphrase123456789" -AsPlainText -Force

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -EncryptionPassphrase $Passphrase

Importante

Mantenha as informações de frase secreta seguras quando elas estiverem definidas. Você não poderá restaurar dados do Azure sem essa frase secreta.

Neste ponto, você deve ter feito todas as alterações necessárias no $setting objeto. Lembre-se de confirmar as alterações.

Set-DPMCloudSubscriptionSetting -DPMServerName "TestingServer" -SubscriptionSetting $setting -Commit

Proteger dados para o Backup do Azure

Nesta seção, você adicionará um servidor de produção ao DPM e, em seguida, protegerá os dados ao armazenamento local do DPM e, em seguida, ao Backup do Azure. Nos exemplos, demonstraremos como fazer backup de arquivos e pastas. A lógica pode ser facilmente estendida para fazer backup de qualquer fonte de dados com suporte do DPM. Todos os backups do DPM são regidos por um PG (Grupo de Proteção) com quatro partes:

  1. Os membros do grupo são uma lista de todos os objetos protegíveis (também conhecidos como Fontes de Dados no DPM) que você deseja proteger no mesmo grupo de proteção. Por exemplo, talvez você queira proteger as VMs de produção em um grupo de proteção e bancos de dados do SQL Server em outro grupo de proteção, pois elas podem ter requisitos de backup diferentes. Antes de fazer backup de qualquer fonte de dados em um servidor de produção, você precisa verificar se o Agente do DPM está instalado no servidor e é gerenciado pelo DPM. Siga as etapas para instalar o Agente do DPM e vinculá-lo ao servidor DPM apropriado.
  2. O método de proteção de dados especifica os locais de backup de destino – fita, disco e nuvem. Em nosso exemplo, protegeremos os dados para o disco local e para a nuvem.
  3. Um agendamento de backup que especifica quando os backups precisam ser feitos e com que frequência os dados devem ser sincronizados entre o servidor DPM e o servidor de produção.
  4. Um agendamento de retenção que especifica por quanto tempo manter os pontos de recuperação no Azure.

Criar um grupo de proteção

Comece criando um novo Grupo de Proteção usando o cmdlet New-DPMProtectionGroup .

$PG = New-DPMProtectionGroup -DPMServerName " TestingServer " -Name "ProtectGroup01"

O cmdlet acima criará um Grupo de Proteção chamado ProtectGroup01. Um grupo de proteção existente também pode ser modificado posteriormente para adicionar backup à nuvem do Azure. No entanto, para fazer alterações no Grupo de Proteção - novo ou existente - precisamos obter um identificador em um objeto modificável usando o cmdlet Get-DPMModifiableProtectionGroup .

$MPG = Get-ModifiableProtectionGroup $PG

Adicionar membros do grupo ao Grupo de Proteção

Cada agente do DPM conhece a lista de fontes de dados no servidor em que está instalado. Para adicionar uma fonte de dados ao Grupo de Proteção, o Agente do DPM precisa primeiro enviar uma lista das fontes de dados de volta para o servidor DPM. Uma ou mais fontes de dados são selecionadas e adicionadas ao Grupo de Proteção. As etapas do PowerShell necessárias para isso são:

  1. Busque uma lista de todos os servidores gerenciados pelo DPM por meio do Agente do DPM.
  2. Escolha um servidor específico.
  3. Busque uma lista de todas as fontes de dados no servidor.
  4. Escolha uma ou mais fontes de dados e adicione-as ao Grupo de Proteção

A lista de servidores nos quais o Agente do DPM está instalado e está sendo gerenciado pelo servidor DPM é adquirida com o cmdlet Get-DPMProductionServer . Neste exemplo, filtraremos e configuraremos apenas o PowerShell com o nome productionserver01 para backup.

$server = Get-ProductionServer -DPMServerName "TestingServer" | Where-Object {($_.servername) –contains "productionserver01"}

Agora, recupere a lista de fontes de dados em $server usando o cmdlet Get-DPMDatasource. Neste exemplo, estamos filtrando o volume D:\ que queremos configurar para backup. Essa fonte de dados é adicionada ao Grupo de Proteção usando o cmdlet Add-DPMChildDatasource . Lembre-se de usar o objeto de grupo de proteção $MPG para fazer as adições.

$DS = Get-Datasource -ProductionServer $server -Inquire | Where-Object { $_.Name -contains "D:\" }

Add-DPMChildDatasource -ProtectionGroup $MPG -ChildDatasource $DS

Repita essa etapa quantas vezes forem necessárias até que você tenha adicionado todas as fontes de dados escolhidas ao grupo de proteção. Você também pode começar com apenas uma fonte de dados e concluir o fluxo de trabalho para criar o Grupo de Proteção e, posteriormente, adicionar mais fontes de dados ao Grupo de Proteção.

Selecione o método de proteção de dados

Depois que as fontes de dados tiverem sido adicionadas ao Grupo de Proteção, a próxima etapa é especificar o método de proteção usando o cmdlet Set-DPMProtectionType . Neste exemplo, o Grupo de Proteção é configurado para o backup local de disco e de nuvem. Você também precisa especificar a origem de dados que deseja proteger em nuvem usando o cmdlet Add-DPMChildDatasource com a opção -Online.

Set-DPMProtectionType -ProtectionGroup $MPG -ShortTerm Disk –LongTerm Online
Add-DPMChildDatasource -ProtectionGroup $MPG -ChildDatasource $DS –Online

Definir o intervalo de retenção

Defina a retenção para os pontos de backup usando o cmdlet Set-DPMPolicyObjective . Embora possa parecer estranho definir a retenção antes que o agendamento de backup seja definido, usar o Set-DPMPolicyObjective cmdlet define automaticamente um agendamento de backup padrão que pode ser modificado. É sempre possível definir o agendamento de backup primeiro e a política de retenção depois.

No exemplo abaixo, o cmdlet define os parâmetros de retenção para backups de disco. Isso manterá backups por 10 dias e sincronizará dados a cada 6 horas entre o servidor de produção e o servidor DPM. O SynchronizationFrequencyMinutes não define a frequência com que um ponto de backup é criado, mas com que frequência os dados são copiados para o servidor DPM. Essa configuração impede que os backups se tornem muito grandes.

Set-DPMPolicyObjective –ProtectionGroup $MPG -RetentionRangeInDays 10 -SynchronizationFrequencyMinutes 360

Para backups que vão para o Azure (DPM refere-se a eles como backups Online), os intervalos de retenção podem ser configurados para retenção de longo prazo usando um esquema Avô-Pai-Filho (GFS). Ou seja, você pode definir uma política de retenção combinada envolvendo políticas de retenção diária, semanal, mensal e anual. Neste exemplo, criamos uma matriz que representa o complexo esquema de retenção desejado e configuramos o intervalo de retenção usando o cmdlet Set-DPMPolicyObjective .

$RRlist = @()
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 180, Days)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 104, Weeks)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 60, Month)
$RRList += (New-Object -TypeName Microsoft.Internal.EnterpriseStorage.Dls.UI.ObjectModel.OMCommon.RetentionRange -ArgumentList 10, Years)
Set-DPMPolicyObjective –ProtectionGroup $MPG -OnlineRetentionRangeList $RRlist

Definir o agendamento de backup

O DPM define automaticamente um agendamento de backup padrão se você especificar o objetivo de proteção usando o Set-DPMPolicyObjective cmdlet. Para alterar os agendamentos padrão, use o cmdlet Get-DPMPolicySchedule seguido pelo cmdlet Set-DPMPolicySchedule .

$onlineSch = Get-DPMPolicySchedule -ProtectionGroup $mpg -LongTerm Online
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[0] -TimesOfDay 02:00
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[1] -TimesOfDay 02:00 -DaysOfWeek Sa,Su –Interval 1
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[2] -TimesOfDay 02:00 -RelativeIntervals First,Third –DaysOfWeek Sa
Set-DPMPolicySchedule -ProtectionGroup $MPG -Schedule $onlineSch[3] -TimesOfDay 02:00 -DaysOfMonth 2,5,8,9 -Months Jan,Jul
Set-DPMProtectionGroup -ProtectionGroup $MPG

No exemplo acima, $onlineSch há uma matriz com quatro elementos que contém o agendamento de proteção online existente para o Grupo de Proteção no esquema GFS:

  1. $onlineSch[0] contém a agenda diária
  2. $onlineSch[1] contém o agendamento semanal
  3. $onlineSch[2] contém a agenda mensal
  4. $onlineSch[3] contém a agenda anual

Portanto, se você precisar modificar o agendamento semanal, será necessário consultar o $onlineSch[1].

Backup inicial

Quando você faz backup de uma fonte de dados pela primeira vez, o DPM precisa criar uma réplica inicial que crie uma cópia completa da fonte de dados para ser protegida no volume de réplica do DPM. Essa atividade pode ser agendada para um horário específico ou pode ser disparada manualmente, usando o cmdlet Set-DPMReplicaCreationMethod com o parâmetro -NOW.

Set-DPMReplicaCreationMethod -ProtectionGroup $MPG -NOW

Alterar o tamanho da réplica do DPM e do volume do ponto de recuperação

Você também pode alterar o tamanho do volume de Réplica do DPM, e o volume de Cópia de Sombra usando o cmdlet Set-DPMDatasourceDiskAllocation , como no exemplo a seguir: Get-DatasourceDiskAllocation -Datasource $DS Set-DatasourceDiskAllocation -Datasource $DS -ProtectionGroup $MPG -manual -ReplicaArea (2gb) -ShadowCopyArea (2gb)

Aplicar as alterações ao Grupo de Proteção

Por fim, as alterações precisam ser confirmadas antes que o DPM possa fazer o backup de acordo com a nova configuração do Grupo de Proteção. Isso pode ser feito usando o cmdlet Set-DPMProtectionGroup .

Set-DPMProtectionGroup -ProtectionGroup $MPG

Exibir os pontos de backup

Você pode usar o cmdlet Get-DPMRecoveryPoint para obter uma lista de todos os pontos de recuperação de uma fonte de dados. Neste exemplo, vamos:

  • buscar todos os PGs no servidor DPM e armazenar em uma matriz $PG
  • obter as fontes de dados correspondentes ao $PG[0]
  • obtenha todos os pontos de recuperação de uma fonte de dados.
$PG = Get-DPMProtectionGroup –DPMServerName "TestingServer"
$DS = Get-DPMDatasource -ProtectionGroup $PG[0]
$RecoveryPoints = Get-DPMRecoverypoint -Datasource $DS[0] -Online

Restaurar dados protegidos no Azure

Restaurar dados é uma combinação de um RecoverableItem objeto e um RecoveryOption objeto. Na seção anterior, obtivemos uma lista dos pontos de backup de uma fonte de dados.

No exemplo a seguir, demonstramos como restaurar uma máquina virtual Hyper-V por meio do Backup do Azure, combinando os pontos de backup com o destino para recuperação. Este exemplo inclui:

  • Criando uma opção de recuperação usando o cmdlet New-DPMRecoveryOption .
  • Buscando a matriz de pontos de backup usando o Get-DPMRecoveryPoint cmdlet.
  • Escolhendo um ponto de backup do qual restaurar.
$RecoveryOption = New-DPMRecoveryOption -HyperVDatasource -TargetServer "HVDCenter02" -RecoveryLocation AlternateHyperVServer -RecoveryType Recover -TargetLocation "C:\VMRecovery"

$PG = Get-DPMProtectionGroup –DPMServerName "TestingServer"
$DS = Get-DPMDatasource -ProtectionGroup $PG[0]
$RecoveryPoints = Get-DPMRecoverypoint -Datasource $DS[0] -Online

Restore-DPMRecoverableItem -RecoverableItem $RecoveryPoints[0] -RecoveryOption $RecoveryOption

Os comandos podem ser facilmente estendidos para qualquer tipo de fonte de dados.

Próximas etapas