Implementar e gerir cópias de segurança para o Azure para o Windows Server/cliente Windows com o PowerShell
Este artigo mostra como usar o PowerShell para configurar o Backup do Azure no Windows Server ou em um cliente Windows e gerenciar o backup e a recuperação.
Instalar o Azure PowerShell
Nota
Recomendamos que utilize o módulo Azure Az do PowerShell para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.
Para começar, instale a versão mais recente do PowerShell.
Criar um cofre dos Serviços de Recuperação
As etapas a seguir orientam você na 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.
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"
O cofre dos Serviços de Recuperação é um recurso do Azure Resource Manager, portanto, você precisa 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 "WestUS"
Use o cmdlet New-AzRecoveryServicesVault para criar o novo cofre. Certifique-se de especificar o mesmo local para o cofre que foi usado para o grupo de recursos.
New-AzRecoveryServicesVault -Name "testvault" -ResourceGroupName " test-rg" -Location "WestUS"
Especifique o tipo de redundância de armazenamento a ser usado. Você pode usar o Armazenamento Localmente Redundante (LRS), o Armazenamento com Redundância Geográfica (GRS) ou o Armazenamento com Redundância de Zona (ZRS). O exemplo a seguir mostra a opção -BackupStorageRedundancy para testVault definida como GeoRedundant.
Gorjeta
Muitos cmdlets do Azure Backup requerem o objeto do cofre dos Serviços de Recuperação como entrada. Por esse motivo, é conveniente armazenar o objeto do cofre dos Serviços de Recuperação de Backup em uma variável.
$Vault1 = Get-AzRecoveryServicesVault –Name "testVault" Set-AzRecoveryServicesBackupProperties -Vault $Vault1 -BackupStorageRedundancy GeoRedundant
Ver os cofres numa subscrição
Use Get-AzRecoveryServicesVault para exibir a lista de todos os cofres na 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 sã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
Atualizar o Agente MARS
As versões do Agente dos Serviços de Recuperação do Microsoft Azure (MARS) abaixo de 2.0.9083.0 têm uma dependência do serviço de Controle de Acesso do Azure. O Agente MARS também é conhecido como Agente de Backup do Azure.
Em 2018, a Microsoft substituiu o serviço de Controle de Acesso do Azure. A partir de 19 de março de 2018, todas as versões do Agente MARS abaixo de 2.0.9083.0 sofrerão falhas de backup. Para evitar ou resolver falhas de backup, atualize seu agente MARS para a versão mais recente. Para identificar servidores que exigem uma atualização do Agente MARS, siga as etapas em Atualizar o agente dos Serviços de Recuperação do Microsoft Azure (MARS).
O Agente MARS é usado para fazer backup de arquivos e pastas e dados de estado do sistema no Azure. O System Center DPM e o Servidor de Backup do Azure usam o Agente MARS para fazer backup de dados no Azure.
Instalando o agente de Backup do Azure
Antes de instalar o agente de Backup do Azure, você precisa ter o instalador baixado e presente no Windows Server. Você pode obter a versão mais recente 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\*
.
Como alternativa, use o PowerShell para obter o downloader:
$MarsAURL = 'https://aka.ms/Azurebackup_Agent'
$WC = New-Object System.Net.WebClient
$WC.DownloadFile($MarsAURL,'C:\downloads\MARSAgentInstaller.exe')
C:\Downloads\MARSAgentInstaller.exe /q
Para instalar o agente, execute o seguinte comando em um console do PowerShell com privilégios elevados:
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. Uma vez instalado, o agente aparecerá na lista de programas instalados.
Para ver a lista de programas instalados, vá para Programas e Recursos do Painel de Controle>>.
Opções de instalação
Para ver todas as opções disponíveis através da linha de comando, use o seguinte comando:
MARSAgentInstaller.exe /?
As opções disponíveis incluem:
Opção | Details | Predefinido |
---|---|---|
/q | Instalação silenciosa | - |
/p:"localização" | Caminho para a pasta de instalação do agente de Backup do Azure. | C:\Program Files\Microsoft Azure Recovery Services Agent |
/s:"localização" | Caminho para a pasta de cache do agente de Backup do Azure. | C:\Arquivos de Programas\Microsoft Azure Recovery Services Agent\Scratch |
/m | Aderir ao Microsoft Update | - |
/nu | Não verifique se há atualizações após a conclusão da instalação | - |
/d | Desinstala o Agente de Serviços de Recuperação do Microsoft Azure | - |
/ph | Endereço do host proxy | - |
/po | Número da porta do host proxy | - |
/pu | Nome de usuário do host proxy | - |
/pw | Senha do proxy | - |
Registrando o Windows Server ou a máquina cliente Windows em um cofre dos Serviços de Recuperação
Depois de criar o cofre dos Serviços de Recuperação, transfira o agente mais recente e as credenciais do cofre e armazene-o numa localização conveniente como C:\Downloads.
$CredsPath = "C:\downloads"
$CredsFilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $Vault1 -Path $CredsPath
Registre-se usando o módulo Az do PowerShell
Nota
Um bug com a geração do certificado do vault foi corrigido na versão Az 3.5.0. Use a versão de lançamento do Az 3.5.0 ou superior para baixar um certificado do vault.
No módulo Az mais recente do PowerShell, devido às limitações da plataforma subjacente, o download das credenciais do cofre requer um certificado autoassinado. O exemplo a seguir mostra como fornecer um certificado autoassinado e baixar as credenciais do cofre.
$dt = $(Get-Date).ToString("M-d-yyyy")
$cert = New-SelfSignedCertificate -CertStoreLocation Cert:\CurrentUser\My -FriendlyName 'test-vaultcredentials' -subject "Windows Azure Tools" -KeyExportPolicy Exportable -NotAfter $(Get-Date).AddHours(48) -NotBefore $(Get-Date).AddHours(-24) -KeyProtection None -KeyUsage None -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.2") -Provider "Microsoft Enhanced Cryptographic Provider v1.0"
$certficate = [convert]::ToBase64String($cert.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Pfx))
$CredsFilename = Get-AzRecoveryServicesVaultSettingsFile -Backup -Vault $Vault -Path $CredsPath -Certificate $certficate
Na máquina cliente Windows Server ou Windows, execute o cmdlet Start-OBRegistration para registrar a máquina no cofre. Este e outros cmdlets usados para backup são do módulo MSONLINE, que o MARS AgentInstaller adicionou como parte do processo de instalação.
O instalador do Agent não atualiza a variável $Env:PSModulePath. Isso significa que o carregamento automático do módulo falha. Para resolver isso, você pode fazer o seguinte:
$Env:PSModulePath += ';C:\Program Files\Microsoft Azure Recovery Services Agent\bin\Modules'
Como alternativa, você pode carregar manualmente o módulo em seu script da seguinte maneira:
Import-Module -Name 'C:\Program Files\Microsoft Azure Recovery Services Agent\bin\Modules\MSOnlineBackup'
Depois de carregar os cmdlets do Online Backup, você registra as credenciais do cofre:
Start-OBRegistration -VaultCredentials $CredsFilename.FilePath -Confirm:$false
CertThumbprint : 7a2ef2caa2e74b6ed1222a5e89288ddad438df2
SubscriptionID : ef4ab577-c2c0-43e4-af80-af49f485f3d1
ServiceResourceName : testvault
Region : WestUS
Machine registration succeeded.
Importante
Não use caminhos relativos para especificar o arquivo de credenciais do cofre. Você deve fornecer um caminho absoluto como uma entrada para o cmdlet.
Configurações de rede
Quando a conectividade da máquina Windows com a Internet é através de um servidor proxy, as configurações de proxy também podem ser fornecidas ao agente. Neste exemplo, não há servidor proxy, portanto, estamos limpando explicitamente qualquer informação relacionada ao proxy.
O uso da largura de banda também pode ser controlado com as opções de work hour bandwidth
e non-work hour bandwidth
para um determinado conjunto de dias da semana.
A definição dos detalhes do proxy e da largura de banda é feita usando o cmdlet Set-OBMachineSetting :
Set-OBMachineSetting -NoProxy
Server properties updated successfully.
Set-OBMachineSetting -NoThrottle
Server properties updated successfully.
Configurações de criptografia
Os dados de backup enviados para o 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.
Você deve gerar um pino de segurança selecionando Gerar, em Configurações>Propriedades>PIN de Segurança na seção Cofre dos Serviços de Recuperação do portal do Azure.
Nota
O PIN de segurança só pode ser gerado através do portal do Azure.
Em seguida, use isso como no generatedPIN
comando:
$PassPhrase = ConvertTo-SecureString -String "Complex!123_STRING" -AsPlainText -Force
Set-OBMachineSetting -EncryptionPassPhrase $PassPhrase -SecurityPin "<generatedPIN>"
Server properties updated successfully
Importante
Mantenha as informações da frase secreta seguras depois de definidas. Não é possível restaurar dados do Azure sem esta frase secreta.
Fazer uma cópia de segurança de ficheiros e pastas
Todos os backups de servidores Windows e clientes para o Backup do Azure são regidos por uma política. A política inclui três partes:
- Um agendamento de backup que especifica quando os backups precisam ser feitos e sincronizados com o serviço.
- Uma agenda de retenção que especifica por quanto tempo reter os pontos de recuperação no Azure.
- Uma especificação de inclusão/exclusão de arquivo que dita o que deve ser feito backup.
Neste documento, como estamos automatizando o backup, assumiremos que nada foi configurado. Começamos criando uma nova política de backup usando o cmdlet New-OBPolicy .
$NewPolicy = New-OBPolicy
No momento, a política está vazia e outros cmdlets são necessários para definir quais itens serão incluídos ou excluídos, quando os backups serão executados e onde os backups serão armazenados.
Configurando o agendamento de backup
A primeira das três partes de uma política é a agenda de backup, que é criada usando o cmdlet New-OBSchedule . O agendamento de backup define quando os backups precisam ser feitos. Ao criar uma agenda, você precisa especificar dois parâmetros de entrada:
- Dias da semana em que o backup deve ser executado. Você pode executar o trabalho de backup em apenas um dia, ou todos os dias da semana, ou qualquer combinação entre eles.
- Horários do dia em que o backup deve ser executado. Você pode definir até três momentos diferentes do dia em que o backup será acionado.
Por exemplo, você pode configurar uma política de backup que seja executada às 16h todos os sábados e domingos.
$Schedule = New-OBSchedule -DaysOfWeek Saturday, Sunday -TimesOfDay 16:00
O agendamento de backup precisa ser associado a uma política, e isso pode ser feito usando o cmdlet Set-OBSchedule .
Set-OBSchedule -Policy $NewPolicy -Schedule $Schedule
BackupSchedule : 4:00 PM Saturday, Sunday, Every 1 week(s) DsList : PolicyName : RetentionPolicy : State : New PolicyState : Valid
Configurando uma política de retenção
A política de retenção define por quanto tempo os pontos de recuperação criados a partir de trabalhos de backup são mantidos. Ao criar uma nova política de retenção usando o cmdlet New-OBRetentionPolicy, você pode especificar o número de dias em que os pontos de recuperação de backup serão retidos com o Backup do Azure. O exemplo abaixo define uma política de retenção de sete dias.
$RetentionPolicy = New-OBRetentionPolicy -RetentionDays 7
A política de retenção deve ser associada à política principal usando o cmdlet Set-OBRetentionPolicy:
Set-OBRetentionPolicy -Policy $NewPolicy -RetentionPolicy $RetentionPolicy
BackupSchedule : 4:00 PM
Saturday, Sunday,
Every 1 week(s)
DsList :
PolicyName :
RetentionPolicy : Retention Days : 7
WeeklyLTRSchedule :
Weekly schedule is not set
MonthlyLTRSchedule :
Monthly schedule is not set
YearlyLTRSchedule :
Yearly schedule is not set
State : New
PolicyState : Valid
Incluindo e excluindo arquivos para backup
Um OBFileSpec
objeto define os arquivos a serem incluídos e excluídos em um backup. Este é um conjunto de regras que delimitam os arquivos e pastas protegidos em uma máquina. Você pode ter quantas regras de inclusão ou exclusão de arquivos forem necessárias e associá-las a uma política. Ao criar um novo objeto OBFileSpec, você pode:
- Especificar os ficheiros e pastas a incluir
- Especificar os ficheiros e pastas a excluir
- Especifique o backup recursivo de dados em uma pasta (ou) se apenas os arquivos de nível superior na pasta especificada devem ser copiados.
Este último é obtido usando o sinalizador -NonRecursive no comando New-OBFileSpec.
No exemplo abaixo, faremos backup dos volumes C: e D: e excluiremos os binários do sistema operacional na pasta Windows e quaisquer pastas temporárias. Para fazer isso, criaremos duas especificações de arquivo usando o cmdlet New-OBFileSpec - uma para inclusão e outra para exclusão. Depois que as especificações do arquivo forem criadas, elas serão associadas à política usando o cmdlet Add-OBFileSpec .
$Inclusions = New-OBFileSpec -FileSpec @("C:\", "D:\")
$Exclusions = New-OBFileSpec -FileSpec @("C:\windows", "C:\temp") -Exclude
Add-OBFileSpec -Policy $NewPolicy -FileSpec $Inclusions
BackupSchedule : 4:00 PM
Saturday, Sunday,
Every 1 week(s)
DsList : {DataSource
DatasourceId:0
Name:C:\
FileSpec:FileSpec
FileSpec:C:\
IsExclude:False
IsRecursive:True
, DataSource
DatasourceId:0
Name:D:\
FileSpec:FileSpec
FileSpec:D:\
IsExclude:False
IsRecursive:True
}
PolicyName :
RetentionPolicy : Retention Days : 7
WeeklyLTRSchedule :
Weekly schedule is not set
MonthlyLTRSchedule :
Monthly schedule is not set
YearlyLTRSchedule :
Yearly schedule is not set
State : New
PolicyState : Valid
Add-OBFileSpec -Policy $NewPolicy -FileSpec $Exclusions
BackupSchedule : 4:00 PM
Saturday, Sunday,
Every 1 week(s)
DsList : {DataSource
DatasourceId:0
Name:C:\
FileSpec:FileSpec
FileSpec:C:\
IsExclude:False
IsRecursive:True
,FileSpec
FileSpec:C:\windows
IsExclude:True
IsRecursive:True
,FileSpec
FileSpec:C:\temp
IsExclude:True
IsRecursive:True
, DataSource
DatasourceId:0
Name:D:\
FileSpec:FileSpec
FileSpec:D:\
IsExclude:False
IsRecursive:True
}
PolicyName :
RetentionPolicy : Retention Days : 7
WeeklyLTRSchedule :
Weekly schedule is not set
MonthlyLTRSchedule :
Monthly schedule is not set
YearlyLTRSchedule :
Yearly schedule is not set
State : New
PolicyState : Valid
Aplicação da política
Agora, o objeto de política está completo e tem um agendamento de backup associado, uma política de retenção e uma lista de inclusão/exclusão de arquivos. Essa política agora pode ser confirmada para o Backup do Azure usar. Antes de aplicar a política recém-criada, verifique se não há políticas de backup existentes associadas ao servidor usando o cmdlet Remove-OBPolicy . A remoção da política solicitará a confirmação. Para ignorar a confirmação, use o sinalizador -Confirm:$false
com o cmdlet.
Nota
Ao executar o cmdlet se ele solicitar a definição de um PIN de segurança, consulte a seção Método 1.
Get-OBPolicy | Remove-OBPolicy
Microsoft Azure Backup Are you sure you want to remove this backup policy? This will delete all the backed up data. [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
A confirmação do objeto de política é feita usando o cmdlet Set-OBPolicy . Isso também solicitará confirmação. Para ignorar a confirmação, use o sinalizador -Confirm:$false
com o cmdlet.
Set-OBPolicy -Policy $NewPolicy
Microsoft Azure Backup Do you want to save this backup policy ? [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
BackupSchedule : 4:00 PM Saturday, Sunday, Every 1 week(s)
DsList : {DataSource
DatasourceId:4508156004108672185
Name:C:\
FileSpec:FileSpec
FileSpec:C:\
IsExclude:False
IsRecursive:True,
FileSpec
FileSpec:C:\windows
IsExclude:True
IsRecursive:True,
FileSpec
FileSpec:C:\temp
IsExclude:True
IsRecursive:True,
DataSource
DatasourceId:4508156005178868542
Name:D:\
FileSpec:FileSpec
FileSpec:D:\
IsExclude:False
IsRecursive:True
}
PolicyName : c2eb6568-8a06-49f4-a20e-3019ae411bac
RetentionPolicy : Retention Days : 7
WeeklyLTRSchedule :
Weekly schedule is not set
MonthlyLTRSchedule :
Monthly schedule is not set
YearlyLTRSchedule :
Yearly schedule is not set
State : Existing PolicyState : Valid
Você pode exibir os detalhes da política de backup existente usando o cmdlet Get-OBPolicy . Você pode fazer mais detalhamento usando o cmdlet Get-OBSchedule para o agendamento de backup e o cmdlet Get-OBRetentionPolicy para as políticas de retenção
Get-OBPolicy | Get-OBSchedule
SchedulePolicyName : 71944081-9950-4f7e-841d-32f0a0a1359a
ScheduleRunDays : {Saturday, Sunday}
ScheduleRunTimes : {16:00:00}
State : Existing
Get-OBPolicy | Get-OBRetentionPolicy
RetentionDays : 7
RetentionPolicyName : ca3574ec-8331-46fd-a605-c01743a5265e
State : Existing
Get-OBPolicy | Get-OBFileSpec
FileName : *
FilePath : \?\Volume{b835d359-a1dd-11e2-be72-2016d8d89f0f}\
FileSpec : D:\
IsExclude : False
IsRecursive : True
FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\
FileSpec : C:\
IsExclude : False
IsRecursive : True
FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\windows
FileSpec : C:\windows
IsExclude : True
IsRecursive : True
FileName : *
FilePath : \?\Volume{cdd41007-a22f-11e2-be6c-806e6f6e6963}\temp
FileSpec : C:\temp
IsExclude : True
IsRecursive : True
Executando um backup sob demanda
Uma vez definida uma política de backup, os backups ocorrerão de acordo com o agendamento. Também é possível acionar um backup sob demanda usando o cmdlet Start-OBBackup :
Get-OBPolicy | Start-OBBackup
Initializing
Taking snapshot of volumes...
Preparing storage...
Generating backup metadata information and preparing the metadata VHD...
Data transfer is in progress. It might take longer since it is the first backup and all data needs to be transferred...
Data transfer completed and all backed up data is in the cloud. Verifying data integrity...
Data transfer completed
In progress...
Job completed.
The backup operation completed successfully.
Fazer backup do estado do sistema Windows Server no agente MARS
Esta seção aborda o comando do PowerShell para configurar o Estado do Sistema no agente MARS
Agenda
$sched = New-OBSchedule -DaysOfWeek Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday -TimesOfDay 2:00
Retenção
$rtn = New-OBRetentionPolicy -RetentionDays 32 -RetentionWeeklyPolicy -RetentionWeeks 13 -WeekDaysOfWeek Sunday -WeekTimesOfDay 2:00 -RetentionMonthlyPolicy -RetentionMonths 13 -MonthDaysOfMonth 1 -MonthTimesOfDay 2:00
Configurando o agendamento e a retenção
New-OBPolicy | Add-OBSystemState | Set-OBRetentionPolicy -RetentionPolicy $rtn | Set-OBSchedule -Schedule $sched | Set-OBSystemStatePolicy
Verificação da política
Get-OBSystemStatePolicy
Restaurar dados do Backup do Azure
Esta seção irá guiá-lo pelas etapas para automatizar a recuperação de dados do Backup do Azure. Isso envolve as seguintes etapas:
- Escolha o volume de origem
- Escolha um ponto de backup para restaurar
- Especificar um item a ser restaurado
- Acionar o processo de restauração
Escolhendo o volume de origem
Para restaurar um item do Backup do Azure, primeiro você precisa identificar a origem do item. Como estamos executando os comandos no contexto de um Windows Server ou de um cliente Windows, a máquina já está identificada. O próximo passo para identificar a fonte é identificar o volume que a contém. Uma lista de volumes ou fontes cujo backup está sendo feito a partir dessa máquina pode ser recuperada executando o cmdlet Get-OBRecoverableSource . Este comando retorna uma matriz de todas as fontes de backup deste servidor/cliente.
$Source = Get-OBRecoverableSource
$Source
FriendlyName : C:\
RecoverySourceName : C:\
ServerName : myserver.microsoft.com
FriendlyName : D:\
RecoverySourceName : D:\
ServerName : myserver.microsoft.com
Escolhendo um ponto de backup a partir do qual restaurar
Você recupera uma lista de pontos de backup executando o cmdlet Get-OBRecoverableItem com parâmetros apropriados. Em nosso exemplo, escolheremos o ponto de backup mais recente para o volume de origem C: e o usaremos para recuperar um arquivo específico.
$Rps = Get-OBRecoverableItem $Source[0]
$Rps
IsDir : False
ItemNameFriendly : C:\
ItemNameGuid : \\?\Volume{297cbf7a-0000-0000-0000-401f00000000}\
LocalMountPoint : C:\
MountPointName : C:\
Name : C:\
PointInTime : 10/17/2019 7:52:13 PM
ServerName : myserver.microsoft.com
ItemSize :
ItemLastModifiedTime :
IsDir : False
ItemNameFriendly : C:\
ItemNameGuid : \\?\Volume{297cbf7a-0000-0000-0000-401f00000000}\
LocalMountPoint : C:\
MountPointName : C:\
Name : C:\
PointInTime : 10/16/2019 7:00:19 PM
ServerName : myserver.microsoft.com
ItemSize :
ItemLastModifiedTime :
O objeto $Rps
é uma matriz de pontos de backup. O primeiro elemento é o ponto mais recente e o nono elemento é o ponto mais antigo. Para escolher o ponto mais recente, usaremos $Rps[0]
o .
Especificando um item a ser restaurado
Para restaurar um arquivo específico, especifique o nome do arquivo relativo ao volume raiz. Por exemplo, para recuperar C:\Test\Cat.job, execute o seguinte comando.
$Item = New-OBRecoverableItem $Rps[0] "Test\cat.jpg" $FALSE
$Item
IsDir : False
ItemNameFriendly : C:\Test\cat.jpg
ItemNameGuid :
LocalMountPoint : C:\
MountPointName : C:\
Name : cat.jpg
PointInTime : 10/17/2019 7:52:13 PM
ServerName : myserver.microsoft.com
ItemSize :
ItemLastModifiedTime : 21-Jun-14 6:43:02 AM
Acionando o processo de restauração
Para acionar o processo de restauração, primeiro precisamos especificar as opções de recuperação. Isso pode ser feito usando o cmdlet New-OBRecoveryOption . Para este exemplo, vamos supor que queremos restaurar os arquivos para C:\temp. Vamos também supor que queremos ignorar arquivos que já existem na pasta de destino C:\temp. Para criar essa opção de recuperação, use o seguinte comando:
$RecoveryOption = New-OBRecoveryOption -DestinationPath "C:\temp" -OverwriteType Skip
Agora acione o processo de restauração usando o comando Start-OBRecovery na saída selecionada $Item
do Get-OBRecoverableItem
cmdlet:
Start-OBRecovery -RecoverableItem $Item -RecoveryOption $RecoveryOption
Estimating size of backup items...
Estimating size of backup items...
Estimating size of backup items...
Estimating size of backup items...
Job completed.
The recovery operation completed successfully.
Restauro Entre Regiões
A CRR (Cross Region Restore) permite restaurar dados de backup do MARS de uma região secundária, que é uma região emparelhada do Azure. Isso permite que você realize exercícios para auditoria e conformidade e recupere dados durante a indisponibilidade da região principal no Azure no caso de um desastre.
Restauração do servidor original
Se você estiver executando a restauração para o servidor original da região secundária (Restauração entre regiões), use o sinalizador UseSecondaryRegion
ao obter o OBRecoverableSource
objeto.
$sources = Get-OBRecoverableSource -UseSecondaryRegion
$RP = Get-OBRecoverableItem -Source $sources[0]
$RO = New-OBRecoveryOption -DestinationPath $RecoveryPath -OverwriteType Overwrite
Start-OBRecovery -RecoverableItem $RP -RecoveryOption $RO -Async | ConvertTo-Json
Restauração alternativa do servidor
Se você estiver executando a restauração para um servidor alternativo da região secundária (Restauração entre regiões), baixe o arquivo de credenciais do cofre da região secundária do portal do Azure e passe a credencial do cofre da região secundária para restauração.
$serverName = ‘myserver.mycompany.com’
$secVaultCred = “C:\Users\myuser\Downloads\myvault_Mon Jul 17 2023.VaultCredentials”
$passphrase = ‘Default Passphrase’
$alternateServers = Get-OBAlternateBackupServer -VaultCredentials $secVaultCred
$altServer = $alternateServers[2] | Where-Object {$_.ServerName -Like $serverName}
$pwd = ConvertTo-SecureString -String $passphrase -AsPlainText -Force
$sources = Get-OBRecoverableSource $altServer
$RP = Get-OBRecoverableItem -Source $sources[0]
$RO = New-OBRecoveryOption
Start-OBRecoveryMount -RecoverableItem $RP -RecoveryOption $RO -EncryptionPassphrase $pwd -Async | ConvertTo-Json
Desinstalar o agente de Backup do Azure
A desinstalação do agente de Backup do Azure pode ser feita usando o seguinte comando:
.\MARSAgentInstaller.exe /d /q
A desinstalação dos binários do agente da máquina tem algumas consequências a considerar:
- Ele remove o filtro de arquivos da máquina e o controle das alterações é interrompido.
- Todas as informações de política são removidas da máquina, mas as informações de política continuam a ser armazenadas no serviço.
- Todas as agendas de backup são removidas e nenhum outro backup é feito.
No entanto, os dados armazenados no Azure permanecem e são retidos de acordo com a política de retenção configurada por você. Os pontos mais antigos são automaticamente envelhecidos.
Gestão remota
Todo o gerenciamento em torno do agente, das políticas e das fontes de dados do Backup do Azure pode ser feito remotamente por meio do PowerShell. A máquina que será gerenciada remotamente precisa estar preparada corretamente.
Por padrão, o serviço WinRM é configurado para inicialização manual. O tipo de inicialização deve ser definido como Automático e o serviço deve ser iniciado. Para verificar se o serviço WinRM está em execução, o valor da propriedade Status deve ser Running.
Get-Service -Name WinRM
Status Name DisplayName
------ ---- -----------
Running winrm Windows Remote Management (WS-Manag...
O PowerShell deve ser configurado para comunicação remota.
Enable-PSRemoting -Force
WinRM is already set up to receive requests on this computer.
WinRM has been updated for remote management.
WinRM firewall exception enabled.
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force
A máquina agora pode ser gerenciada remotamente - a partir da instalação do agente. Por exemplo, o script a seguir copia o agente para a máquina remota e o instala.
$DLoc = "\\REMOTESERVER01\c$\Windows\Temp"
$Agent = "\\REMOTESERVER01\c$\Windows\Temp\MARSAgentInstaller.exe"
$Args = "/q"
Copy-Item "C:\Downloads\MARSAgentInstaller.exe" -Destination $DLoc -Force
$Session = New-PSSession -ComputerName REMOTESERVER01
Invoke-Command -Session $Session -Script { param($D, $A) Start-Process -FilePath $D $A -Wait } -ArgumentList $Agent, $Args
Próximos passos
Para obter mais informações sobre o Backup do Azure para Windows Server/Client: