The vaults/backupFabrics/protectionContainers resource type can be deployed to:
For a list of changed properties in each API version, see change log.
To create a Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers resource, add the following JSON to your template.
{
"type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers",
"apiVersion": "2023-01-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"eTag": "string",
"properties": {
"backupManagementType": "string",
"friendlyName": "string",
"healthStatus": "string",
"protectableObjectType": "string",
"registrationStatus": "string",
"containerType": "string"
// For remaining properties, see ProtectionContainer objects
}
}
Set the containerType property to specify the type of object.
For AzureBackupServerContainer, use:
"containerType": "AzureBackupServerContainer",
"canReRegister": "bool",
"containerId": "string",
"dpmAgentVersion": "string",
"dpmServers": [ "string" ],
"extendedInfo": {
"lastRefreshedAt": "string"
},
"protectedItemCount": "int",
"protectionStatus": "string",
"upgradeAvailable": "bool"
For AzureSqlContainer, use:
"containerType": "AzureSqlContainer"
For GenericContainer, use:
"containerType": "GenericContainer",
"extendedInformation": {
"containerIdentityInfo": {
"aadTenantId": "string",
"audience": "string",
"servicePrincipalClientId": "string",
"uniqueName": "string"
},
"rawCertData": "string",
"serviceEndpoints": {}
},
"fabricName": "string"
For Microsoft.ClassicCompute/virtualMachines, use:
"containerType": "Microsoft.ClassicCompute/virtualMachines",
"resourceGroup": "string",
"virtualMachineId": "string",
"virtualMachineVersion": "string"
For Microsoft.Compute/virtualMachines, use:
"containerType": "Microsoft.Compute/virtualMachines",
"resourceGroup": "string",
"virtualMachineId": "string",
"virtualMachineVersion": "string"
For SQLAGWorkLoadContainer, use:
"containerType": "SQLAGWorkLoadContainer",
"extendedInfo": {
"hostServerName": "string",
"inquiryInfo": {
"errorDetail": {},
"inquiryDetails": [
{
"inquiryValidation": {
"errorDetail": {},
"status": "string"
},
"itemCount": "int",
"type": "string"
}
],
"status": "string"
},
"nodesList": [
{
"errorDetail": {},
"nodeName": "string",
"status": "string"
}
]
},
"lastUpdatedTime": "string",
"operationType": "string",
"sourceResourceId": "string",
"workloadType": "string"
For StorageContainer, use:
"containerType": "StorageContainer",
"acquireStorageAccountLock": "string",
"protectedItemCount": "int",
"resourceGroup": "string",
"sourceResourceId": "string",
"storageAccountVersion": "string"
For VMAppContainer, use:
"containerType": "VMAppContainer",
"extendedInfo": {
"hostServerName": "string",
"inquiryInfo": {
"errorDetail": {},
"inquiryDetails": [
{
"inquiryValidation": {
"errorDetail": {},
"status": "string"
},
"itemCount": "int",
"type": "string"
}
],
"status": "string"
},
"nodesList": [
{
"errorDetail": {},
"nodeName": "string",
"status": "string"
}
]
},
"lastUpdatedTime": "string",
"operationType": "string",
"sourceResourceId": "string",
"workloadType": "string"
For Windows, use:
"containerType": "Windows",
"agentVersion": "string",
"canReRegister": "bool",
"containerHealthState": "string",
"containerId": "int",
"extendedInfo": {
"backupItems": [ "string" ],
"backupItemType": "string",
"lastBackupStatus": "string",
"lastRefreshedAt": "string",
"policyName": "string"
},
"mabContainerHealthDetails": [
{
"code": "int",
"message": "string",
"recommendations": [ "string" ],
"title": "string"
}
],
"protectedItemCount": "int"
Name | Description | Value |
---|---|---|
type | The resource type | 'Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers' |
apiVersion | The resource api version | '2023-01-01' |
name | The resource name See how to set names and types for child resources in JSON ARM templates. |
string (required) |
location | Resource location. | string |
tags | Resource tags. | Dictionary of tag names and values. See Tags in templates |
eTag | Optional ETag. | string |
properties | ProtectionContainerResource properties | ProtectionContainer |
Name | Description | Value |
---|---|---|
backupManagementType | Type of backup management for the container. | 'AzureBackupServer' 'AzureIaasVM' 'AzureSql' 'AzureStorage' 'AzureWorkload' 'DPM' 'DefaultBackup' 'Invalid' 'MAB' |
friendlyName | Friendly name of the container. | string |
healthStatus | Status of health of the container. | string |
protectableObjectType | Type of the protectable object associated with this container | string |
registrationStatus | Status of registration of the container with the Recovery Services Vault. | string |
containerType | Set the object type | AzureBackupServerContainer AzureSqlContainer GenericContainer Microsoft.ClassicCompute/virtualMachines Microsoft.Compute/virtualMachines SQLAGWorkLoadContainer StorageContainer VMAppContainer Windows (required) |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'AzureBackupServerContainer' (required) |
canReRegister | Specifies whether the container is re-registrable. | bool |
containerId | ID of container. | string |
dpmAgentVersion | Backup engine Agent version | string |
dpmServers | List of BackupEngines protecting the container | string[] |
extendedInfo | Extended Info of the container. | DPMContainerExtendedInfo |
protectedItemCount | Number of protected items in the BackupEngine | int |
protectionStatus | Protection status of the container. | string |
upgradeAvailable | To check if upgrade available | bool |
Name | Description | Value |
---|---|---|
lastRefreshedAt | Last refresh time of the DPMContainer. | string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'AzureSqlContainer' (required) |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'GenericContainer' (required) |
extendedInformation | Extended information (not returned in List container API calls) | GenericContainerExtendedInfo |
fabricName | Name of the container's fabric | string |
Name | Description | Value |
---|---|---|
containerIdentityInfo | Container identity information | ContainerIdentityInfo |
rawCertData | Public key of container cert | string |
serviceEndpoints | Azure Backup Service Endpoints for the container | object |
Name | Description | Value |
---|---|---|
aadTenantId | Protection container identity - AAD Tenant | string |
audience | Protection container identity - Audience | string |
servicePrincipalClientId | Protection container identity - AAD Service Principal | string |
uniqueName | Unique name of the container | string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'Microsoft.ClassicCompute/virtualMachines' (required) |
resourceGroup | Resource group name of Recovery Services Vault. | string |
virtualMachineId | Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container. | string |
virtualMachineVersion | Specifies whether the container represents a Classic or an Azure Resource Manager VM. | string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'Microsoft.Compute/virtualMachines' (required) |
resourceGroup | Resource group name of Recovery Services Vault. | string |
virtualMachineId | Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container. | string |
virtualMachineVersion | Specifies whether the container represents a Classic or an Azure Resource Manager VM. | string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'SQLAGWorkLoadContainer' (required) |
extendedInfo | Additional details of a workload container. | AzureWorkloadContainerExtendedInfo |
lastUpdatedTime | Time stamp when this container was updated. | string |
operationType | Re-Do Operation | 'Invalid' 'Register' 'Reregister' |
sourceResourceId | ARM ID of the virtual machine represented by this Azure Workload Container | string |
workloadType | Workload type for which registration was sent. | 'AzureFileShare' 'AzureSqlDb' 'Client' 'Exchange' 'FileFolder' 'GenericDataSource' 'Invalid' 'SAPAseDatabase' 'SAPHanaDBInstance' 'SAPHanaDatabase' 'SQLDB' 'SQLDataBase' 'Sharepoint' 'SystemState' 'VM' 'VMwareVM' |
Name | Description | Value |
---|---|---|
hostServerName | Host Os Name in case of Stand Alone and Cluster Name in case of distributed container. | string |
inquiryInfo | Inquiry Status for the container. | InquiryInfo |
nodesList | List of the nodes in case of distributed container. | DistributedNodesInfo[] |
Name | Description | Value |
---|---|---|
errorDetail | Error Details if the Status is non-success. | ErrorDetail |
inquiryDetails | Inquiry Details which will have workload specific details. For e.g. - For SQL and oracle this will contain different details. |
WorkloadInquiryDetails[] |
status | Inquiry Status for this container such as InProgress , Failed , Succeeded |
string |
This object doesn't contain any properties to set during deployment. All properties are ReadOnly.
Name | Description | Value |
---|---|---|
inquiryValidation | Inquiry validation such as permissions and other backup validations. | InquiryValidation |
itemCount | Contains the protectable item Count inside this Container. | int |
type | Type of the Workload such as SQL, Oracle etc. | string |
Name | Description | Value |
---|---|---|
errorDetail | Error Detail in case the status is non-success. | ErrorDetail |
status | Status for the Inquiry Validation. | string |
Name | Description | Value |
---|---|---|
errorDetail | Error Details if the Status is non-success. | ErrorDetail |
nodeName | Name of the node under a distributed container. | string |
status | Status of this Node. Failed , Succeeded |
string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'StorageContainer' (required) |
acquireStorageAccountLock | Whether storage account lock is to be acquired for this container or not. | 'Acquire' 'NotAcquire' |
protectedItemCount | Number of items backed up in this container. | int |
resourceGroup | Resource group name of Recovery Services Vault. | string |
sourceResourceId | Fully qualified ARM url. | string |
storageAccountVersion | Storage account version. | string |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'VMAppContainer' (required) |
extendedInfo | Additional details of a workload container. | AzureWorkloadContainerExtendedInfo |
lastUpdatedTime | Time stamp when this container was updated. | string |
operationType | Re-Do Operation | 'Invalid' 'Register' 'Reregister' |
sourceResourceId | ARM ID of the virtual machine represented by this Azure Workload Container | string |
workloadType | Workload type for which registration was sent. | 'AzureFileShare' 'AzureSqlDb' 'Client' 'Exchange' 'FileFolder' 'GenericDataSource' 'Invalid' 'SAPAseDatabase' 'SAPHanaDBInstance' 'SAPHanaDatabase' 'SQLDB' 'SQLDataBase' 'Sharepoint' 'SystemState' 'VM' 'VMwareVM' |
Name | Description | Value |
---|---|---|
containerType | Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is Windows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload Backup is VMAppContainer |
'Windows' (required) |
agentVersion | Agent version of this container. | string |
canReRegister | Can the container be registered one more time. | bool |
containerHealthState | Health state of mab container. | string |
containerId | ContainerID represents the container. | int |
extendedInfo | Additional information for this container | MabContainerExtendedInfo |
mabContainerHealthDetails | Health details on this mab container. | MABContainerHealthDetails[] |
protectedItemCount | Number of items backed up in this container. | int |
Name | Description | Value |
---|---|---|
backupItems | List of backup items associated with this container. | string[] |
backupItemType | Type of backup items associated with this container. | 'AzureFileShare' 'AzureSqlDb' 'Client' 'Exchange' 'FileFolder' 'GenericDataSource' 'Invalid' 'SAPAseDatabase' 'SAPHanaDBInstance' 'SAPHanaDatabase' 'SQLDB' 'SQLDataBase' 'Sharepoint' 'SystemState' 'VM' 'VMwareVM' |
lastBackupStatus | Latest backup status of this container. | string |
lastRefreshedAt | Time stamp when this container was refreshed. | string |
policyName | Backup policy associated with this container. | string |
Name | Description | Value |
---|---|---|
code | Health Code | int |
message | Health Message | string |
recommendations | Health Recommended Actions | string[] |
title | Health Title | string |
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Backup existing File Share using Recovery Services (Daily) |
This template configures protection for an existing File Share present in an existing Storage Account. It creates a new or uses an existing Recovery Services Vault and Backup Policy based on the set parameter values. |
Backup existing File Share using Recovery Services (hourly) |
This template configures protection with hourly frequency for an existing File Share present in an existing Storage Account. It creates a new or uses an existing Recovery Services Vault and Backup Policy based on the set parameter values. |
Azure Backup for Workload in Azure Virtual Machines |
This template creates a Recovery Services Vault and a Workload specific Backup Policy. Registers VM with Backup service and Configures Protection |