1. Packages
  2. Azure Classic
  3. API Docs
  4. backup
  5. PolicyVMWorkload

We recommend using Azure Native.

Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi

azure.backup.PolicyVMWorkload

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi

    Manages an Azure VM Workload Backup Policy within a Recovery Services vault.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-bpvmw",
        location: "West Europe",
    });
    const exampleVault = new azure.recoveryservices.Vault("example", {
        name: "example-rsv",
        location: example.location,
        resourceGroupName: example.name,
        sku: "Standard",
        softDeleteEnabled: false,
    });
    const examplePolicyVMWorkload = new azure.backup.PolicyVMWorkload("example", {
        name: "example-bpvmw",
        resourceGroupName: example.name,
        recoveryVaultName: exampleVault.name,
        workloadType: "SQLDataBase",
        settings: {
            timeZone: "UTC",
            compressionEnabled: false,
        },
        protectionPolicies: [
            {
                policyType: "Full",
                backup: {
                    frequency: "Daily",
                    time: "15:00",
                },
                retentionDaily: {
                    count: 8,
                },
            },
            {
                policyType: "Log",
                backup: {
                    frequencyInMinutes: 15,
                },
                simpleRetention: {
                    count: 8,
                },
            },
        ],
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.core.ResourceGroup("example",
        name="example-bpvmw",
        location="West Europe")
    example_vault = azure.recoveryservices.Vault("example",
        name="example-rsv",
        location=example.location,
        resource_group_name=example.name,
        sku="Standard",
        soft_delete_enabled=False)
    example_policy_vm_workload = azure.backup.PolicyVMWorkload("example",
        name="example-bpvmw",
        resource_group_name=example.name,
        recovery_vault_name=example_vault.name,
        workload_type="SQLDataBase",
        settings=azure.backup.PolicyVMWorkloadSettingsArgs(
            time_zone="UTC",
            compression_enabled=False,
        ),
        protection_policies=[
            azure.backup.PolicyVMWorkloadProtectionPolicyArgs(
                policy_type="Full",
                backup=azure.backup.PolicyVMWorkloadProtectionPolicyBackupArgs(
                    frequency="Daily",
                    time="15:00",
                ),
                retention_daily=azure.backup.PolicyVMWorkloadProtectionPolicyRetentionDailyArgs(
                    count=8,
                ),
            ),
            azure.backup.PolicyVMWorkloadProtectionPolicyArgs(
                policy_type="Log",
                backup=azure.backup.PolicyVMWorkloadProtectionPolicyBackupArgs(
                    frequency_in_minutes=15,
                ),
                simple_retention=azure.backup.PolicyVMWorkloadProtectionPolicySimpleRetentionArgs(
                    count=8,
                ),
            ),
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/backup"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/recoveryservices"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-bpvmw"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleVault, err := recoveryservices.NewVault(ctx, "example", &recoveryservices.VaultArgs{
    			Name:              pulumi.String("example-rsv"),
    			Location:          example.Location,
    			ResourceGroupName: example.Name,
    			Sku:               pulumi.String("Standard"),
    			SoftDeleteEnabled: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = backup.NewPolicyVMWorkload(ctx, "example", &backup.PolicyVMWorkloadArgs{
    			Name:              pulumi.String("example-bpvmw"),
    			ResourceGroupName: example.Name,
    			RecoveryVaultName: exampleVault.Name,
    			WorkloadType:      pulumi.String("SQLDataBase"),
    			Settings: &backup.PolicyVMWorkloadSettingsArgs{
    				TimeZone:           pulumi.String("UTC"),
    				CompressionEnabled: pulumi.Bool(false),
    			},
    			ProtectionPolicies: backup.PolicyVMWorkloadProtectionPolicyArray{
    				&backup.PolicyVMWorkloadProtectionPolicyArgs{
    					PolicyType: pulumi.String("Full"),
    					Backup: &backup.PolicyVMWorkloadProtectionPolicyBackupArgs{
    						Frequency: pulumi.String("Daily"),
    						Time:      pulumi.String("15:00"),
    					},
    					RetentionDaily: &backup.PolicyVMWorkloadProtectionPolicyRetentionDailyArgs{
    						Count: pulumi.Int(8),
    					},
    				},
    				&backup.PolicyVMWorkloadProtectionPolicyArgs{
    					PolicyType: pulumi.String("Log"),
    					Backup: &backup.PolicyVMWorkloadProtectionPolicyBackupArgs{
    						FrequencyInMinutes: pulumi.Int(15),
    					},
    					SimpleRetention: &backup.PolicyVMWorkloadProtectionPolicySimpleRetentionArgs{
    						Count: pulumi.Int(8),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-bpvmw",
            Location = "West Europe",
        });
    
        var exampleVault = new Azure.RecoveryServices.Vault("example", new()
        {
            Name = "example-rsv",
            Location = example.Location,
            ResourceGroupName = example.Name,
            Sku = "Standard",
            SoftDeleteEnabled = false,
        });
    
        var examplePolicyVMWorkload = new Azure.Backup.PolicyVMWorkload("example", new()
        {
            Name = "example-bpvmw",
            ResourceGroupName = example.Name,
            RecoveryVaultName = exampleVault.Name,
            WorkloadType = "SQLDataBase",
            Settings = new Azure.Backup.Inputs.PolicyVMWorkloadSettingsArgs
            {
                TimeZone = "UTC",
                CompressionEnabled = false,
            },
            ProtectionPolicies = new[]
            {
                new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicyArgs
                {
                    PolicyType = "Full",
                    Backup = new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicyBackupArgs
                    {
                        Frequency = "Daily",
                        Time = "15:00",
                    },
                    RetentionDaily = new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicyRetentionDailyArgs
                    {
                        Count = 8,
                    },
                },
                new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicyArgs
                {
                    PolicyType = "Log",
                    Backup = new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicyBackupArgs
                    {
                        FrequencyInMinutes = 15,
                    },
                    SimpleRetention = new Azure.Backup.Inputs.PolicyVMWorkloadProtectionPolicySimpleRetentionArgs
                    {
                        Count = 8,
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.recoveryservices.Vault;
    import com.pulumi.azure.recoveryservices.VaultArgs;
    import com.pulumi.azure.backup.PolicyVMWorkload;
    import com.pulumi.azure.backup.PolicyVMWorkloadArgs;
    import com.pulumi.azure.backup.inputs.PolicyVMWorkloadSettingsArgs;
    import com.pulumi.azure.backup.inputs.PolicyVMWorkloadProtectionPolicyArgs;
    import com.pulumi.azure.backup.inputs.PolicyVMWorkloadProtectionPolicyBackupArgs;
    import com.pulumi.azure.backup.inputs.PolicyVMWorkloadProtectionPolicyRetentionDailyArgs;
    import com.pulumi.azure.backup.inputs.PolicyVMWorkloadProtectionPolicySimpleRetentionArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new ResourceGroup("example", ResourceGroupArgs.builder()        
                .name("example-bpvmw")
                .location("West Europe")
                .build());
    
            var exampleVault = new Vault("exampleVault", VaultArgs.builder()        
                .name("example-rsv")
                .location(example.location())
                .resourceGroupName(example.name())
                .sku("Standard")
                .softDeleteEnabled(false)
                .build());
    
            var examplePolicyVMWorkload = new PolicyVMWorkload("examplePolicyVMWorkload", PolicyVMWorkloadArgs.builder()        
                .name("example-bpvmw")
                .resourceGroupName(example.name())
                .recoveryVaultName(exampleVault.name())
                .workloadType("SQLDataBase")
                .settings(PolicyVMWorkloadSettingsArgs.builder()
                    .timeZone("UTC")
                    .compressionEnabled(false)
                    .build())
                .protectionPolicies(            
                    PolicyVMWorkloadProtectionPolicyArgs.builder()
                        .policyType("Full")
                        .backup(PolicyVMWorkloadProtectionPolicyBackupArgs.builder()
                            .frequency("Daily")
                            .time("15:00")
                            .build())
                        .retentionDaily(PolicyVMWorkloadProtectionPolicyRetentionDailyArgs.builder()
                            .count(8)
                            .build())
                        .build(),
                    PolicyVMWorkloadProtectionPolicyArgs.builder()
                        .policyType("Log")
                        .backup(PolicyVMWorkloadProtectionPolicyBackupArgs.builder()
                            .frequencyInMinutes(15)
                            .build())
                        .simpleRetention(PolicyVMWorkloadProtectionPolicySimpleRetentionArgs.builder()
                            .count(8)
                            .build())
                        .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-bpvmw
          location: West Europe
      exampleVault:
        type: azure:recoveryservices:Vault
        name: example
        properties:
          name: example-rsv
          location: ${example.location}
          resourceGroupName: ${example.name}
          sku: Standard
          softDeleteEnabled: false
      examplePolicyVMWorkload:
        type: azure:backup:PolicyVMWorkload
        name: example
        properties:
          name: example-bpvmw
          resourceGroupName: ${example.name}
          recoveryVaultName: ${exampleVault.name}
          workloadType: SQLDataBase
          settings:
            timeZone: UTC
            compressionEnabled: false
          protectionPolicies:
            - policyType: Full
              backup:
                frequency: Daily
                time: 15:00
              retentionDaily:
                count: 8
            - policyType: Log
              backup:
                frequencyInMinutes: 15
              simpleRetention:
                count: 8
    

    Create PolicyVMWorkload Resource

    new PolicyVMWorkload(name: string, args: PolicyVMWorkloadArgs, opts?: CustomResourceOptions);
    @overload
    def PolicyVMWorkload(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         name: Optional[str] = None,
                         protection_policies: Optional[Sequence[PolicyVMWorkloadProtectionPolicyArgs]] = None,
                         recovery_vault_name: Optional[str] = None,
                         resource_group_name: Optional[str] = None,
                         settings: Optional[PolicyVMWorkloadSettingsArgs] = None,
                         workload_type: Optional[str] = None)
    @overload
    def PolicyVMWorkload(resource_name: str,
                         args: PolicyVMWorkloadArgs,
                         opts: Optional[ResourceOptions] = None)
    func NewPolicyVMWorkload(ctx *Context, name string, args PolicyVMWorkloadArgs, opts ...ResourceOption) (*PolicyVMWorkload, error)
    public PolicyVMWorkload(string name, PolicyVMWorkloadArgs args, CustomResourceOptions? opts = null)
    public PolicyVMWorkload(String name, PolicyVMWorkloadArgs args)
    public PolicyVMWorkload(String name, PolicyVMWorkloadArgs args, CustomResourceOptions options)
    
    type: azure:backup:PolicyVMWorkload
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args PolicyVMWorkloadArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args PolicyVMWorkloadArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args PolicyVMWorkloadArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args PolicyVMWorkloadArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args PolicyVMWorkloadArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    PolicyVMWorkload Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The PolicyVMWorkload resource accepts the following input properties:

    ProtectionPolicies List<PolicyVMWorkloadProtectionPolicy>
    One or more protection_policy blocks as defined below.
    RecoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    ResourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    Settings PolicyVMWorkloadSettings
    A settings block as defined below.
    WorkloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    Name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    ProtectionPolicies []PolicyVMWorkloadProtectionPolicyArgs
    One or more protection_policy blocks as defined below.
    RecoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    ResourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    Settings PolicyVMWorkloadSettingsArgs
    A settings block as defined below.
    WorkloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    Name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies List<PolicyVMWorkloadProtectionPolicy>
    One or more protection_policy blocks as defined below.
    recoveryVaultName String
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName String
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettings
    A settings block as defined below.
    workloadType String
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name String
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies PolicyVMWorkloadProtectionPolicy[]
    One or more protection_policy blocks as defined below.
    recoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettings
    A settings block as defined below.
    workloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protection_policies Sequence[PolicyVMWorkloadProtectionPolicyArgs]
    One or more protection_policy blocks as defined below.
    recovery_vault_name str
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resource_group_name str
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettingsArgs
    A settings block as defined below.
    workload_type str
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name str
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies List<Property Map>
    One or more protection_policy blocks as defined below.
    recoveryVaultName String
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName String
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings Property Map
    A settings block as defined below.
    workloadType String
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name String
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the PolicyVMWorkload resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing PolicyVMWorkload Resource

    Get an existing PolicyVMWorkload resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: PolicyVMWorkloadState, opts?: CustomResourceOptions): PolicyVMWorkload
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            name: Optional[str] = None,
            protection_policies: Optional[Sequence[PolicyVMWorkloadProtectionPolicyArgs]] = None,
            recovery_vault_name: Optional[str] = None,
            resource_group_name: Optional[str] = None,
            settings: Optional[PolicyVMWorkloadSettingsArgs] = None,
            workload_type: Optional[str] = None) -> PolicyVMWorkload
    func GetPolicyVMWorkload(ctx *Context, name string, id IDInput, state *PolicyVMWorkloadState, opts ...ResourceOption) (*PolicyVMWorkload, error)
    public static PolicyVMWorkload Get(string name, Input<string> id, PolicyVMWorkloadState? state, CustomResourceOptions? opts = null)
    public static PolicyVMWorkload get(String name, Output<String> id, PolicyVMWorkloadState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    ProtectionPolicies List<PolicyVMWorkloadProtectionPolicy>
    One or more protection_policy blocks as defined below.
    RecoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    ResourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    Settings PolicyVMWorkloadSettings
    A settings block as defined below.
    WorkloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    Name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    ProtectionPolicies []PolicyVMWorkloadProtectionPolicyArgs
    One or more protection_policy blocks as defined below.
    RecoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    ResourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    Settings PolicyVMWorkloadSettingsArgs
    A settings block as defined below.
    WorkloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name String
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies List<PolicyVMWorkloadProtectionPolicy>
    One or more protection_policy blocks as defined below.
    recoveryVaultName String
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName String
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettings
    A settings block as defined below.
    workloadType String
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name string
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies PolicyVMWorkloadProtectionPolicy[]
    One or more protection_policy blocks as defined below.
    recoveryVaultName string
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName string
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettings
    A settings block as defined below.
    workloadType string
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name str
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protection_policies Sequence[PolicyVMWorkloadProtectionPolicyArgs]
    One or more protection_policy blocks as defined below.
    recovery_vault_name str
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resource_group_name str
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings PolicyVMWorkloadSettingsArgs
    A settings block as defined below.
    workload_type str
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.
    name String
    The name of the VM Workload Backup Policy. Changing this forces a new resource to be created.
    protectionPolicies List<Property Map>
    One or more protection_policy blocks as defined below.
    recoveryVaultName String
    The name of the Recovery Services Vault to use. Changing this forces a new resource to be created.
    resourceGroupName String
    The name of the resource group in which to create the VM Workload Backup Policy. Changing this forces a new resource to be created.
    settings Property Map
    A settings block as defined below.
    workloadType String
    The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created.

    Supporting Types

    PolicyVMWorkloadProtectionPolicy, PolicyVMWorkloadProtectionPolicyArgs

    Backup PolicyVMWorkloadProtectionPolicyBackup
    A backup block as defined below.
    PolicyType string
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    RetentionDaily PolicyVMWorkloadProtectionPolicyRetentionDaily
    A retention_daily block as defined below.
    RetentionMonthly PolicyVMWorkloadProtectionPolicyRetentionMonthly
    A retention_monthly block as defined below.
    RetentionWeekly PolicyVMWorkloadProtectionPolicyRetentionWeekly
    A retention_weekly block as defined below.
    RetentionYearly PolicyVMWorkloadProtectionPolicyRetentionYearly
    A retention_yearly block as defined below.
    SimpleRetention PolicyVMWorkloadProtectionPolicySimpleRetention
    A simple_retention block as defined below.
    Backup PolicyVMWorkloadProtectionPolicyBackup
    A backup block as defined below.
    PolicyType string
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    RetentionDaily PolicyVMWorkloadProtectionPolicyRetentionDaily
    A retention_daily block as defined below.
    RetentionMonthly PolicyVMWorkloadProtectionPolicyRetentionMonthly
    A retention_monthly block as defined below.
    RetentionWeekly PolicyVMWorkloadProtectionPolicyRetentionWeekly
    A retention_weekly block as defined below.
    RetentionYearly PolicyVMWorkloadProtectionPolicyRetentionYearly
    A retention_yearly block as defined below.
    SimpleRetention PolicyVMWorkloadProtectionPolicySimpleRetention
    A simple_retention block as defined below.
    backup PolicyVMWorkloadProtectionPolicyBackup
    A backup block as defined below.
    policyType String
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    retentionDaily PolicyVMWorkloadProtectionPolicyRetentionDaily
    A retention_daily block as defined below.
    retentionMonthly PolicyVMWorkloadProtectionPolicyRetentionMonthly
    A retention_monthly block as defined below.
    retentionWeekly PolicyVMWorkloadProtectionPolicyRetentionWeekly
    A retention_weekly block as defined below.
    retentionYearly PolicyVMWorkloadProtectionPolicyRetentionYearly
    A retention_yearly block as defined below.
    simpleRetention PolicyVMWorkloadProtectionPolicySimpleRetention
    A simple_retention block as defined below.
    backup PolicyVMWorkloadProtectionPolicyBackup
    A backup block as defined below.
    policyType string
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    retentionDaily PolicyVMWorkloadProtectionPolicyRetentionDaily
    A retention_daily block as defined below.
    retentionMonthly PolicyVMWorkloadProtectionPolicyRetentionMonthly
    A retention_monthly block as defined below.
    retentionWeekly PolicyVMWorkloadProtectionPolicyRetentionWeekly
    A retention_weekly block as defined below.
    retentionYearly PolicyVMWorkloadProtectionPolicyRetentionYearly
    A retention_yearly block as defined below.
    simpleRetention PolicyVMWorkloadProtectionPolicySimpleRetention
    A simple_retention block as defined below.
    backup PolicyVMWorkloadProtectionPolicyBackup
    A backup block as defined below.
    policy_type str
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    retention_daily PolicyVMWorkloadProtectionPolicyRetentionDaily
    A retention_daily block as defined below.
    retention_monthly PolicyVMWorkloadProtectionPolicyRetentionMonthly
    A retention_monthly block as defined below.
    retention_weekly PolicyVMWorkloadProtectionPolicyRetentionWeekly
    A retention_weekly block as defined below.
    retention_yearly PolicyVMWorkloadProtectionPolicyRetentionYearly
    A retention_yearly block as defined below.
    simple_retention PolicyVMWorkloadProtectionPolicySimpleRetention
    A simple_retention block as defined below.
    backup Property Map
    A backup block as defined below.
    policyType String
    The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log.
    retentionDaily Property Map
    A retention_daily block as defined below.
    retentionMonthly Property Map
    A retention_monthly block as defined below.
    retentionWeekly Property Map
    A retention_weekly block as defined below.
    retentionYearly Property Map
    A retention_yearly block as defined below.
    simpleRetention Property Map
    A simple_retention block as defined below.

    PolicyVMWorkloadProtectionPolicyBackup, PolicyVMWorkloadProtectionPolicyBackupArgs

    Frequency string
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    FrequencyInMinutes int
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    Time string
    The time of day to perform the backup in 24hour format.
    Weekdays List<string>
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.
    Frequency string
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    FrequencyInMinutes int
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    Time string
    The time of day to perform the backup in 24hour format.
    Weekdays []string
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.
    frequency String
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    frequencyInMinutes Integer
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    time String
    The time of day to perform the backup in 24hour format.
    weekdays List<String>
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.
    frequency string
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    frequencyInMinutes number
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    time string
    The time of day to perform the backup in 24hour format.
    weekdays string[]
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.
    frequency str
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    frequency_in_minutes int
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    time str
    The time of day to perform the backup in 24hour format.
    weekdays Sequence[str]
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.
    frequency String
    The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly.
    frequencyInMinutes Number
    The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440.
    time String
    The time of day to perform the backup in 24hour format.
    weekdays List<String>
    The days of the week to perform backups on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly.

    PolicyVMWorkloadProtectionPolicyRetentionDaily, PolicyVMWorkloadProtectionPolicyRetentionDailyArgs

    Count int
    The number of daily backups to keep. Possible values are between 7 and 9999.
    Count int
    The number of daily backups to keep. Possible values are between 7 and 9999.
    count Integer
    The number of daily backups to keep. Possible values are between 7 and 9999.
    count number
    The number of daily backups to keep. Possible values are between 7 and 9999.
    count int
    The number of daily backups to keep. Possible values are between 7 and 9999.
    count Number
    The number of daily backups to keep. Possible values are between 7 and 9999.

    PolicyVMWorkloadProtectionPolicyRetentionMonthly, PolicyVMWorkloadProtectionPolicyRetentionMonthlyArgs

    Count int
    The number of monthly backups to keep. Must be between 1 and 1188.
    FormatType string
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    Monthdays List<int>
    The monthday backups to retain. Possible values are between 0 and 28.
    Weekdays List<string>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    Weeks List<string>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.
    Count int
    The number of monthly backups to keep. Must be between 1 and 1188.
    FormatType string
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    Monthdays []int
    The monthday backups to retain. Possible values are between 0 and 28.
    Weekdays []string
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    Weeks []string
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.
    count Integer
    The number of monthly backups to keep. Must be between 1 and 1188.
    formatType String
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    monthdays List<Integer>
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks List<String>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.
    count number
    The number of monthly backups to keep. Must be between 1 and 1188.
    formatType string
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    monthdays number[]
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays string[]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks string[]
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.
    count int
    The number of monthly backups to keep. Must be between 1 and 1188.
    format_type str
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    monthdays Sequence[int]
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays Sequence[str]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks Sequence[str]
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.
    count Number
    The number of monthly backups to keep. Must be between 1 and 1188.
    formatType String
    The retention schedule format type for monthly retention policy. Possible values are Daily and Weekly.
    monthdays List<Number>
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks List<String>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth and Last.

    PolicyVMWorkloadProtectionPolicyRetentionWeekly, PolicyVMWorkloadProtectionPolicyRetentionWeeklyArgs

    Count int
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    Weekdays List<string>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    Count int
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    Weekdays []string
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    count Integer
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    count number
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    weekdays string[]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    count int
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    weekdays Sequence[str]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    count Number
    The number of weekly backups to keep. Possible values are between 1 and 5163.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.

    PolicyVMWorkloadProtectionPolicyRetentionYearly, PolicyVMWorkloadProtectionPolicyRetentionYearlyArgs

    Count int
    The number of yearly backups to keep. Possible values are between 1 and 99
    FormatType string
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    Months List<string>
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    Monthdays List<int>
    The monthday backups to retain. Possible values are between 0 and 28.
    Weekdays List<string>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    Weeks List<string>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.
    Count int
    The number of yearly backups to keep. Possible values are between 1 and 99
    FormatType string
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    Months []string
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    Monthdays []int
    The monthday backups to retain. Possible values are between 0 and 28.
    Weekdays []string
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    Weeks []string
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.
    count Integer
    The number of yearly backups to keep. Possible values are between 1 and 99
    formatType String
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    months List<String>
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    monthdays List<Integer>
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks List<String>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.
    count number
    The number of yearly backups to keep. Possible values are between 1 and 99
    formatType string
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    months string[]
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    monthdays number[]
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays string[]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks string[]
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.
    count int
    The number of yearly backups to keep. Possible values are between 1 and 99
    format_type str
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    months Sequence[str]
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    monthdays Sequence[int]
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays Sequence[str]
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks Sequence[str]
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.
    count Number
    The number of yearly backups to keep. Possible values are between 1 and 99
    formatType String
    The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly.
    months List<String>
    The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December.
    monthdays List<Number>
    The monthday backups to retain. Possible values are between 0 and 28.
    weekdays List<String>
    The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday.
    weeks List<String>
    The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last.

    PolicyVMWorkloadProtectionPolicySimpleRetention, PolicyVMWorkloadProtectionPolicySimpleRetentionArgs

    Count int
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.
    Count int
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.
    count Integer
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.
    count number
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.
    count int
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.
    count Number
    The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35.

    PolicyVMWorkloadSettings, PolicyVMWorkloadSettingsArgs

    TimeZone string
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    CompressionEnabled bool
    The compression setting for the VM Workload Backup Policy. Defaults to false.
    TimeZone string
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    CompressionEnabled bool
    The compression setting for the VM Workload Backup Policy. Defaults to false.
    timeZone String
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    compressionEnabled Boolean
    The compression setting for the VM Workload Backup Policy. Defaults to false.
    timeZone string
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    compressionEnabled boolean
    The compression setting for the VM Workload Backup Policy. Defaults to false.
    time_zone str
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    compression_enabled bool
    The compression setting for the VM Workload Backup Policy. Defaults to false.
    timeZone String
    The timezone for the VM Workload Backup Policy. The possible values are defined here.
    compressionEnabled Boolean
    The compression setting for the VM Workload Backup Policy. Defaults to false.

    Import

    Azure VM Workload Backup Policies can be imported using the resource id, e.g.

    $ pulumi import azure:backup/policyVMWorkload:PolicyVMWorkload policy1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.RecoveryServices/vaults/vault1/backupPolicies/policy1
    

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi