Start-VBRAzureInstantRecovery
Short Description
Starts Instant Recovery to Microsoft Azure.
Applies to
Product Edition: Standard, Enterprise, Enterprise Plus, Veeam Universal License
Syntax
Start-VBRAzureInstantRecovery -RestorePoint <COib> -Subscription <VBRAzureSubscription> -Location <VBRAzureLocation> -VmSize <VBRAzureVMSize> -VirtualNetwork <VBRAzureVirtualNetwork> -VirtualSubnet <VBRAzureNetworkSubnet> -ApplianceSubnet <VBRAzureNetworkSubnet> [-VmName <string>] [-DiskConfigurations <VBRAzureDiskConfiguration[]>] [-Tags <VBRAzureTag[]>] [-ResourceGroup <VBRAzureResourceGroup>] [-NewResourceGroupName <string>] [-ApplianceStorageAccount <VBRAzureStorageAccount>] [-NetworkSecurityGroup <VBRNetworkSecurityGroup>] [-AllocatePublicIP] [-VerifyVMBoot] [-Reason <string>] [-RunAsync][<CommonParameters>] |
Detailed Description
This cmdlet starts Instant Recovery to Microsoft Azure. For the list of workload types that you can restore, see in the Instant Recovery to Microsoft Azure section in the Veeam Backup & Replication User Guide.
The recovered VM runs from a backup and does not provide a fully functioning service. You need to finalize the successful instant recovery by one of the following steps:
- Migrate the recovered VM to the production. To do this, run the Start-VBRAzureInstantRecoveryMigration cmdlet.
- Remove the recovered VM. You can stop publishing the recovered VM and discard the changes made to it while it was running from backup. To do this, run the Stop-VBRAzureInstantRecovery cmdlet.
Parameters
Parameter | Description | Type | Required | Position | Accept Pipeline Input |
---|---|---|---|---|---|
RestorePoint | Specifies the restore point to which you want to recover the workload. | Accepts the COib object. To create this object, run the Get-VBRRestorePoint cmdlet. | True | Named | True |
Subscription | Specifies the Microsoft Azure subscription. The cmdlet will recover the workload to this subscription. | Accepts the VBRAzureSubscription object. To get this object, run the Get-VBRAzureSubscription cmdlet. | True | Named | False |
Location | Specifies a geographic region to which you want to place the recovered workloads. | Accepts the VBRAzureLocation object. To get this object, run the Get-VBRAzureLocation cmdlet. | True | Named | False |
VmSize | Specifies the Microsoft Azure VM configuration. The recovered workload will use this configuration template. | Accepts the VBRAzureVMSize object. To get this object, run the Get-VBRAzureVMSize cmdlet. | True | Named | False |
VirtualNetwork | Specifies the Microsoft Azure virtual network. The recovered workload will be connected to this network. | Accepts the VBRAzureVirtualNetwork object. To get this object, run the Get-VBRAzureVirtualNetwork cmdlet. | True | Named | False |
VirtualSubnet | Specifies the Microsoft Azure virtual subnet. The recovered workload will be connected to this subnet. Note: It is recommended to use separate subnets for the VirtualSubnet and ApplianceSubnet parameters, otherwise some OSes may not boot. | Accepts the VBRAzureNetworkSubnet object. To get this object, run the Get-VBRAzureVirtualNetworkSubnet cmdlet. | True | Named | False |
ApplianceSubnet | Specifies the subnet where the cmdlet deploys the helper appliance for the recovered workload. Note: It is recommended to use separate subnets for the VirtualSubnet and ApplianceSubnet parameters, otherwise some OSes may not boot. | Accepts the VBRAzureNetworkSubnet object. To get this object, run the Get-VBRAzureVirtualNetworkSubnet cmdlet. | True | Named | False |
VmName | Specifies the VM name. The recovered workload will have this name. If you do not specify a new name, the restored VM will have the original name. | String | False | Named | False |
DiskConfigurations | Specifies the Microsoft Azure VM disk type. The cmdlet will attach disks of this type to the recovered workload. Default: Premium SSD. | Accepts the VBRAzureDiskConfiguration[] object. To create this object, run the New-VBRAzureDiskConfiguration cmdlet. | False | Named | False |
Tags | Specifies tags that you want to assign to the recovered workloads. | Accepts the VBRAzureTag[] object. To create this object, run the New-VBRAzureTag cmdlet. | False | Named | False |
ResourceGroup | Specifies the resource group. The recovered workload will use this restore group. If you skip this parameter, the cmdlet will need to create a new resource group. Use the NewResourceGroupName parameter to create a new resource group. | Accepts the VBRAzureResourceGroup object. To get this object, run the Get-VBRAzureResourceGroup cmdlet. | False | Named | False |
NewResourceGroupName | Specifies the name of a new resource group. The cmdlet will create a new resource group with this name. If you skip this parameter, use the ResourceGroup parameter to specify an existing resource group. | String | False | Named | False |
ApplianceStorageAccount | Specifies the storage account through which the recovered workload will communicated with the helper appliance. | Accepts the VBRAzureStorageAccount object. To get this object, run the Get-VBRAzureStorageAccount cmdlet. | False | Named | False |
NetworkSecurityGroup | Specifies the security group for the recovered workload. | Accepts the VBRNetworkSecurityGroup object. To get this object, run the Get-VBRAzureNetworkSecurityGroup cmdlet. | False | Named | False |
AllocatePublicIP | Defines that the cmdlet will assign a public IP to the recovered workload. | SwitchParameter | False | Named | False |
VerifyVMBoot | Defines that Veeam Backup & Replication checks if the recovered workload boots successfully. Veeam Backup & Replication considers recovery as successful after receiving a response from the recovered workload. If the response is not received, Veeam Backup & Replication sends a warning in the recovery session. | SwitchParameter | False | Named | False |
Reason | Specifies a restore reason. | String | False | Named | False |
RunAsync | Defines that the command returns immediately without waiting for the task to complete. | SwitchParameter | False | Named | False |
<CommonParameters>
This cmdlet supports Microsoft PowerShell common parameters. For more information on common parameters, see Microsoft Docs.
Output Object
This example shows how to start Instant Recovery to Microsoft Azure.
$point = Get-VBRBackup -Name "Tech VM" | Get-VBRRestorePoint -Name "backup-azure-win16-g1" | Sort-Object –Property CreationTime –Descending | Select-Object -First 1 $account = Get-VBRAzureAccount -Name "RestoreToAzureRM@Tech.com" $subscription = Get-VBRAzureSubscription -Account $account -Name "VeeamDirectRestore2Azure" $location = Get-VBRAzureLocation -Subscription $subscription -Name "swedencentral" $vmSize = Get-VBRAzureVMSize -Subscription $subscription -Location $location -Name "Standard_F4s_v2" $virtualNetwork = Get-VBRAzureVirtualNetwork -Subscription $subscription -Name tech* -Location $location $subnet = Get-VBRAzureVirtualNetworkSubnet -Network $virtualNetwork -Name "default" $group = Get-VBRAzureResourceGroup -Subscription $subscription -Name "tech-ts-group" -Location $location $session = Start-VBRAzureInstantRecovery -RestorePoint $point -Subscription $subscription -Location $location -VmSize $vmSize -VirtualNetwork $virtualNetwork -VirtualSubnet $subnet -ApplianceSubnet $subnet -VmName "tech-recovered-VM" -ResourceGroup $group -RunAsync |
Perform the following steps:
- Get the restore point:
- Run the Get-VBRBackup cmdlet. Specify the Name parameter value.
- Pipe the cmdlet output to the Get-VBRRestorePoint cmdlet. Specify the Name parameter value.
- Pipe the cmdlet output to the Sort-Object cmdlet. Set the CreationTime value for the Property parameter. Provide the Descending parameter.
- Pipe the cmdlet output to the Select-Object cmdlet. Specify the First parameter value.
- Run the Get-VBRAzureAccount cmdlet. Specify the Name parameter value. Save it to the $account variable.
- Run the Get-VBRAzureSubscription cmdlet. Set the $account variable as the Account parameter value. Specify the Name parameter value. Save it to the $subscription variable.
- Run the Get-VBRAzureLocation cmdlet. Set the $subscription variable as the Subscription parameter value. Specify the Name parameter value. Save it to the $location variable.
- Run the Get-VBRAzureVMSize cmdlet. Set the $subscription variable as the Subscription parameter value. Set the $location variable as the Location parameter value. Specify the Name parameter value. Save it to the $vmSize variable.
- Run the Get-VBRAzureVirtualNetwork cmdlet. Set the $subscription variable as the Subscription parameter value. Specify the Name parameter value. Set the $location variable as the Location parameter value. Save it to the $virtualNetwork variable.
- Run the Get-VBRAzureVirtualNetworkSubnet cmdlet. Set the $virtualNetwork variable as the Network parameter value. Specify the Name parameter value. Save it to the $subnet variable.
- Run the Get-VBRAzureResourceGroup cmdlet. Set the $subscription variable as the Subscription parameter value. Set the $location variable as the Location parameter value. Specify the Name parameter value. Save it to the $group variable.
- Run the Start-VBRAzureInstantRecovery cmdlet. Specify the following settings:
- Set the $point variable as the RestorePoint parameter value.
- Set the $subscription variable as the Subscription parameter value.
- Set the $location variable as the Location parameter value.
- Set the $vmSize variable as the VmSize parameter value.
- Set the $virtualNetwork variable as the VirtualNetwork parameter value.
- Set the $subnet variable as the VirtualSubnet parameter value.
- Set the $subnet variable as the ApplianceSubnet parameter value.
- Specify the VmName parameter value.
- Set the $group variable as the ResourceGroup parameter value.
- Specify the RunAsync parameter value.
- Save the result to the $session variable.
Related Commands