Documentation ¶
Index ¶
- type Fabric
- type FabricArgs
- type FabricArray
- type FabricArrayInput
- type FabricArrayOutput
- type FabricInput
- type FabricMap
- type FabricMapInput
- type FabricMapOutput
- type FabricOutput
- type FabricState
- type LookupFabricArgs
- type LookupFabricOutputArgs
- type LookupFabricResult
- type LookupFabricResultOutput
- func (LookupFabricResultOutput) ElementType() reflect.Type
- func (o LookupFabricResultOutput) Id() pulumi.StringOutput
- func (o LookupFabricResultOutput) Location() pulumi.StringOutput
- func (o LookupFabricResultOutput) Name() pulumi.StringOutput
- func (o LookupFabricResultOutput) RecoveryVaultName() pulumi.StringOutput
- func (o LookupFabricResultOutput) ResourceGroupName() pulumi.StringOutput
- func (o LookupFabricResultOutput) ToLookupFabricResultOutput() LookupFabricResultOutput
- func (o LookupFabricResultOutput) ToLookupFabricResultOutputWithContext(ctx context.Context) LookupFabricResultOutput
- type LookupProtectionContainerArgs
- type LookupProtectionContainerOutputArgs
- type LookupProtectionContainerResult
- type LookupProtectionContainerResultOutput
- func (LookupProtectionContainerResultOutput) ElementType() reflect.Type
- func (o LookupProtectionContainerResultOutput) Id() pulumi.StringOutput
- func (o LookupProtectionContainerResultOutput) Name() pulumi.StringOutput
- func (o LookupProtectionContainerResultOutput) RecoveryFabricName() pulumi.StringOutput
- func (o LookupProtectionContainerResultOutput) RecoveryVaultName() pulumi.StringOutput
- func (o LookupProtectionContainerResultOutput) ResourceGroupName() pulumi.StringOutput
- func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutput() LookupProtectionContainerResultOutput
- func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutputWithContext(ctx context.Context) LookupProtectionContainerResultOutput
- type LookupReplicationPolicyArgs
- type LookupReplicationPolicyOutputArgs
- type LookupReplicationPolicyResult
- type LookupReplicationPolicyResultOutput
- func (o LookupReplicationPolicyResultOutput) ApplicationConsistentSnapshotFrequencyInMinutes() pulumi.IntOutput
- func (LookupReplicationPolicyResultOutput) ElementType() reflect.Type
- func (o LookupReplicationPolicyResultOutput) Id() pulumi.StringOutput
- func (o LookupReplicationPolicyResultOutput) Name() pulumi.StringOutput
- func (o LookupReplicationPolicyResultOutput) RecoveryPointRetentionInMinutes() pulumi.IntOutput
- func (o LookupReplicationPolicyResultOutput) RecoveryVaultName() pulumi.StringOutput
- func (o LookupReplicationPolicyResultOutput) ResourceGroupName() pulumi.StringOutput
- func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutput() LookupReplicationPolicyResultOutput
- func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutputWithContext(ctx context.Context) LookupReplicationPolicyResultOutput
- type NetworkMapping
- type NetworkMappingArgs
- type NetworkMappingArray
- type NetworkMappingArrayInput
- type NetworkMappingArrayOutput
- func (NetworkMappingArrayOutput) ElementType() reflect.Type
- func (o NetworkMappingArrayOutput) Index(i pulumi.IntInput) NetworkMappingOutput
- func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutput() NetworkMappingArrayOutput
- func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutputWithContext(ctx context.Context) NetworkMappingArrayOutput
- type NetworkMappingInput
- type NetworkMappingMap
- type NetworkMappingMapInput
- type NetworkMappingMapOutput
- func (NetworkMappingMapOutput) ElementType() reflect.Type
- func (o NetworkMappingMapOutput) MapIndex(k pulumi.StringInput) NetworkMappingOutput
- func (o NetworkMappingMapOutput) ToNetworkMappingMapOutput() NetworkMappingMapOutput
- func (o NetworkMappingMapOutput) ToNetworkMappingMapOutputWithContext(ctx context.Context) NetworkMappingMapOutput
- type NetworkMappingOutput
- type NetworkMappingState
- type ProtectionContainer
- type ProtectionContainerArgs
- type ProtectionContainerArray
- type ProtectionContainerArrayInput
- type ProtectionContainerArrayOutput
- func (ProtectionContainerArrayOutput) ElementType() reflect.Type
- func (o ProtectionContainerArrayOutput) Index(i pulumi.IntInput) ProtectionContainerOutput
- func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput
- func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutputWithContext(ctx context.Context) ProtectionContainerArrayOutput
- type ProtectionContainerInput
- type ProtectionContainerMap
- type ProtectionContainerMapInput
- type ProtectionContainerMapOutput
- func (ProtectionContainerMapOutput) ElementType() reflect.Type
- func (o ProtectionContainerMapOutput) MapIndex(k pulumi.StringInput) ProtectionContainerOutput
- func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutput() ProtectionContainerMapOutput
- func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutputWithContext(ctx context.Context) ProtectionContainerMapOutput
- type ProtectionContainerMapping
- func (*ProtectionContainerMapping) ElementType() reflect.Type
- func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput
- func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput
- type ProtectionContainerMappingArgs
- type ProtectionContainerMappingArray
- func (ProtectionContainerMappingArray) ElementType() reflect.Type
- func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput
- func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput
- type ProtectionContainerMappingArrayInput
- type ProtectionContainerMappingArrayOutput
- func (ProtectionContainerMappingArrayOutput) ElementType() reflect.Type
- func (o ProtectionContainerMappingArrayOutput) Index(i pulumi.IntInput) ProtectionContainerMappingOutput
- func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput
- func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput
- type ProtectionContainerMappingInput
- type ProtectionContainerMappingMap
- func (ProtectionContainerMappingMap) ElementType() reflect.Type
- func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput
- func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput
- type ProtectionContainerMappingMapInput
- type ProtectionContainerMappingMapOutput
- func (ProtectionContainerMappingMapOutput) ElementType() reflect.Type
- func (o ProtectionContainerMappingMapOutput) MapIndex(k pulumi.StringInput) ProtectionContainerMappingOutput
- func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput
- func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput
- type ProtectionContainerMappingOutput
- func (ProtectionContainerMappingOutput) ElementType() reflect.Type
- func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput
- func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput
- type ProtectionContainerMappingState
- type ProtectionContainerOutput
- type ProtectionContainerState
- type ReplicatedVM
- type ReplicatedVMArgs
- type ReplicatedVMArray
- type ReplicatedVMArrayInput
- type ReplicatedVMArrayOutput
- func (ReplicatedVMArrayOutput) ElementType() reflect.Type
- func (o ReplicatedVMArrayOutput) Index(i pulumi.IntInput) ReplicatedVMOutput
- func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput
- func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutputWithContext(ctx context.Context) ReplicatedVMArrayOutput
- type ReplicatedVMInput
- type ReplicatedVMManagedDisk
- type ReplicatedVMManagedDiskArgs
- type ReplicatedVMManagedDiskArray
- func (ReplicatedVMManagedDiskArray) ElementType() reflect.Type
- func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput
- func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput
- type ReplicatedVMManagedDiskArrayInput
- type ReplicatedVMManagedDiskArrayOutput
- func (ReplicatedVMManagedDiskArrayOutput) ElementType() reflect.Type
- func (o ReplicatedVMManagedDiskArrayOutput) Index(i pulumi.IntInput) ReplicatedVMManagedDiskOutput
- func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput
- func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput
- type ReplicatedVMManagedDiskInput
- type ReplicatedVMManagedDiskOutput
- func (o ReplicatedVMManagedDiskOutput) DiskId() pulumi.StringOutput
- func (ReplicatedVMManagedDiskOutput) ElementType() reflect.Type
- func (o ReplicatedVMManagedDiskOutput) StagingStorageAccountId() pulumi.StringOutput
- func (o ReplicatedVMManagedDiskOutput) TargetDiskEncryptionSetId() pulumi.StringPtrOutput
- func (o ReplicatedVMManagedDiskOutput) TargetDiskType() pulumi.StringOutput
- func (o ReplicatedVMManagedDiskOutput) TargetReplicaDiskType() pulumi.StringOutput
- func (o ReplicatedVMManagedDiskOutput) TargetResourceGroupId() pulumi.StringOutput
- func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput
- func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskOutput
- type ReplicatedVMMap
- type ReplicatedVMMapInput
- type ReplicatedVMMapOutput
- func (ReplicatedVMMapOutput) ElementType() reflect.Type
- func (o ReplicatedVMMapOutput) MapIndex(k pulumi.StringInput) ReplicatedVMOutput
- func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutput() ReplicatedVMMapOutput
- func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutputWithContext(ctx context.Context) ReplicatedVMMapOutput
- type ReplicatedVMNetworkInterface
- type ReplicatedVMNetworkInterfaceArgs
- func (ReplicatedVMNetworkInterfaceArgs) ElementType() reflect.Type
- func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput
- func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput
- type ReplicatedVMNetworkInterfaceArray
- func (ReplicatedVMNetworkInterfaceArray) ElementType() reflect.Type
- func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput
- func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput
- type ReplicatedVMNetworkInterfaceArrayInput
- type ReplicatedVMNetworkInterfaceArrayOutput
- func (ReplicatedVMNetworkInterfaceArrayOutput) ElementType() reflect.Type
- func (o ReplicatedVMNetworkInterfaceArrayOutput) Index(i pulumi.IntInput) ReplicatedVMNetworkInterfaceOutput
- func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput
- func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput
- type ReplicatedVMNetworkInterfaceInput
- type ReplicatedVMNetworkInterfaceOutput
- func (ReplicatedVMNetworkInterfaceOutput) ElementType() reflect.Type
- func (o ReplicatedVMNetworkInterfaceOutput) RecoveryPublicIpAddressId() pulumi.StringPtrOutput
- func (o ReplicatedVMNetworkInterfaceOutput) SourceNetworkInterfaceId() pulumi.StringPtrOutput
- func (o ReplicatedVMNetworkInterfaceOutput) TargetStaticIp() pulumi.StringPtrOutput
- func (o ReplicatedVMNetworkInterfaceOutput) TargetSubnetName() pulumi.StringPtrOutput
- func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput
- func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput
- type ReplicatedVMOutput
- type ReplicatedVMState
- type ReplicationPolicy
- type ReplicationPolicyArgs
- type ReplicationPolicyArray
- type ReplicationPolicyArrayInput
- type ReplicationPolicyArrayOutput
- func (ReplicationPolicyArrayOutput) ElementType() reflect.Type
- func (o ReplicationPolicyArrayOutput) Index(i pulumi.IntInput) ReplicationPolicyOutput
- func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput
- func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutputWithContext(ctx context.Context) ReplicationPolicyArrayOutput
- type ReplicationPolicyInput
- type ReplicationPolicyMap
- type ReplicationPolicyMapInput
- type ReplicationPolicyMapOutput
- func (ReplicationPolicyMapOutput) ElementType() reflect.Type
- func (o ReplicationPolicyMapOutput) MapIndex(k pulumi.StringInput) ReplicationPolicyOutput
- func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput
- func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutputWithContext(ctx context.Context) ReplicationPolicyMapOutput
- type ReplicationPolicyOutput
- type ReplicationPolicyState
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Fabric ¶
type Fabric struct { pulumi.CustomResourceState // In what region should the fabric be located. Location pulumi.StringOutput `pulumi:"location"` // The name of the network mapping. Name pulumi.StringOutput `pulumi:"name"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` }
Manages a Azure Site Recovery Replication Fabric within a Recovery Services vault. Only Azure fabrics are supported at this time. Replication Fabrics serve as a container within an Azure region for other Site Recovery resources such as protection containers, protected items, network mappings.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { primary, err := core.NewResourceGroup(ctx, "primary", &core.ResourceGroupArgs{ Location: pulumi.String("West US"), }) if err != nil { return err } secondary, err := core.NewResourceGroup(ctx, "secondary", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondary.Location, ResourceGroupName: secondary.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } _, err = siterecovery.NewFabric(ctx, "fabric", &siterecovery.FabricArgs{ ResourceGroupName: secondary.Name, RecoveryVaultName: vault.Name, Location: primary.Location, }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Fabric can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/fabric:Fabric myfabric /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name
```
func GetFabric ¶
func GetFabric(ctx *pulumi.Context, name string, id pulumi.IDInput, state *FabricState, opts ...pulumi.ResourceOption) (*Fabric, error)
GetFabric gets an existing Fabric resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewFabric ¶
func NewFabric(ctx *pulumi.Context, name string, args *FabricArgs, opts ...pulumi.ResourceOption) (*Fabric, error)
NewFabric registers a new resource with the given unique name, arguments, and options.
func (*Fabric) ElementType ¶
func (*Fabric) ToFabricOutput ¶
func (i *Fabric) ToFabricOutput() FabricOutput
func (*Fabric) ToFabricOutputWithContext ¶
func (i *Fabric) ToFabricOutputWithContext(ctx context.Context) FabricOutput
type FabricArgs ¶
type FabricArgs struct { // In what region should the fabric be located. Location pulumi.StringPtrInput // The name of the network mapping. Name pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput }
The set of arguments for constructing a Fabric resource.
func (FabricArgs) ElementType ¶
func (FabricArgs) ElementType() reflect.Type
type FabricArray ¶
type FabricArray []FabricInput
func (FabricArray) ElementType ¶
func (FabricArray) ElementType() reflect.Type
func (FabricArray) ToFabricArrayOutput ¶
func (i FabricArray) ToFabricArrayOutput() FabricArrayOutput
func (FabricArray) ToFabricArrayOutputWithContext ¶
func (i FabricArray) ToFabricArrayOutputWithContext(ctx context.Context) FabricArrayOutput
type FabricArrayInput ¶
type FabricArrayInput interface { pulumi.Input ToFabricArrayOutput() FabricArrayOutput ToFabricArrayOutputWithContext(context.Context) FabricArrayOutput }
FabricArrayInput is an input type that accepts FabricArray and FabricArrayOutput values. You can construct a concrete instance of `FabricArrayInput` via:
FabricArray{ FabricArgs{...} }
type FabricArrayOutput ¶
type FabricArrayOutput struct{ *pulumi.OutputState }
func (FabricArrayOutput) ElementType ¶
func (FabricArrayOutput) ElementType() reflect.Type
func (FabricArrayOutput) Index ¶
func (o FabricArrayOutput) Index(i pulumi.IntInput) FabricOutput
func (FabricArrayOutput) ToFabricArrayOutput ¶
func (o FabricArrayOutput) ToFabricArrayOutput() FabricArrayOutput
func (FabricArrayOutput) ToFabricArrayOutputWithContext ¶
func (o FabricArrayOutput) ToFabricArrayOutputWithContext(ctx context.Context) FabricArrayOutput
type FabricInput ¶
type FabricInput interface { pulumi.Input ToFabricOutput() FabricOutput ToFabricOutputWithContext(ctx context.Context) FabricOutput }
type FabricMap ¶
type FabricMap map[string]FabricInput
func (FabricMap) ElementType ¶
func (FabricMap) ToFabricMapOutput ¶
func (i FabricMap) ToFabricMapOutput() FabricMapOutput
func (FabricMap) ToFabricMapOutputWithContext ¶
func (i FabricMap) ToFabricMapOutputWithContext(ctx context.Context) FabricMapOutput
type FabricMapInput ¶
type FabricMapInput interface { pulumi.Input ToFabricMapOutput() FabricMapOutput ToFabricMapOutputWithContext(context.Context) FabricMapOutput }
FabricMapInput is an input type that accepts FabricMap and FabricMapOutput values. You can construct a concrete instance of `FabricMapInput` via:
FabricMap{ "key": FabricArgs{...} }
type FabricMapOutput ¶
type FabricMapOutput struct{ *pulumi.OutputState }
func (FabricMapOutput) ElementType ¶
func (FabricMapOutput) ElementType() reflect.Type
func (FabricMapOutput) MapIndex ¶
func (o FabricMapOutput) MapIndex(k pulumi.StringInput) FabricOutput
func (FabricMapOutput) ToFabricMapOutput ¶
func (o FabricMapOutput) ToFabricMapOutput() FabricMapOutput
func (FabricMapOutput) ToFabricMapOutputWithContext ¶
func (o FabricMapOutput) ToFabricMapOutputWithContext(ctx context.Context) FabricMapOutput
type FabricOutput ¶
type FabricOutput struct{ *pulumi.OutputState }
func (FabricOutput) ElementType ¶
func (FabricOutput) ElementType() reflect.Type
func (FabricOutput) ToFabricOutput ¶
func (o FabricOutput) ToFabricOutput() FabricOutput
func (FabricOutput) ToFabricOutputWithContext ¶
func (o FabricOutput) ToFabricOutputWithContext(ctx context.Context) FabricOutput
type FabricState ¶
type FabricState struct { // In what region should the fabric be located. Location pulumi.StringPtrInput // The name of the network mapping. Name pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput }
func (FabricState) ElementType ¶
func (FabricState) ElementType() reflect.Type
type LookupFabricArgs ¶ added in v4.38.0
type LookupFabricArgs struct { // Specifies the name of the Site Recovery Replication Fabric. Name string `pulumi:"name"` // The name of the Recovery Services Vault that the Site Recovery Replication Fabric is associated witth. RecoveryVaultName string `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated Recovery Services Vault resides. ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getFabric.
type LookupFabricOutputArgs ¶ added in v4.38.0
type LookupFabricOutputArgs struct { // Specifies the name of the Site Recovery Replication Fabric. Name pulumi.StringInput `pulumi:"name"` // The name of the Recovery Services Vault that the Site Recovery Replication Fabric is associated witth. RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated Recovery Services Vault resides. ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getFabric.
func (LookupFabricOutputArgs) ElementType ¶ added in v4.38.0
func (LookupFabricOutputArgs) ElementType() reflect.Type
type LookupFabricResult ¶ added in v4.38.0
type LookupFabricResult struct { // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` // The Azure location where the Site Recovery Replication Fabric resides. Location string `pulumi:"location"` Name string `pulumi:"name"` RecoveryVaultName string `pulumi:"recoveryVaultName"` ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of values returned by getFabric.
func LookupFabric ¶ added in v4.38.0
func LookupFabric(ctx *pulumi.Context, args *LookupFabricArgs, opts ...pulumi.InvokeOption) (*LookupFabricResult, error)
Use this data source to access information about an existing Site Recovery Replication Fabric.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := siterecovery.LookupFabric(ctx, &siterecovery.LookupFabricArgs{ Name: "primary-fabric", RecoveryVaultName: "tfex-recovery_vault", ResourceGroupName: "tfex-resource_group", }, nil) if err != nil { return err } return nil }) }
```
type LookupFabricResultOutput ¶ added in v4.38.0
type LookupFabricResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getFabric.
func LookupFabricOutput ¶ added in v4.38.0
func LookupFabricOutput(ctx *pulumi.Context, args LookupFabricOutputArgs, opts ...pulumi.InvokeOption) LookupFabricResultOutput
func (LookupFabricResultOutput) ElementType ¶ added in v4.38.0
func (LookupFabricResultOutput) ElementType() reflect.Type
func (LookupFabricResultOutput) Id ¶ added in v4.38.0
func (o LookupFabricResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupFabricResultOutput) Location ¶ added in v4.38.0
func (o LookupFabricResultOutput) Location() pulumi.StringOutput
The Azure location where the Site Recovery Replication Fabric resides.
func (LookupFabricResultOutput) Name ¶ added in v4.38.0
func (o LookupFabricResultOutput) Name() pulumi.StringOutput
func (LookupFabricResultOutput) RecoveryVaultName ¶ added in v4.38.0
func (o LookupFabricResultOutput) RecoveryVaultName() pulumi.StringOutput
func (LookupFabricResultOutput) ResourceGroupName ¶ added in v4.38.0
func (o LookupFabricResultOutput) ResourceGroupName() pulumi.StringOutput
func (LookupFabricResultOutput) ToLookupFabricResultOutput ¶ added in v4.38.0
func (o LookupFabricResultOutput) ToLookupFabricResultOutput() LookupFabricResultOutput
func (LookupFabricResultOutput) ToLookupFabricResultOutputWithContext ¶ added in v4.38.0
func (o LookupFabricResultOutput) ToLookupFabricResultOutputWithContext(ctx context.Context) LookupFabricResultOutput
type LookupProtectionContainerArgs ¶ added in v4.38.0
type LookupProtectionContainerArgs struct { // Specifies the name of the protection container. Name string `pulumi:"name"` // The name of the fabric that contains the protection container. RecoveryFabricName string `pulumi:"recoveryFabricName"` // The name of the Recovery Services Vault that the protection container is associated witth. RecoveryVaultName string `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated protection container resides. ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getProtectionContainer.
type LookupProtectionContainerOutputArgs ¶ added in v4.38.0
type LookupProtectionContainerOutputArgs struct { // Specifies the name of the protection container. Name pulumi.StringInput `pulumi:"name"` // The name of the fabric that contains the protection container. RecoveryFabricName pulumi.StringInput `pulumi:"recoveryFabricName"` // The name of the Recovery Services Vault that the protection container is associated witth. RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated protection container resides. ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getProtectionContainer.
func (LookupProtectionContainerOutputArgs) ElementType ¶ added in v4.38.0
func (LookupProtectionContainerOutputArgs) ElementType() reflect.Type
type LookupProtectionContainerResult ¶ added in v4.38.0
type LookupProtectionContainerResult struct { // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name string `pulumi:"name"` RecoveryFabricName string `pulumi:"recoveryFabricName"` RecoveryVaultName string `pulumi:"recoveryVaultName"` ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of values returned by getProtectionContainer.
func LookupProtectionContainer ¶ added in v4.38.0
func LookupProtectionContainer(ctx *pulumi.Context, args *LookupProtectionContainerArgs, opts ...pulumi.InvokeOption) (*LookupProtectionContainerResult, error)
Use this data source to access information about an existing site recovery services protection container.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := siterecovery.LookupProtectionContainer(ctx, &siterecovery.LookupProtectionContainerArgs{ Name: "primary-container", RecoveryFabricName: "primary-fabric", RecoveryVaultName: "tfex-recovery_vault", ResourceGroupName: "tfex-resource_group", }, nil) if err != nil { return err } return nil }) }
```
type LookupProtectionContainerResultOutput ¶ added in v4.38.0
type LookupProtectionContainerResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getProtectionContainer.
func LookupProtectionContainerOutput ¶ added in v4.38.0
func LookupProtectionContainerOutput(ctx *pulumi.Context, args LookupProtectionContainerOutputArgs, opts ...pulumi.InvokeOption) LookupProtectionContainerResultOutput
func (LookupProtectionContainerResultOutput) ElementType ¶ added in v4.38.0
func (LookupProtectionContainerResultOutput) ElementType() reflect.Type
func (LookupProtectionContainerResultOutput) Id ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupProtectionContainerResultOutput) Name ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) Name() pulumi.StringOutput
func (LookupProtectionContainerResultOutput) RecoveryFabricName ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) RecoveryFabricName() pulumi.StringOutput
func (LookupProtectionContainerResultOutput) RecoveryVaultName ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) RecoveryVaultName() pulumi.StringOutput
func (LookupProtectionContainerResultOutput) ResourceGroupName ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) ResourceGroupName() pulumi.StringOutput
func (LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutput ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutput() LookupProtectionContainerResultOutput
func (LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutputWithContext ¶ added in v4.38.0
func (o LookupProtectionContainerResultOutput) ToLookupProtectionContainerResultOutputWithContext(ctx context.Context) LookupProtectionContainerResultOutput
type LookupReplicationPolicyArgs ¶ added in v4.38.0
type LookupReplicationPolicyArgs struct { // Specifies the name of the Azure Site Recovery replication policy. Name string `pulumi:"name"` // The name of the Recovery Services Vault that the Azure Site Recovery replication policy is associated witth. RecoveryVaultName string `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated Azure Site Recovery replication policy resides. ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getReplicationPolicy.
type LookupReplicationPolicyOutputArgs ¶ added in v4.38.0
type LookupReplicationPolicyOutputArgs struct { // Specifies the name of the Azure Site Recovery replication policy. Name pulumi.StringInput `pulumi:"name"` // The name of the Recovery Services Vault that the Azure Site Recovery replication policy is associated witth. RecoveryVaultName pulumi.StringInput `pulumi:"recoveryVaultName"` // The name of the resource group in which the associated Azure Site Recovery replication policy resides. ResourceGroupName pulumi.StringInput `pulumi:"resourceGroupName"` }
A collection of arguments for invoking getReplicationPolicy.
func (LookupReplicationPolicyOutputArgs) ElementType ¶ added in v4.38.0
func (LookupReplicationPolicyOutputArgs) ElementType() reflect.Type
type LookupReplicationPolicyResult ¶ added in v4.38.0
type LookupReplicationPolicyResult struct { // Specifies the frequency (in minutes) at which to create application consistent recovery. ApplicationConsistentSnapshotFrequencyInMinutes int `pulumi:"applicationConsistentSnapshotFrequencyInMinutes"` // The provider-assigned unique ID for this managed resource. Id string `pulumi:"id"` Name string `pulumi:"name"` // The duration in minutes for which the recovery points need to be stored. RecoveryPointRetentionInMinutes int `pulumi:"recoveryPointRetentionInMinutes"` RecoveryVaultName string `pulumi:"recoveryVaultName"` ResourceGroupName string `pulumi:"resourceGroupName"` }
A collection of values returned by getReplicationPolicy.
func LookupReplicationPolicy ¶ added in v4.38.0
func LookupReplicationPolicy(ctx *pulumi.Context, args *LookupReplicationPolicyArgs, opts ...pulumi.InvokeOption) (*LookupReplicationPolicyResult, error)
Use this data source to access information about an existing Azure Site Recovery replication policy.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { _, err := siterecovery.LookupReplicationPolicy(ctx, &siterecovery.LookupReplicationPolicyArgs{ Name: "replication-policy", RecoveryVaultName: "tfex-recovery_vault", ResourceGroupName: "tfex-resource_group", }, nil) if err != nil { return err } return nil }) }
```
type LookupReplicationPolicyResultOutput ¶ added in v4.38.0
type LookupReplicationPolicyResultOutput struct{ *pulumi.OutputState }
A collection of values returned by getReplicationPolicy.
func LookupReplicationPolicyOutput ¶ added in v4.38.0
func LookupReplicationPolicyOutput(ctx *pulumi.Context, args LookupReplicationPolicyOutputArgs, opts ...pulumi.InvokeOption) LookupReplicationPolicyResultOutput
func (LookupReplicationPolicyResultOutput) ApplicationConsistentSnapshotFrequencyInMinutes ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) ApplicationConsistentSnapshotFrequencyInMinutes() pulumi.IntOutput
Specifies the frequency (in minutes) at which to create application consistent recovery.
func (LookupReplicationPolicyResultOutput) ElementType ¶ added in v4.38.0
func (LookupReplicationPolicyResultOutput) ElementType() reflect.Type
func (LookupReplicationPolicyResultOutput) Id ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) Id() pulumi.StringOutput
The provider-assigned unique ID for this managed resource.
func (LookupReplicationPolicyResultOutput) Name ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) Name() pulumi.StringOutput
func (LookupReplicationPolicyResultOutput) RecoveryPointRetentionInMinutes ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) RecoveryPointRetentionInMinutes() pulumi.IntOutput
The duration in minutes for which the recovery points need to be stored.
func (LookupReplicationPolicyResultOutput) RecoveryVaultName ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) RecoveryVaultName() pulumi.StringOutput
func (LookupReplicationPolicyResultOutput) ResourceGroupName ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) ResourceGroupName() pulumi.StringOutput
func (LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutput ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutput() LookupReplicationPolicyResultOutput
func (LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutputWithContext ¶ added in v4.38.0
func (o LookupReplicationPolicyResultOutput) ToLookupReplicationPolicyResultOutputWithContext(ctx context.Context) LookupReplicationPolicyResultOutput
type NetworkMapping ¶
type NetworkMapping struct { pulumi.CustomResourceState // The name of the network mapping. Name pulumi.StringOutput `pulumi:"name"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` // The id of the primary network. SourceNetworkId pulumi.StringOutput `pulumi:"sourceNetworkId"` // Specifies the ASR fabric where mapping should be created. SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"` // The id of the recovery network. TargetNetworkId pulumi.StringOutput `pulumi:"targetNetworkId"` // The Azure Site Recovery fabric object corresponding to the recovery Azure region. TargetRecoveryFabricName pulumi.StringOutput `pulumi:"targetRecoveryFabricName"` }
Manages a site recovery network mapping on Azure. A network mapping decides how to translate connected netwroks when a VM is migrated from one region to another.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("West US"), }) if err != nil { return err } secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondaryResourceGroup.Location, ResourceGroupName: secondaryResourceGroup.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: primaryResourceGroup.Location, }) if err != nil { return err } _, err = siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: secondaryResourceGroup.Location, }, pulumi.DependsOn([]pulumi.Resource{ primaryFabric, })) if err != nil { return err } primaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "primaryVirtualNetwork", &network.VirtualNetworkArgs{ ResourceGroupName: primaryResourceGroup.Name, AddressSpaces: pulumi.StringArray{ pulumi.String("192.168.1.0/24"), }, Location: primaryResourceGroup.Location, }) if err != nil { return err } secondaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "secondaryVirtualNetwork", &network.VirtualNetworkArgs{ ResourceGroupName: secondaryResourceGroup.Name, AddressSpaces: pulumi.StringArray{ pulumi.String("192.168.2.0/24"), }, Location: secondaryResourceGroup.Location, }) if err != nil { return err } _, err = siterecovery.NewNetworkMapping(ctx, "recovery-mapping", &siterecovery.NetworkMappingArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, SourceRecoveryFabricName: pulumi.String("primary-fabric"), TargetRecoveryFabricName: pulumi.String("secondary-fabric"), SourceNetworkId: primaryVirtualNetwork.ID(), TargetNetworkId: secondaryVirtualNetwork.ID(), }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Network Mapping can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/networkMapping:NetworkMapping mymapping /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/primary-fabric-name/replicationNetworks/azureNetwork/replicationNetworkMappings/mapping-name
```
func GetNetworkMapping ¶
func GetNetworkMapping(ctx *pulumi.Context, name string, id pulumi.IDInput, state *NetworkMappingState, opts ...pulumi.ResourceOption) (*NetworkMapping, error)
GetNetworkMapping gets an existing NetworkMapping resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewNetworkMapping ¶
func NewNetworkMapping(ctx *pulumi.Context, name string, args *NetworkMappingArgs, opts ...pulumi.ResourceOption) (*NetworkMapping, error)
NewNetworkMapping registers a new resource with the given unique name, arguments, and options.
func (*NetworkMapping) ElementType ¶
func (*NetworkMapping) ElementType() reflect.Type
func (*NetworkMapping) ToNetworkMappingOutput ¶
func (i *NetworkMapping) ToNetworkMappingOutput() NetworkMappingOutput
func (*NetworkMapping) ToNetworkMappingOutputWithContext ¶
func (i *NetworkMapping) ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput
type NetworkMappingArgs ¶
type NetworkMappingArgs struct { // The name of the network mapping. Name pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput // The id of the primary network. SourceNetworkId pulumi.StringInput // Specifies the ASR fabric where mapping should be created. SourceRecoveryFabricName pulumi.StringInput // The id of the recovery network. TargetNetworkId pulumi.StringInput // The Azure Site Recovery fabric object corresponding to the recovery Azure region. TargetRecoveryFabricName pulumi.StringInput }
The set of arguments for constructing a NetworkMapping resource.
func (NetworkMappingArgs) ElementType ¶
func (NetworkMappingArgs) ElementType() reflect.Type
type NetworkMappingArray ¶
type NetworkMappingArray []NetworkMappingInput
func (NetworkMappingArray) ElementType ¶
func (NetworkMappingArray) ElementType() reflect.Type
func (NetworkMappingArray) ToNetworkMappingArrayOutput ¶
func (i NetworkMappingArray) ToNetworkMappingArrayOutput() NetworkMappingArrayOutput
func (NetworkMappingArray) ToNetworkMappingArrayOutputWithContext ¶
func (i NetworkMappingArray) ToNetworkMappingArrayOutputWithContext(ctx context.Context) NetworkMappingArrayOutput
type NetworkMappingArrayInput ¶
type NetworkMappingArrayInput interface { pulumi.Input ToNetworkMappingArrayOutput() NetworkMappingArrayOutput ToNetworkMappingArrayOutputWithContext(context.Context) NetworkMappingArrayOutput }
NetworkMappingArrayInput is an input type that accepts NetworkMappingArray and NetworkMappingArrayOutput values. You can construct a concrete instance of `NetworkMappingArrayInput` via:
NetworkMappingArray{ NetworkMappingArgs{...} }
type NetworkMappingArrayOutput ¶
type NetworkMappingArrayOutput struct{ *pulumi.OutputState }
func (NetworkMappingArrayOutput) ElementType ¶
func (NetworkMappingArrayOutput) ElementType() reflect.Type
func (NetworkMappingArrayOutput) Index ¶
func (o NetworkMappingArrayOutput) Index(i pulumi.IntInput) NetworkMappingOutput
func (NetworkMappingArrayOutput) ToNetworkMappingArrayOutput ¶
func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutput() NetworkMappingArrayOutput
func (NetworkMappingArrayOutput) ToNetworkMappingArrayOutputWithContext ¶
func (o NetworkMappingArrayOutput) ToNetworkMappingArrayOutputWithContext(ctx context.Context) NetworkMappingArrayOutput
type NetworkMappingInput ¶
type NetworkMappingInput interface { pulumi.Input ToNetworkMappingOutput() NetworkMappingOutput ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput }
type NetworkMappingMap ¶
type NetworkMappingMap map[string]NetworkMappingInput
func (NetworkMappingMap) ElementType ¶
func (NetworkMappingMap) ElementType() reflect.Type
func (NetworkMappingMap) ToNetworkMappingMapOutput ¶
func (i NetworkMappingMap) ToNetworkMappingMapOutput() NetworkMappingMapOutput
func (NetworkMappingMap) ToNetworkMappingMapOutputWithContext ¶
func (i NetworkMappingMap) ToNetworkMappingMapOutputWithContext(ctx context.Context) NetworkMappingMapOutput
type NetworkMappingMapInput ¶
type NetworkMappingMapInput interface { pulumi.Input ToNetworkMappingMapOutput() NetworkMappingMapOutput ToNetworkMappingMapOutputWithContext(context.Context) NetworkMappingMapOutput }
NetworkMappingMapInput is an input type that accepts NetworkMappingMap and NetworkMappingMapOutput values. You can construct a concrete instance of `NetworkMappingMapInput` via:
NetworkMappingMap{ "key": NetworkMappingArgs{...} }
type NetworkMappingMapOutput ¶
type NetworkMappingMapOutput struct{ *pulumi.OutputState }
func (NetworkMappingMapOutput) ElementType ¶
func (NetworkMappingMapOutput) ElementType() reflect.Type
func (NetworkMappingMapOutput) MapIndex ¶
func (o NetworkMappingMapOutput) MapIndex(k pulumi.StringInput) NetworkMappingOutput
func (NetworkMappingMapOutput) ToNetworkMappingMapOutput ¶
func (o NetworkMappingMapOutput) ToNetworkMappingMapOutput() NetworkMappingMapOutput
func (NetworkMappingMapOutput) ToNetworkMappingMapOutputWithContext ¶
func (o NetworkMappingMapOutput) ToNetworkMappingMapOutputWithContext(ctx context.Context) NetworkMappingMapOutput
type NetworkMappingOutput ¶
type NetworkMappingOutput struct{ *pulumi.OutputState }
func (NetworkMappingOutput) ElementType ¶
func (NetworkMappingOutput) ElementType() reflect.Type
func (NetworkMappingOutput) ToNetworkMappingOutput ¶
func (o NetworkMappingOutput) ToNetworkMappingOutput() NetworkMappingOutput
func (NetworkMappingOutput) ToNetworkMappingOutputWithContext ¶
func (o NetworkMappingOutput) ToNetworkMappingOutputWithContext(ctx context.Context) NetworkMappingOutput
type NetworkMappingState ¶
type NetworkMappingState struct { // The name of the network mapping. Name pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput // The id of the primary network. SourceNetworkId pulumi.StringPtrInput // Specifies the ASR fabric where mapping should be created. SourceRecoveryFabricName pulumi.StringPtrInput // The id of the recovery network. TargetNetworkId pulumi.StringPtrInput // The Azure Site Recovery fabric object corresponding to the recovery Azure region. TargetRecoveryFabricName pulumi.StringPtrInput }
func (NetworkMappingState) ElementType ¶
func (NetworkMappingState) ElementType() reflect.Type
type ProtectionContainer ¶
type ProtectionContainer struct { pulumi.CustomResourceState // The name of the protection container. Name pulumi.StringOutput `pulumi:"name"` // Name of fabric that should contain this protection container. RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` }
Manages a Azure Site Recovery protection container. Protection containers serve as containers for replicated VMs and belong to a single region / recovery fabric. Protection containers can contain more than one replicated VM. To replicate a VM, a container must exist in both the source and target Azure regions.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { primary, err := core.NewResourceGroup(ctx, "primary", &core.ResourceGroupArgs{ Location: pulumi.String("West US"), }) if err != nil { return err } secondary, err := core.NewResourceGroup(ctx, "secondary", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondary.Location, ResourceGroupName: secondary.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } fabric, err := siterecovery.NewFabric(ctx, "fabric", &siterecovery.FabricArgs{ ResourceGroupName: secondary.Name, RecoveryVaultName: vault.Name, Location: primary.Location, }) if err != nil { return err } _, err = siterecovery.NewProtectionContainer(ctx, "protection-container", &siterecovery.ProtectionContainerArgs{ ResourceGroupName: secondary.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: fabric.Name, }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Protection Containers can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/protectionContainer:ProtectionContainer mycontainer /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name/replicationProtectionContainers/protection-container-name
```
func GetProtectionContainer ¶
func GetProtectionContainer(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ProtectionContainerState, opts ...pulumi.ResourceOption) (*ProtectionContainer, error)
GetProtectionContainer gets an existing ProtectionContainer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewProtectionContainer ¶
func NewProtectionContainer(ctx *pulumi.Context, name string, args *ProtectionContainerArgs, opts ...pulumi.ResourceOption) (*ProtectionContainer, error)
NewProtectionContainer registers a new resource with the given unique name, arguments, and options.
func (*ProtectionContainer) ElementType ¶
func (*ProtectionContainer) ElementType() reflect.Type
func (*ProtectionContainer) ToProtectionContainerOutput ¶
func (i *ProtectionContainer) ToProtectionContainerOutput() ProtectionContainerOutput
func (*ProtectionContainer) ToProtectionContainerOutputWithContext ¶
func (i *ProtectionContainer) ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput
type ProtectionContainerArgs ¶
type ProtectionContainerArgs struct { // The name of the protection container. Name pulumi.StringPtrInput // Name of fabric that should contain this protection container. RecoveryFabricName pulumi.StringInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput }
The set of arguments for constructing a ProtectionContainer resource.
func (ProtectionContainerArgs) ElementType ¶
func (ProtectionContainerArgs) ElementType() reflect.Type
type ProtectionContainerArray ¶
type ProtectionContainerArray []ProtectionContainerInput
func (ProtectionContainerArray) ElementType ¶
func (ProtectionContainerArray) ElementType() reflect.Type
func (ProtectionContainerArray) ToProtectionContainerArrayOutput ¶
func (i ProtectionContainerArray) ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput
func (ProtectionContainerArray) ToProtectionContainerArrayOutputWithContext ¶
func (i ProtectionContainerArray) ToProtectionContainerArrayOutputWithContext(ctx context.Context) ProtectionContainerArrayOutput
type ProtectionContainerArrayInput ¶
type ProtectionContainerArrayInput interface { pulumi.Input ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput ToProtectionContainerArrayOutputWithContext(context.Context) ProtectionContainerArrayOutput }
ProtectionContainerArrayInput is an input type that accepts ProtectionContainerArray and ProtectionContainerArrayOutput values. You can construct a concrete instance of `ProtectionContainerArrayInput` via:
ProtectionContainerArray{ ProtectionContainerArgs{...} }
type ProtectionContainerArrayOutput ¶
type ProtectionContainerArrayOutput struct{ *pulumi.OutputState }
func (ProtectionContainerArrayOutput) ElementType ¶
func (ProtectionContainerArrayOutput) ElementType() reflect.Type
func (ProtectionContainerArrayOutput) Index ¶
func (o ProtectionContainerArrayOutput) Index(i pulumi.IntInput) ProtectionContainerOutput
func (ProtectionContainerArrayOutput) ToProtectionContainerArrayOutput ¶
func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutput() ProtectionContainerArrayOutput
func (ProtectionContainerArrayOutput) ToProtectionContainerArrayOutputWithContext ¶
func (o ProtectionContainerArrayOutput) ToProtectionContainerArrayOutputWithContext(ctx context.Context) ProtectionContainerArrayOutput
type ProtectionContainerInput ¶
type ProtectionContainerInput interface { pulumi.Input ToProtectionContainerOutput() ProtectionContainerOutput ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput }
type ProtectionContainerMap ¶
type ProtectionContainerMap map[string]ProtectionContainerInput
func (ProtectionContainerMap) ElementType ¶
func (ProtectionContainerMap) ElementType() reflect.Type
func (ProtectionContainerMap) ToProtectionContainerMapOutput ¶
func (i ProtectionContainerMap) ToProtectionContainerMapOutput() ProtectionContainerMapOutput
func (ProtectionContainerMap) ToProtectionContainerMapOutputWithContext ¶
func (i ProtectionContainerMap) ToProtectionContainerMapOutputWithContext(ctx context.Context) ProtectionContainerMapOutput
type ProtectionContainerMapInput ¶
type ProtectionContainerMapInput interface { pulumi.Input ToProtectionContainerMapOutput() ProtectionContainerMapOutput ToProtectionContainerMapOutputWithContext(context.Context) ProtectionContainerMapOutput }
ProtectionContainerMapInput is an input type that accepts ProtectionContainerMap and ProtectionContainerMapOutput values. You can construct a concrete instance of `ProtectionContainerMapInput` via:
ProtectionContainerMap{ "key": ProtectionContainerArgs{...} }
type ProtectionContainerMapOutput ¶
type ProtectionContainerMapOutput struct{ *pulumi.OutputState }
func (ProtectionContainerMapOutput) ElementType ¶
func (ProtectionContainerMapOutput) ElementType() reflect.Type
func (ProtectionContainerMapOutput) MapIndex ¶
func (o ProtectionContainerMapOutput) MapIndex(k pulumi.StringInput) ProtectionContainerOutput
func (ProtectionContainerMapOutput) ToProtectionContainerMapOutput ¶
func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutput() ProtectionContainerMapOutput
func (ProtectionContainerMapOutput) ToProtectionContainerMapOutputWithContext ¶
func (o ProtectionContainerMapOutput) ToProtectionContainerMapOutputWithContext(ctx context.Context) ProtectionContainerMapOutput
type ProtectionContainerMapping ¶
type ProtectionContainerMapping struct { pulumi.CustomResourceState // The name of the protection container mapping. Name pulumi.StringOutput `pulumi:"name"` // Name of fabric that should contains the protection container to map. RecoveryFabricName pulumi.StringOutput `pulumi:"recoveryFabricName"` // Id of the policy to use for this mapping. RecoveryReplicationPolicyId pulumi.StringOutput `pulumi:"recoveryReplicationPolicyId"` // Name of the source protection container to map. RecoverySourceProtectionContainerName pulumi.StringOutput `pulumi:"recoverySourceProtectionContainerName"` // Id of target protection container to map to. RecoveryTargetProtectionContainerId pulumi.StringOutput `pulumi:"recoveryTargetProtectionContainerId"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` }
Manages a Azure recovery vault protection container mapping. A protection container mapping decides how to translate the protection container when a VM is migrated from one region to another.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("West US"), }) if err != nil { return err } secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondaryResourceGroup.Location, ResourceGroupName: secondaryResourceGroup.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: primaryResourceGroup.Location, }) if err != nil { return err } secondaryFabric, err := siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: secondaryResourceGroup.Location, }) if err != nil { return err } primaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "primaryProtectionContainer", &siterecovery.ProtectionContainerArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: primaryFabric.Name, }) if err != nil { return err } secondaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "secondaryProtectionContainer", &siterecovery.ProtectionContainerArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: secondaryFabric.Name, }) if err != nil { return err } policy, err := siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryPointRetentionInMinutes: 24 * 60, ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60, }) if err != nil { return err } _, err = siterecovery.NewProtectionContainerMapping(ctx, "container-mapping", &siterecovery.ProtectionContainerMappingArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: primaryFabric.Name, RecoverySourceProtectionContainerName: primaryProtectionContainer.Name, RecoveryTargetProtectionContainerId: secondaryProtectionContainer.ID(), RecoveryReplicationPolicyId: policy.ID(), }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Protection Container Mappings can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/protectionContainerMapping:ProtectionContainerMapping mymapping /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name
```
func GetProtectionContainerMapping ¶
func GetProtectionContainerMapping(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ProtectionContainerMappingState, opts ...pulumi.ResourceOption) (*ProtectionContainerMapping, error)
GetProtectionContainerMapping gets an existing ProtectionContainerMapping resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewProtectionContainerMapping ¶
func NewProtectionContainerMapping(ctx *pulumi.Context, name string, args *ProtectionContainerMappingArgs, opts ...pulumi.ResourceOption) (*ProtectionContainerMapping, error)
NewProtectionContainerMapping registers a new resource with the given unique name, arguments, and options.
func (*ProtectionContainerMapping) ElementType ¶
func (*ProtectionContainerMapping) ElementType() reflect.Type
func (*ProtectionContainerMapping) ToProtectionContainerMappingOutput ¶
func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput
func (*ProtectionContainerMapping) ToProtectionContainerMappingOutputWithContext ¶
func (i *ProtectionContainerMapping) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput
type ProtectionContainerMappingArgs ¶
type ProtectionContainerMappingArgs struct { // The name of the protection container mapping. Name pulumi.StringPtrInput // Name of fabric that should contains the protection container to map. RecoveryFabricName pulumi.StringInput // Id of the policy to use for this mapping. RecoveryReplicationPolicyId pulumi.StringInput // Name of the source protection container to map. RecoverySourceProtectionContainerName pulumi.StringInput // Id of target protection container to map to. RecoveryTargetProtectionContainerId pulumi.StringInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput }
The set of arguments for constructing a ProtectionContainerMapping resource.
func (ProtectionContainerMappingArgs) ElementType ¶
func (ProtectionContainerMappingArgs) ElementType() reflect.Type
type ProtectionContainerMappingArray ¶
type ProtectionContainerMappingArray []ProtectionContainerMappingInput
func (ProtectionContainerMappingArray) ElementType ¶
func (ProtectionContainerMappingArray) ElementType() reflect.Type
func (ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutput ¶
func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput
func (ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutputWithContext ¶
func (i ProtectionContainerMappingArray) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput
type ProtectionContainerMappingArrayInput ¶
type ProtectionContainerMappingArrayInput interface { pulumi.Input ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput ToProtectionContainerMappingArrayOutputWithContext(context.Context) ProtectionContainerMappingArrayOutput }
ProtectionContainerMappingArrayInput is an input type that accepts ProtectionContainerMappingArray and ProtectionContainerMappingArrayOutput values. You can construct a concrete instance of `ProtectionContainerMappingArrayInput` via:
ProtectionContainerMappingArray{ ProtectionContainerMappingArgs{...} }
type ProtectionContainerMappingArrayOutput ¶
type ProtectionContainerMappingArrayOutput struct{ *pulumi.OutputState }
func (ProtectionContainerMappingArrayOutput) ElementType ¶
func (ProtectionContainerMappingArrayOutput) ElementType() reflect.Type
func (ProtectionContainerMappingArrayOutput) Index ¶
func (o ProtectionContainerMappingArrayOutput) Index(i pulumi.IntInput) ProtectionContainerMappingOutput
func (ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutput ¶
func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutput() ProtectionContainerMappingArrayOutput
func (ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutputWithContext ¶
func (o ProtectionContainerMappingArrayOutput) ToProtectionContainerMappingArrayOutputWithContext(ctx context.Context) ProtectionContainerMappingArrayOutput
type ProtectionContainerMappingInput ¶
type ProtectionContainerMappingInput interface { pulumi.Input ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput }
type ProtectionContainerMappingMap ¶
type ProtectionContainerMappingMap map[string]ProtectionContainerMappingInput
func (ProtectionContainerMappingMap) ElementType ¶
func (ProtectionContainerMappingMap) ElementType() reflect.Type
func (ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutput ¶
func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput
func (ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutputWithContext ¶
func (i ProtectionContainerMappingMap) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput
type ProtectionContainerMappingMapInput ¶
type ProtectionContainerMappingMapInput interface { pulumi.Input ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput ToProtectionContainerMappingMapOutputWithContext(context.Context) ProtectionContainerMappingMapOutput }
ProtectionContainerMappingMapInput is an input type that accepts ProtectionContainerMappingMap and ProtectionContainerMappingMapOutput values. You can construct a concrete instance of `ProtectionContainerMappingMapInput` via:
ProtectionContainerMappingMap{ "key": ProtectionContainerMappingArgs{...} }
type ProtectionContainerMappingMapOutput ¶
type ProtectionContainerMappingMapOutput struct{ *pulumi.OutputState }
func (ProtectionContainerMappingMapOutput) ElementType ¶
func (ProtectionContainerMappingMapOutput) ElementType() reflect.Type
func (ProtectionContainerMappingMapOutput) MapIndex ¶
func (o ProtectionContainerMappingMapOutput) MapIndex(k pulumi.StringInput) ProtectionContainerMappingOutput
func (ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutput ¶
func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutput() ProtectionContainerMappingMapOutput
func (ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutputWithContext ¶
func (o ProtectionContainerMappingMapOutput) ToProtectionContainerMappingMapOutputWithContext(ctx context.Context) ProtectionContainerMappingMapOutput
type ProtectionContainerMappingOutput ¶
type ProtectionContainerMappingOutput struct{ *pulumi.OutputState }
func (ProtectionContainerMappingOutput) ElementType ¶
func (ProtectionContainerMappingOutput) ElementType() reflect.Type
func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput ¶
func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutput() ProtectionContainerMappingOutput
func (ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext ¶
func (o ProtectionContainerMappingOutput) ToProtectionContainerMappingOutputWithContext(ctx context.Context) ProtectionContainerMappingOutput
type ProtectionContainerMappingState ¶
type ProtectionContainerMappingState struct { // The name of the protection container mapping. Name pulumi.StringPtrInput // Name of fabric that should contains the protection container to map. RecoveryFabricName pulumi.StringPtrInput // Id of the policy to use for this mapping. RecoveryReplicationPolicyId pulumi.StringPtrInput // Name of the source protection container to map. RecoverySourceProtectionContainerName pulumi.StringPtrInput // Id of target protection container to map to. RecoveryTargetProtectionContainerId pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput }
func (ProtectionContainerMappingState) ElementType ¶
func (ProtectionContainerMappingState) ElementType() reflect.Type
type ProtectionContainerOutput ¶
type ProtectionContainerOutput struct{ *pulumi.OutputState }
func (ProtectionContainerOutput) ElementType ¶
func (ProtectionContainerOutput) ElementType() reflect.Type
func (ProtectionContainerOutput) ToProtectionContainerOutput ¶
func (o ProtectionContainerOutput) ToProtectionContainerOutput() ProtectionContainerOutput
func (ProtectionContainerOutput) ToProtectionContainerOutputWithContext ¶
func (o ProtectionContainerOutput) ToProtectionContainerOutputWithContext(ctx context.Context) ProtectionContainerOutput
type ProtectionContainerState ¶
type ProtectionContainerState struct { // The name of the protection container. Name pulumi.StringPtrInput // Name of fabric that should contain this protection container. RecoveryFabricName pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput }
func (ProtectionContainerState) ElementType ¶
func (ProtectionContainerState) ElementType() reflect.Type
type ReplicatedVM ¶
type ReplicatedVM struct { pulumi.CustomResourceState // One or more `managedDisk` block. ManagedDisks ReplicatedVMManagedDiskArrayOutput `pulumi:"managedDisks"` // The name of the replication for the replicated VM. Name pulumi.StringOutput `pulumi:"name"` // One or more `networkInterface` block. NetworkInterfaces ReplicatedVMNetworkInterfaceArrayOutput `pulumi:"networkInterfaces"` RecoveryReplicationPolicyId pulumi.StringOutput `pulumi:"recoveryReplicationPolicyId"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` // Name of fabric that should contains this replication. SourceRecoveryFabricName pulumi.StringOutput `pulumi:"sourceRecoveryFabricName"` // Name of the protection container to use. SourceRecoveryProtectionContainerName pulumi.StringOutput `pulumi:"sourceRecoveryProtectionContainerName"` // Id of the VM to replicate SourceVmId pulumi.StringOutput `pulumi:"sourceVmId"` // Id of availability set that the new VM should belong to when a failover is done. TargetAvailabilitySetId pulumi.StringPtrOutput `pulumi:"targetAvailabilitySetId"` // Network to use when a failover is done (recommended to set if any networkInterface is configured for failover). TargetNetworkId pulumi.StringOutput `pulumi:"targetNetworkId"` // Id of fabric where the VM replication should be handled when a failover is done. TargetRecoveryFabricId pulumi.StringOutput `pulumi:"targetRecoveryFabricId"` // Id of protection container where the VM replication should be created when a failover is done. TargetRecoveryProtectionContainerId pulumi.StringOutput `pulumi:"targetRecoveryProtectionContainerId"` // Id of resource group where the VM should be created when a failover is done. TargetResourceGroupId pulumi.StringOutput `pulumi:"targetResourceGroupId"` }
Manages a VM replicated using Azure Site Recovery (Azure to Azure only). A replicated VM keeps a copiously updated image of the VM in another region in order to be able to start the VM in that region in case of a disaster.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/compute" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/storage" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { primaryResourceGroup, err := core.NewResourceGroup(ctx, "primaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("West US"), }) if err != nil { return err } secondaryResourceGroup, err := core.NewResourceGroup(ctx, "secondaryResourceGroup", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } primaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "primaryVirtualNetwork", &network.VirtualNetworkArgs{ ResourceGroupName: primaryResourceGroup.Name, AddressSpaces: pulumi.StringArray{ pulumi.String("192.168.1.0/24"), }, Location: primaryResourceGroup.Location, }) if err != nil { return err } primarySubnet, err := network.NewSubnet(ctx, "primarySubnet", &network.SubnetArgs{ ResourceGroupName: primaryResourceGroup.Name, VirtualNetworkName: primaryVirtualNetwork.Name, AddressPrefixes: pulumi.StringArray{ pulumi.String("192.168.1.0/24"), }, }) if err != nil { return err } primaryPublicIp, err := network.NewPublicIp(ctx, "primaryPublicIp", &network.PublicIpArgs{ AllocationMethod: pulumi.String("Static"), Location: primaryResourceGroup.Location, ResourceGroupName: primaryResourceGroup.Name, Sku: pulumi.String("Basic"), }) if err != nil { return err } vmNetworkInterface, err := network.NewNetworkInterface(ctx, "vmNetworkInterface", &network.NetworkInterfaceArgs{ Location: primaryResourceGroup.Location, ResourceGroupName: primaryResourceGroup.Name, IpConfigurations: network.NetworkInterfaceIpConfigurationArray{ &network.NetworkInterfaceIpConfigurationArgs{ Name: pulumi.String("vm"), SubnetId: primarySubnet.ID(), PrivateIpAddressAllocation: pulumi.String("Dynamic"), PublicIpAddressId: primaryPublicIp.ID(), }, }, }) if err != nil { return err } vmVirtualMachine, err := compute.NewVirtualMachine(ctx, "vmVirtualMachine", &compute.VirtualMachineArgs{ Location: primaryResourceGroup.Location, ResourceGroupName: primaryResourceGroup.Name, VmSize: pulumi.String("Standard_B1s"), NetworkInterfaceIds: pulumi.StringArray{ vmNetworkInterface.ID(), }, StorageImageReference: &compute.VirtualMachineStorageImageReferenceArgs{ Publisher: pulumi.String("OpenLogic"), Offer: pulumi.String("CentOS"), Sku: pulumi.String("7.5"), Version: pulumi.String("latest"), }, StorageOsDisk: &compute.VirtualMachineStorageOsDiskArgs{ Name: pulumi.String("vm-os-disk"), OsType: pulumi.String("Linux"), Caching: pulumi.String("ReadWrite"), CreateOption: pulumi.String("FromImage"), ManagedDiskType: pulumi.String("Premium_LRS"), }, OsProfile: &compute.VirtualMachineOsProfileArgs{ AdminUsername: pulumi.String("test-admin-123"), AdminPassword: pulumi.String("test-pwd-123"), ComputerName: pulumi.String("vm"), }, OsProfileLinuxConfig: &compute.VirtualMachineOsProfileLinuxConfigArgs{ DisablePasswordAuthentication: pulumi.Bool(false), }, }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondaryResourceGroup.Location, ResourceGroupName: secondaryResourceGroup.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } primaryFabric, err := siterecovery.NewFabric(ctx, "primaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: primaryResourceGroup.Location, }) if err != nil { return err } secondaryFabric, err := siterecovery.NewFabric(ctx, "secondaryFabric", &siterecovery.FabricArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, Location: secondaryResourceGroup.Location, }) if err != nil { return err } primaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "primaryProtectionContainer", &siterecovery.ProtectionContainerArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: primaryFabric.Name, }) if err != nil { return err } secondaryProtectionContainer, err := siterecovery.NewProtectionContainer(ctx, "secondaryProtectionContainer", &siterecovery.ProtectionContainerArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: secondaryFabric.Name, }) if err != nil { return err } policy, err := siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryPointRetentionInMinutes: 24 * 60, ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60, }) if err != nil { return err } _, err = siterecovery.NewProtectionContainerMapping(ctx, "container-mapping", &siterecovery.ProtectionContainerMappingArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, RecoveryFabricName: primaryFabric.Name, RecoverySourceProtectionContainerName: primaryProtectionContainer.Name, RecoveryTargetProtectionContainerId: secondaryProtectionContainer.ID(), RecoveryReplicationPolicyId: policy.ID(), }) if err != nil { return err } primaryAccount, err := storage.NewAccount(ctx, "primaryAccount", &storage.AccountArgs{ Location: primaryResourceGroup.Location, ResourceGroupName: primaryResourceGroup.Name, AccountTier: pulumi.String("Standard"), AccountReplicationType: pulumi.String("LRS"), }) if err != nil { return err } secondaryVirtualNetwork, err := network.NewVirtualNetwork(ctx, "secondaryVirtualNetwork", &network.VirtualNetworkArgs{ ResourceGroupName: secondaryResourceGroup.Name, AddressSpaces: pulumi.StringArray{ pulumi.String("192.168.2.0/24"), }, Location: secondaryResourceGroup.Location, }) if err != nil { return err } _, err = network.NewSubnet(ctx, "secondarySubnet", &network.SubnetArgs{ ResourceGroupName: secondaryResourceGroup.Name, VirtualNetworkName: secondaryVirtualNetwork.Name, AddressPrefixes: pulumi.StringArray{ pulumi.String("192.168.2.0/24"), }, }) if err != nil { return err } secondaryPublicIp, err := network.NewPublicIp(ctx, "secondaryPublicIp", &network.PublicIpArgs{ AllocationMethod: pulumi.String("Static"), Location: secondaryResourceGroup.Location, ResourceGroupName: secondaryResourceGroup.Name, Sku: pulumi.String("Basic"), }) if err != nil { return err } _, err = siterecovery.NewReplicatedVM(ctx, "vm-replication", &siterecovery.ReplicatedVMArgs{ ResourceGroupName: secondaryResourceGroup.Name, RecoveryVaultName: vault.Name, SourceRecoveryFabricName: primaryFabric.Name, SourceVmId: vmVirtualMachine.ID(), RecoveryReplicationPolicyId: policy.ID(), SourceRecoveryProtectionContainerName: primaryProtectionContainer.Name, TargetResourceGroupId: secondaryResourceGroup.ID(), TargetRecoveryFabricId: secondaryFabric.ID(), TargetRecoveryProtectionContainerId: secondaryProtectionContainer.ID(), ManagedDisks: siterecovery.ReplicatedVMManagedDiskArray{ &siterecovery.ReplicatedVMManagedDiskArgs{ DiskId: vmVirtualMachine.StorageOsDisk.ApplyT(func(storageOsDisk compute.VirtualMachineStorageOsDisk) (string, error) { return storageOsDisk.ManagedDiskId, nil }).(pulumi.StringOutput), StagingStorageAccountId: primaryAccount.ID(), TargetResourceGroupId: secondaryResourceGroup.ID(), TargetDiskType: pulumi.String("Premium_LRS"), TargetReplicaDiskType: pulumi.String("Premium_LRS"), }, }, NetworkInterfaces: siterecovery.ReplicatedVMNetworkInterfaceArray{ &siterecovery.ReplicatedVMNetworkInterfaceArgs{ SourceNetworkInterfaceId: vmNetworkInterface.ID(), TargetSubnetName: pulumi.String("network2-subnet"), RecoveryPublicIpAddressId: secondaryPublicIp.ID(), }, }, }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Replicated VM's can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/replicatedVM:ReplicatedVM vmreplication /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationFabrics/fabric-name/replicationProtectionContainers/protection-container-name/replicationProtectedItems/vm-replication-name
```
func GetReplicatedVM ¶
func GetReplicatedVM(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ReplicatedVMState, opts ...pulumi.ResourceOption) (*ReplicatedVM, error)
GetReplicatedVM gets an existing ReplicatedVM resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewReplicatedVM ¶
func NewReplicatedVM(ctx *pulumi.Context, name string, args *ReplicatedVMArgs, opts ...pulumi.ResourceOption) (*ReplicatedVM, error)
NewReplicatedVM registers a new resource with the given unique name, arguments, and options.
func (*ReplicatedVM) ElementType ¶
func (*ReplicatedVM) ElementType() reflect.Type
func (*ReplicatedVM) ToReplicatedVMOutput ¶
func (i *ReplicatedVM) ToReplicatedVMOutput() ReplicatedVMOutput
func (*ReplicatedVM) ToReplicatedVMOutputWithContext ¶
func (i *ReplicatedVM) ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput
type ReplicatedVMArgs ¶
type ReplicatedVMArgs struct { // One or more `managedDisk` block. ManagedDisks ReplicatedVMManagedDiskArrayInput // The name of the replication for the replicated VM. Name pulumi.StringPtrInput // One or more `networkInterface` block. NetworkInterfaces ReplicatedVMNetworkInterfaceArrayInput RecoveryReplicationPolicyId pulumi.StringInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput // Name of fabric that should contains this replication. SourceRecoveryFabricName pulumi.StringInput // Name of the protection container to use. SourceRecoveryProtectionContainerName pulumi.StringInput // Id of the VM to replicate SourceVmId pulumi.StringInput // Id of availability set that the new VM should belong to when a failover is done. TargetAvailabilitySetId pulumi.StringPtrInput // Network to use when a failover is done (recommended to set if any networkInterface is configured for failover). TargetNetworkId pulumi.StringPtrInput // Id of fabric where the VM replication should be handled when a failover is done. TargetRecoveryFabricId pulumi.StringInput // Id of protection container where the VM replication should be created when a failover is done. TargetRecoveryProtectionContainerId pulumi.StringInput // Id of resource group where the VM should be created when a failover is done. TargetResourceGroupId pulumi.StringInput }
The set of arguments for constructing a ReplicatedVM resource.
func (ReplicatedVMArgs) ElementType ¶
func (ReplicatedVMArgs) ElementType() reflect.Type
type ReplicatedVMArray ¶
type ReplicatedVMArray []ReplicatedVMInput
func (ReplicatedVMArray) ElementType ¶
func (ReplicatedVMArray) ElementType() reflect.Type
func (ReplicatedVMArray) ToReplicatedVMArrayOutput ¶
func (i ReplicatedVMArray) ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput
func (ReplicatedVMArray) ToReplicatedVMArrayOutputWithContext ¶
func (i ReplicatedVMArray) ToReplicatedVMArrayOutputWithContext(ctx context.Context) ReplicatedVMArrayOutput
type ReplicatedVMArrayInput ¶
type ReplicatedVMArrayInput interface { pulumi.Input ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput ToReplicatedVMArrayOutputWithContext(context.Context) ReplicatedVMArrayOutput }
ReplicatedVMArrayInput is an input type that accepts ReplicatedVMArray and ReplicatedVMArrayOutput values. You can construct a concrete instance of `ReplicatedVMArrayInput` via:
ReplicatedVMArray{ ReplicatedVMArgs{...} }
type ReplicatedVMArrayOutput ¶
type ReplicatedVMArrayOutput struct{ *pulumi.OutputState }
func (ReplicatedVMArrayOutput) ElementType ¶
func (ReplicatedVMArrayOutput) ElementType() reflect.Type
func (ReplicatedVMArrayOutput) Index ¶
func (o ReplicatedVMArrayOutput) Index(i pulumi.IntInput) ReplicatedVMOutput
func (ReplicatedVMArrayOutput) ToReplicatedVMArrayOutput ¶
func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutput() ReplicatedVMArrayOutput
func (ReplicatedVMArrayOutput) ToReplicatedVMArrayOutputWithContext ¶
func (o ReplicatedVMArrayOutput) ToReplicatedVMArrayOutputWithContext(ctx context.Context) ReplicatedVMArrayOutput
type ReplicatedVMInput ¶
type ReplicatedVMInput interface { pulumi.Input ToReplicatedVMOutput() ReplicatedVMOutput ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput }
type ReplicatedVMManagedDisk ¶
type ReplicatedVMManagedDisk struct { // Id of disk that should be replicated. DiskId string `pulumi:"diskId"` // Storage account that should be used for caching. StagingStorageAccountId string `pulumi:"stagingStorageAccountId"` // The Disk Encryption Set that the Managed Disk will be associated with. TargetDiskEncryptionSetId *string `pulumi:"targetDiskEncryptionSetId"` // What type should the disk be when a failover is done. TargetDiskType string `pulumi:"targetDiskType"` // What type should the disk be that holds the replication data. TargetReplicaDiskType string `pulumi:"targetReplicaDiskType"` // Resource group disk should belong to when a failover is done. TargetResourceGroupId string `pulumi:"targetResourceGroupId"` }
type ReplicatedVMManagedDiskArgs ¶
type ReplicatedVMManagedDiskArgs struct { // Id of disk that should be replicated. DiskId pulumi.StringInput `pulumi:"diskId"` // Storage account that should be used for caching. StagingStorageAccountId pulumi.StringInput `pulumi:"stagingStorageAccountId"` // The Disk Encryption Set that the Managed Disk will be associated with. TargetDiskEncryptionSetId pulumi.StringPtrInput `pulumi:"targetDiskEncryptionSetId"` // What type should the disk be when a failover is done. TargetDiskType pulumi.StringInput `pulumi:"targetDiskType"` // What type should the disk be that holds the replication data. TargetReplicaDiskType pulumi.StringInput `pulumi:"targetReplicaDiskType"` // Resource group disk should belong to when a failover is done. TargetResourceGroupId pulumi.StringInput `pulumi:"targetResourceGroupId"` }
func (ReplicatedVMManagedDiskArgs) ElementType ¶
func (ReplicatedVMManagedDiskArgs) ElementType() reflect.Type
func (ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutput ¶
func (i ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput
func (ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutputWithContext ¶
func (i ReplicatedVMManagedDiskArgs) ToReplicatedVMManagedDiskOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskOutput
type ReplicatedVMManagedDiskArray ¶
type ReplicatedVMManagedDiskArray []ReplicatedVMManagedDiskInput
func (ReplicatedVMManagedDiskArray) ElementType ¶
func (ReplicatedVMManagedDiskArray) ElementType() reflect.Type
func (ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutput ¶
func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput
func (ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutputWithContext ¶
func (i ReplicatedVMManagedDiskArray) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput
type ReplicatedVMManagedDiskArrayInput ¶
type ReplicatedVMManagedDiskArrayInput interface { pulumi.Input ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput ToReplicatedVMManagedDiskArrayOutputWithContext(context.Context) ReplicatedVMManagedDiskArrayOutput }
ReplicatedVMManagedDiskArrayInput is an input type that accepts ReplicatedVMManagedDiskArray and ReplicatedVMManagedDiskArrayOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskArrayInput` via:
ReplicatedVMManagedDiskArray{ ReplicatedVMManagedDiskArgs{...} }
type ReplicatedVMManagedDiskArrayOutput ¶
type ReplicatedVMManagedDiskArrayOutput struct{ *pulumi.OutputState }
func (ReplicatedVMManagedDiskArrayOutput) ElementType ¶
func (ReplicatedVMManagedDiskArrayOutput) ElementType() reflect.Type
func (ReplicatedVMManagedDiskArrayOutput) Index ¶
func (o ReplicatedVMManagedDiskArrayOutput) Index(i pulumi.IntInput) ReplicatedVMManagedDiskOutput
func (ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutput ¶
func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutput() ReplicatedVMManagedDiskArrayOutput
func (ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutputWithContext ¶
func (o ReplicatedVMManagedDiskArrayOutput) ToReplicatedVMManagedDiskArrayOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskArrayOutput
type ReplicatedVMManagedDiskInput ¶
type ReplicatedVMManagedDiskInput interface { pulumi.Input ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput ToReplicatedVMManagedDiskOutputWithContext(context.Context) ReplicatedVMManagedDiskOutput }
ReplicatedVMManagedDiskInput is an input type that accepts ReplicatedVMManagedDiskArgs and ReplicatedVMManagedDiskOutput values. You can construct a concrete instance of `ReplicatedVMManagedDiskInput` via:
ReplicatedVMManagedDiskArgs{...}
type ReplicatedVMManagedDiskOutput ¶
type ReplicatedVMManagedDiskOutput struct{ *pulumi.OutputState }
func (ReplicatedVMManagedDiskOutput) DiskId ¶
func (o ReplicatedVMManagedDiskOutput) DiskId() pulumi.StringOutput
Id of disk that should be replicated.
func (ReplicatedVMManagedDiskOutput) ElementType ¶
func (ReplicatedVMManagedDiskOutput) ElementType() reflect.Type
func (ReplicatedVMManagedDiskOutput) StagingStorageAccountId ¶
func (o ReplicatedVMManagedDiskOutput) StagingStorageAccountId() pulumi.StringOutput
Storage account that should be used for caching.
func (ReplicatedVMManagedDiskOutput) TargetDiskEncryptionSetId ¶ added in v4.9.0
func (o ReplicatedVMManagedDiskOutput) TargetDiskEncryptionSetId() pulumi.StringPtrOutput
The Disk Encryption Set that the Managed Disk will be associated with.
func (ReplicatedVMManagedDiskOutput) TargetDiskType ¶
func (o ReplicatedVMManagedDiskOutput) TargetDiskType() pulumi.StringOutput
What type should the disk be when a failover is done.
func (ReplicatedVMManagedDiskOutput) TargetReplicaDiskType ¶
func (o ReplicatedVMManagedDiskOutput) TargetReplicaDiskType() pulumi.StringOutput
What type should the disk be that holds the replication data.
func (ReplicatedVMManagedDiskOutput) TargetResourceGroupId ¶
func (o ReplicatedVMManagedDiskOutput) TargetResourceGroupId() pulumi.StringOutput
Resource group disk should belong to when a failover is done.
func (ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutput ¶
func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutput() ReplicatedVMManagedDiskOutput
func (ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutputWithContext ¶
func (o ReplicatedVMManagedDiskOutput) ToReplicatedVMManagedDiskOutputWithContext(ctx context.Context) ReplicatedVMManagedDiskOutput
type ReplicatedVMMap ¶
type ReplicatedVMMap map[string]ReplicatedVMInput
func (ReplicatedVMMap) ElementType ¶
func (ReplicatedVMMap) ElementType() reflect.Type
func (ReplicatedVMMap) ToReplicatedVMMapOutput ¶
func (i ReplicatedVMMap) ToReplicatedVMMapOutput() ReplicatedVMMapOutput
func (ReplicatedVMMap) ToReplicatedVMMapOutputWithContext ¶
func (i ReplicatedVMMap) ToReplicatedVMMapOutputWithContext(ctx context.Context) ReplicatedVMMapOutput
type ReplicatedVMMapInput ¶
type ReplicatedVMMapInput interface { pulumi.Input ToReplicatedVMMapOutput() ReplicatedVMMapOutput ToReplicatedVMMapOutputWithContext(context.Context) ReplicatedVMMapOutput }
ReplicatedVMMapInput is an input type that accepts ReplicatedVMMap and ReplicatedVMMapOutput values. You can construct a concrete instance of `ReplicatedVMMapInput` via:
ReplicatedVMMap{ "key": ReplicatedVMArgs{...} }
type ReplicatedVMMapOutput ¶
type ReplicatedVMMapOutput struct{ *pulumi.OutputState }
func (ReplicatedVMMapOutput) ElementType ¶
func (ReplicatedVMMapOutput) ElementType() reflect.Type
func (ReplicatedVMMapOutput) MapIndex ¶
func (o ReplicatedVMMapOutput) MapIndex(k pulumi.StringInput) ReplicatedVMOutput
func (ReplicatedVMMapOutput) ToReplicatedVMMapOutput ¶
func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutput() ReplicatedVMMapOutput
func (ReplicatedVMMapOutput) ToReplicatedVMMapOutputWithContext ¶
func (o ReplicatedVMMapOutput) ToReplicatedVMMapOutputWithContext(ctx context.Context) ReplicatedVMMapOutput
type ReplicatedVMNetworkInterface ¶
type ReplicatedVMNetworkInterface struct { // Id of the public IP object to use when a failover is done. RecoveryPublicIpAddressId *string `pulumi:"recoveryPublicIpAddressId"` // Id source network interface. SourceNetworkInterfaceId *string `pulumi:"sourceNetworkInterfaceId"` // Static IP to assign when a failover is done. TargetStaticIp *string `pulumi:"targetStaticIp"` // Name of the subnet to to use when a failover is done. TargetSubnetName *string `pulumi:"targetSubnetName"` }
type ReplicatedVMNetworkInterfaceArgs ¶
type ReplicatedVMNetworkInterfaceArgs struct { // Id of the public IP object to use when a failover is done. RecoveryPublicIpAddressId pulumi.StringPtrInput `pulumi:"recoveryPublicIpAddressId"` // Id source network interface. SourceNetworkInterfaceId pulumi.StringPtrInput `pulumi:"sourceNetworkInterfaceId"` // Static IP to assign when a failover is done. TargetStaticIp pulumi.StringPtrInput `pulumi:"targetStaticIp"` // Name of the subnet to to use when a failover is done. TargetSubnetName pulumi.StringPtrInput `pulumi:"targetSubnetName"` }
func (ReplicatedVMNetworkInterfaceArgs) ElementType ¶
func (ReplicatedVMNetworkInterfaceArgs) ElementType() reflect.Type
func (ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutput ¶
func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput
func (ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutputWithContext ¶
func (i ReplicatedVMNetworkInterfaceArgs) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput
type ReplicatedVMNetworkInterfaceArray ¶
type ReplicatedVMNetworkInterfaceArray []ReplicatedVMNetworkInterfaceInput
func (ReplicatedVMNetworkInterfaceArray) ElementType ¶
func (ReplicatedVMNetworkInterfaceArray) ElementType() reflect.Type
func (ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutput ¶
func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput
func (ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutputWithContext ¶
func (i ReplicatedVMNetworkInterfaceArray) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput
type ReplicatedVMNetworkInterfaceArrayInput ¶
type ReplicatedVMNetworkInterfaceArrayInput interface { pulumi.Input ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput ToReplicatedVMNetworkInterfaceArrayOutputWithContext(context.Context) ReplicatedVMNetworkInterfaceArrayOutput }
ReplicatedVMNetworkInterfaceArrayInput is an input type that accepts ReplicatedVMNetworkInterfaceArray and ReplicatedVMNetworkInterfaceArrayOutput values. You can construct a concrete instance of `ReplicatedVMNetworkInterfaceArrayInput` via:
ReplicatedVMNetworkInterfaceArray{ ReplicatedVMNetworkInterfaceArgs{...} }
type ReplicatedVMNetworkInterfaceArrayOutput ¶
type ReplicatedVMNetworkInterfaceArrayOutput struct{ *pulumi.OutputState }
func (ReplicatedVMNetworkInterfaceArrayOutput) ElementType ¶
func (ReplicatedVMNetworkInterfaceArrayOutput) ElementType() reflect.Type
func (ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutput ¶
func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutput() ReplicatedVMNetworkInterfaceArrayOutput
func (ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutputWithContext ¶
func (o ReplicatedVMNetworkInterfaceArrayOutput) ToReplicatedVMNetworkInterfaceArrayOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceArrayOutput
type ReplicatedVMNetworkInterfaceInput ¶
type ReplicatedVMNetworkInterfaceInput interface { pulumi.Input ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput ToReplicatedVMNetworkInterfaceOutputWithContext(context.Context) ReplicatedVMNetworkInterfaceOutput }
ReplicatedVMNetworkInterfaceInput is an input type that accepts ReplicatedVMNetworkInterfaceArgs and ReplicatedVMNetworkInterfaceOutput values. You can construct a concrete instance of `ReplicatedVMNetworkInterfaceInput` via:
ReplicatedVMNetworkInterfaceArgs{...}
type ReplicatedVMNetworkInterfaceOutput ¶
type ReplicatedVMNetworkInterfaceOutput struct{ *pulumi.OutputState }
func (ReplicatedVMNetworkInterfaceOutput) ElementType ¶
func (ReplicatedVMNetworkInterfaceOutput) ElementType() reflect.Type
func (ReplicatedVMNetworkInterfaceOutput) RecoveryPublicIpAddressId ¶
func (o ReplicatedVMNetworkInterfaceOutput) RecoveryPublicIpAddressId() pulumi.StringPtrOutput
Id of the public IP object to use when a failover is done.
func (ReplicatedVMNetworkInterfaceOutput) SourceNetworkInterfaceId ¶
func (o ReplicatedVMNetworkInterfaceOutput) SourceNetworkInterfaceId() pulumi.StringPtrOutput
Id source network interface.
func (ReplicatedVMNetworkInterfaceOutput) TargetStaticIp ¶
func (o ReplicatedVMNetworkInterfaceOutput) TargetStaticIp() pulumi.StringPtrOutput
Static IP to assign when a failover is done.
func (ReplicatedVMNetworkInterfaceOutput) TargetSubnetName ¶
func (o ReplicatedVMNetworkInterfaceOutput) TargetSubnetName() pulumi.StringPtrOutput
Name of the subnet to to use when a failover is done.
func (ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutput ¶
func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutput() ReplicatedVMNetworkInterfaceOutput
func (ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutputWithContext ¶
func (o ReplicatedVMNetworkInterfaceOutput) ToReplicatedVMNetworkInterfaceOutputWithContext(ctx context.Context) ReplicatedVMNetworkInterfaceOutput
type ReplicatedVMOutput ¶
type ReplicatedVMOutput struct{ *pulumi.OutputState }
func (ReplicatedVMOutput) ElementType ¶
func (ReplicatedVMOutput) ElementType() reflect.Type
func (ReplicatedVMOutput) ToReplicatedVMOutput ¶
func (o ReplicatedVMOutput) ToReplicatedVMOutput() ReplicatedVMOutput
func (ReplicatedVMOutput) ToReplicatedVMOutputWithContext ¶
func (o ReplicatedVMOutput) ToReplicatedVMOutputWithContext(ctx context.Context) ReplicatedVMOutput
type ReplicatedVMState ¶
type ReplicatedVMState struct { // One or more `managedDisk` block. ManagedDisks ReplicatedVMManagedDiskArrayInput // The name of the replication for the replicated VM. Name pulumi.StringPtrInput // One or more `networkInterface` block. NetworkInterfaces ReplicatedVMNetworkInterfaceArrayInput RecoveryReplicationPolicyId pulumi.StringPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput // Name of fabric that should contains this replication. SourceRecoveryFabricName pulumi.StringPtrInput // Name of the protection container to use. SourceRecoveryProtectionContainerName pulumi.StringPtrInput // Id of the VM to replicate SourceVmId pulumi.StringPtrInput // Id of availability set that the new VM should belong to when a failover is done. TargetAvailabilitySetId pulumi.StringPtrInput // Network to use when a failover is done (recommended to set if any networkInterface is configured for failover). TargetNetworkId pulumi.StringPtrInput // Id of fabric where the VM replication should be handled when a failover is done. TargetRecoveryFabricId pulumi.StringPtrInput // Id of protection container where the VM replication should be created when a failover is done. TargetRecoveryProtectionContainerId pulumi.StringPtrInput // Id of resource group where the VM should be created when a failover is done. TargetResourceGroupId pulumi.StringPtrInput }
func (ReplicatedVMState) ElementType ¶
func (ReplicatedVMState) ElementType() reflect.Type
type ReplicationPolicy ¶
type ReplicationPolicy struct { pulumi.CustomResourceState // Specifies the frequency(in minutes) at which to create application consistent recovery points. ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntOutput `pulumi:"applicationConsistentSnapshotFrequencyInMinutes"` // The name of the replication policy. Name pulumi.StringOutput `pulumi:"name"` // The duration in minutes for which the recovery points need to be stored. RecoveryPointRetentionInMinutes pulumi.IntOutput `pulumi:"recoveryPointRetentionInMinutes"` // The name of the vault that should be updated. RecoveryVaultName pulumi.StringOutput `pulumi:"recoveryVaultName"` // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` }
Manages a Azure Site Recovery replication policy within a recovery vault. Replication policies define the frequency at which recovery points are created and how long they are stored.
## Example Usage
```go package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/recoveryservices" "github.com/pulumi/pulumi-azure/sdk/v4/go/azure/siterecovery" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { secondary, err := core.NewResourceGroup(ctx, "secondary", &core.ResourceGroupArgs{ Location: pulumi.String("East US"), }) if err != nil { return err } vault, err := recoveryservices.NewVault(ctx, "vault", &recoveryservices.VaultArgs{ Location: secondary.Location, ResourceGroupName: secondary.Name, Sku: pulumi.String("Standard"), }) if err != nil { return err } _, err = siterecovery.NewReplicationPolicy(ctx, "policy", &siterecovery.ReplicationPolicyArgs{ ResourceGroupName: secondary.Name, RecoveryVaultName: vault.Name, RecoveryPointRetentionInMinutes: 24 * 60, ApplicationConsistentSnapshotFrequencyInMinutes: 4 * 60, }) if err != nil { return err } return nil }) }
```
## Import
Site Recovery Replication Policies can be imported using the `resource id`, e.g.
```sh
$ pulumi import azure:siterecovery/replicationPolicy:ReplicationPolicy mypolicy /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.RecoveryServices/vaults/recovery-vault-name/replicationPolicies/policy-name
```
func GetReplicationPolicy ¶
func GetReplicationPolicy(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ReplicationPolicyState, opts ...pulumi.ResourceOption) (*ReplicationPolicy, error)
GetReplicationPolicy gets an existing ReplicationPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewReplicationPolicy ¶
func NewReplicationPolicy(ctx *pulumi.Context, name string, args *ReplicationPolicyArgs, opts ...pulumi.ResourceOption) (*ReplicationPolicy, error)
NewReplicationPolicy registers a new resource with the given unique name, arguments, and options.
func (*ReplicationPolicy) ElementType ¶
func (*ReplicationPolicy) ElementType() reflect.Type
func (*ReplicationPolicy) ToReplicationPolicyOutput ¶
func (i *ReplicationPolicy) ToReplicationPolicyOutput() ReplicationPolicyOutput
func (*ReplicationPolicy) ToReplicationPolicyOutputWithContext ¶
func (i *ReplicationPolicy) ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput
type ReplicationPolicyArgs ¶
type ReplicationPolicyArgs struct { // Specifies the frequency(in minutes) at which to create application consistent recovery points. ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntInput // The name of the replication policy. Name pulumi.StringPtrInput // The duration in minutes for which the recovery points need to be stored. RecoveryPointRetentionInMinutes pulumi.IntInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringInput }
The set of arguments for constructing a ReplicationPolicy resource.
func (ReplicationPolicyArgs) ElementType ¶
func (ReplicationPolicyArgs) ElementType() reflect.Type
type ReplicationPolicyArray ¶
type ReplicationPolicyArray []ReplicationPolicyInput
func (ReplicationPolicyArray) ElementType ¶
func (ReplicationPolicyArray) ElementType() reflect.Type
func (ReplicationPolicyArray) ToReplicationPolicyArrayOutput ¶
func (i ReplicationPolicyArray) ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput
func (ReplicationPolicyArray) ToReplicationPolicyArrayOutputWithContext ¶
func (i ReplicationPolicyArray) ToReplicationPolicyArrayOutputWithContext(ctx context.Context) ReplicationPolicyArrayOutput
type ReplicationPolicyArrayInput ¶
type ReplicationPolicyArrayInput interface { pulumi.Input ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput ToReplicationPolicyArrayOutputWithContext(context.Context) ReplicationPolicyArrayOutput }
ReplicationPolicyArrayInput is an input type that accepts ReplicationPolicyArray and ReplicationPolicyArrayOutput values. You can construct a concrete instance of `ReplicationPolicyArrayInput` via:
ReplicationPolicyArray{ ReplicationPolicyArgs{...} }
type ReplicationPolicyArrayOutput ¶
type ReplicationPolicyArrayOutput struct{ *pulumi.OutputState }
func (ReplicationPolicyArrayOutput) ElementType ¶
func (ReplicationPolicyArrayOutput) ElementType() reflect.Type
func (ReplicationPolicyArrayOutput) Index ¶
func (o ReplicationPolicyArrayOutput) Index(i pulumi.IntInput) ReplicationPolicyOutput
func (ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutput ¶
func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutput() ReplicationPolicyArrayOutput
func (ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutputWithContext ¶
func (o ReplicationPolicyArrayOutput) ToReplicationPolicyArrayOutputWithContext(ctx context.Context) ReplicationPolicyArrayOutput
type ReplicationPolicyInput ¶
type ReplicationPolicyInput interface { pulumi.Input ToReplicationPolicyOutput() ReplicationPolicyOutput ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput }
type ReplicationPolicyMap ¶
type ReplicationPolicyMap map[string]ReplicationPolicyInput
func (ReplicationPolicyMap) ElementType ¶
func (ReplicationPolicyMap) ElementType() reflect.Type
func (ReplicationPolicyMap) ToReplicationPolicyMapOutput ¶
func (i ReplicationPolicyMap) ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput
func (ReplicationPolicyMap) ToReplicationPolicyMapOutputWithContext ¶
func (i ReplicationPolicyMap) ToReplicationPolicyMapOutputWithContext(ctx context.Context) ReplicationPolicyMapOutput
type ReplicationPolicyMapInput ¶
type ReplicationPolicyMapInput interface { pulumi.Input ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput ToReplicationPolicyMapOutputWithContext(context.Context) ReplicationPolicyMapOutput }
ReplicationPolicyMapInput is an input type that accepts ReplicationPolicyMap and ReplicationPolicyMapOutput values. You can construct a concrete instance of `ReplicationPolicyMapInput` via:
ReplicationPolicyMap{ "key": ReplicationPolicyArgs{...} }
type ReplicationPolicyMapOutput ¶
type ReplicationPolicyMapOutput struct{ *pulumi.OutputState }
func (ReplicationPolicyMapOutput) ElementType ¶
func (ReplicationPolicyMapOutput) ElementType() reflect.Type
func (ReplicationPolicyMapOutput) MapIndex ¶
func (o ReplicationPolicyMapOutput) MapIndex(k pulumi.StringInput) ReplicationPolicyOutput
func (ReplicationPolicyMapOutput) ToReplicationPolicyMapOutput ¶
func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutput() ReplicationPolicyMapOutput
func (ReplicationPolicyMapOutput) ToReplicationPolicyMapOutputWithContext ¶
func (o ReplicationPolicyMapOutput) ToReplicationPolicyMapOutputWithContext(ctx context.Context) ReplicationPolicyMapOutput
type ReplicationPolicyOutput ¶
type ReplicationPolicyOutput struct{ *pulumi.OutputState }
func (ReplicationPolicyOutput) ElementType ¶
func (ReplicationPolicyOutput) ElementType() reflect.Type
func (ReplicationPolicyOutput) ToReplicationPolicyOutput ¶
func (o ReplicationPolicyOutput) ToReplicationPolicyOutput() ReplicationPolicyOutput
func (ReplicationPolicyOutput) ToReplicationPolicyOutputWithContext ¶
func (o ReplicationPolicyOutput) ToReplicationPolicyOutputWithContext(ctx context.Context) ReplicationPolicyOutput
type ReplicationPolicyState ¶
type ReplicationPolicyState struct { // Specifies the frequency(in minutes) at which to create application consistent recovery points. ApplicationConsistentSnapshotFrequencyInMinutes pulumi.IntPtrInput // The name of the replication policy. Name pulumi.StringPtrInput // The duration in minutes for which the recovery points need to be stored. RecoveryPointRetentionInMinutes pulumi.IntPtrInput // The name of the vault that should be updated. RecoveryVaultName pulumi.StringPtrInput // Name of the resource group where the vault that should be updated is located. ResourceGroupName pulumi.StringPtrInput }
func (ReplicationPolicyState) ElementType ¶
func (ReplicationPolicyState) ElementType() reflect.Type