FailoverGroup

class FailoverGroup : KotlinCustomResource

A failover group. Uses Azure REST API version 2023-08-01. In version 2.x of the Azure Native provider, it used API version 2021-11-01. Other available API versions: 2015-05-01-preview, 2020-02-02-preview, 2020-08-01-preview, 2020-11-01-preview, 2021-02-01-preview, 2021-05-01-preview, 2021-08-01-preview, 2021-11-01, 2021-11-01-preview, 2022-02-01-preview, 2022-05-01-preview, 2022-08-01-preview, 2022-11-01-preview, 2023-02-01-preview, 2023-05-01-preview, 2023-08-01-preview, 2024-05-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native sql [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create failover group

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var failoverGroup = new AzureNative.Sql.FailoverGroup("failoverGroup", new()
{
Databases = new[]
{
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2",
},
FailoverGroupName = "failover-group-test-3",
PartnerServers = new[]
{
new AzureNative.Sql.Inputs.PartnerInfoArgs
{
Id = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server",
},
},
ReadOnlyEndpoint = new AzureNative.Sql.Inputs.FailoverGroupReadOnlyEndpointArgs
{
FailoverPolicy = AzureNative.Sql.ReadOnlyEndpointFailoverPolicy.Disabled,
},
ReadWriteEndpoint = new AzureNative.Sql.Inputs.FailoverGroupReadWriteEndpointArgs
{
FailoverPolicy = AzureNative.Sql.ReadWriteEndpointFailoverPolicy.Automatic,
FailoverWithDataLossGracePeriodMinutes = 480,
},
ResourceGroupName = "Default",
ServerName = "failover-group-primary-server",
});
});
package main
import (
sql "github.com/pulumi/pulumi-azure-native-sdk/sql/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sql.NewFailoverGroup(ctx, "failoverGroup", &sql.FailoverGroupArgs{
Databases: pulumi.StringArray{
pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1"),
pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2"),
},
FailoverGroupName: pulumi.String("failover-group-test-3"),
PartnerServers: sql.PartnerInfoArray{
&sql.PartnerInfoArgs{
Id: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server"),
},
},
ReadOnlyEndpoint: &sql.FailoverGroupReadOnlyEndpointArgs{
FailoverPolicy: pulumi.String(sql.ReadOnlyEndpointFailoverPolicyDisabled),
},
ReadWriteEndpoint: &sql.FailoverGroupReadWriteEndpointArgs{
FailoverPolicy: pulumi.String(sql.ReadWriteEndpointFailoverPolicyAutomatic),
FailoverWithDataLossGracePeriodMinutes: pulumi.Int(480),
},
ResourceGroupName: pulumi.String("Default"),
ServerName: pulumi.String("failover-group-primary-server"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.sql.FailoverGroup;
import com.pulumi.azurenative.sql.FailoverGroupArgs;
import com.pulumi.azurenative.sql.inputs.PartnerInfoArgs;
import com.pulumi.azurenative.sql.inputs.FailoverGroupReadOnlyEndpointArgs;
import com.pulumi.azurenative.sql.inputs.FailoverGroupReadWriteEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var failoverGroup = new FailoverGroup("failoverGroup", FailoverGroupArgs.builder()
.databases(
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2")
.failoverGroupName("failover-group-test-3")
.partnerServers(PartnerInfoArgs.builder()
.id("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server")
.build())
.readOnlyEndpoint(FailoverGroupReadOnlyEndpointArgs.builder()
.failoverPolicy("Disabled")
.build())
.readWriteEndpoint(FailoverGroupReadWriteEndpointArgs.builder()
.failoverPolicy("Automatic")
.failoverWithDataLossGracePeriodMinutes(480)
.build())
.resourceGroupName("Default")
.serverName("failover-group-primary-server")
.build());
}
}

Create failover group with standby secondary database on partner server.

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var failoverGroup = new AzureNative.Sql.FailoverGroup("failoverGroup", new()
{
Databases = new[]
{
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2",
},
FailoverGroupName = "failover-group-test-3",
PartnerServers = new[]
{
new AzureNative.Sql.Inputs.PartnerInfoArgs
{
Id = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server",
},
},
ReadOnlyEndpoint = new AzureNative.Sql.Inputs.FailoverGroupReadOnlyEndpointArgs
{
FailoverPolicy = AzureNative.Sql.ReadOnlyEndpointFailoverPolicy.Disabled,
},
ReadWriteEndpoint = new AzureNative.Sql.Inputs.FailoverGroupReadWriteEndpointArgs
{
FailoverPolicy = AzureNative.Sql.ReadWriteEndpointFailoverPolicy.Automatic,
FailoverWithDataLossGracePeriodMinutes = 480,
},
ResourceGroupName = "Default",
SecondaryType = AzureNative.Sql.FailoverGroupDatabasesSecondaryType.Standby,
ServerName = "failover-group-primary-server",
});
});
package main
import (
sql "github.com/pulumi/pulumi-azure-native-sdk/sql/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := sql.NewFailoverGroup(ctx, "failoverGroup", &sql.FailoverGroupArgs{
Databases: pulumi.StringArray{
pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1"),
pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2"),
},
FailoverGroupName: pulumi.String("failover-group-test-3"),
PartnerServers: sql.PartnerInfoArray{
&sql.PartnerInfoArgs{
Id: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server"),
},
},
ReadOnlyEndpoint: &sql.FailoverGroupReadOnlyEndpointArgs{
FailoverPolicy: pulumi.String(sql.ReadOnlyEndpointFailoverPolicyDisabled),
},
ReadWriteEndpoint: &sql.FailoverGroupReadWriteEndpointArgs{
FailoverPolicy: pulumi.String(sql.ReadWriteEndpointFailoverPolicyAutomatic),
FailoverWithDataLossGracePeriodMinutes: pulumi.Int(480),
},
ResourceGroupName: pulumi.String("Default"),
SecondaryType: pulumi.String(sql.FailoverGroupDatabasesSecondaryTypeStandby),
ServerName: pulumi.String("failover-group-primary-server"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.sql.FailoverGroup;
import com.pulumi.azurenative.sql.FailoverGroupArgs;
import com.pulumi.azurenative.sql.inputs.PartnerInfoArgs;
import com.pulumi.azurenative.sql.inputs.FailoverGroupReadOnlyEndpointArgs;
import com.pulumi.azurenative.sql.inputs.FailoverGroupReadWriteEndpointArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var failoverGroup = new FailoverGroup("failoverGroup", FailoverGroupArgs.builder()
.databases(
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-1",
"/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-primary-server/databases/testdb-2")
.failoverGroupName("failover-group-test-3")
.partnerServers(PartnerInfoArgs.builder()
.id("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Sql/servers/failover-group-secondary-server")
.build())
.readOnlyEndpoint(FailoverGroupReadOnlyEndpointArgs.builder()
.failoverPolicy("Disabled")
.build())
.readWriteEndpoint(FailoverGroupReadWriteEndpointArgs.builder()
.failoverPolicy("Automatic")
.failoverWithDataLossGracePeriodMinutes(480)
.build())
.resourceGroupName("Default")
.secondaryType("Standby")
.serverName("failover-group-primary-server")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:sql:FailoverGroup failover-group-test-3 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/failoverGroups/{failoverGroupName}

Properties

Link copied to clipboard
val azureApiVersion: Output<String>

The Azure API version of the resource.

Link copied to clipboard
val databases: Output<List<String>>?

List of databases in the failover group.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val location: Output<String>

Resource location.

Link copied to clipboard
val name: Output<String>

Resource name.

Link copied to clipboard

List of partner server information for the failover group.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Read-only endpoint of the failover group instance.

Link copied to clipboard

Read-write endpoint of the failover group instance.

Link copied to clipboard
val replicationRole: Output<String>

Local replication role of the failover group instance.

Link copied to clipboard

Replication state of the failover group instance.

Link copied to clipboard
val tags: Output<Map<String, String>>?

Resource tags.

Link copied to clipboard
val type: Output<String>

Resource type.

Link copied to clipboard
val urn: Output<String>