ElasticPool

class ElasticPool : KotlinCustomResource

Allows you to manage an Azure SQL Elastic Pool.

Note: The azure.sql.ElasticPool resource is deprecated in version 3.0 of the AzureRM provider and will be removed in version 4.0. Please use the azure.mssql.ElasticPool resource instead.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "my-resource-group",
location: "West Europe",
});
const exampleSqlServer = new azure.sql.SqlServer("example", {
name: "my-sql-server",
resourceGroupName: example.name,
location: example.location,
version: "12.0",
administratorLogin: "4dm1n157r470r",
administratorLoginPassword: "4-v3ry-53cr37-p455w0rd",
});
const exampleElasticPool = new azure.sql.ElasticPool("example", {
name: "test",
resourceGroupName: example.name,
location: example.location,
serverName: exampleSqlServer.name,
edition: "Basic",
dtu: 50,
dbDtuMin: 0,
dbDtuMax: 5,
poolSize: 5000,
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="my-resource-group",
location="West Europe")
example_sql_server = azure.sql.SqlServer("example",
name="my-sql-server",
resource_group_name=example.name,
location=example.location,
version="12.0",
administrator_login="4dm1n157r470r",
administrator_login_password="4-v3ry-53cr37-p455w0rd")
example_elastic_pool = azure.sql.ElasticPool("example",
name="test",
resource_group_name=example.name,
location=example.location,
server_name=example_sql_server.name,
edition="Basic",
dtu=50,
db_dtu_min=0,
db_dtu_max=5,
pool_size=5000)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "my-resource-group",
Location = "West Europe",
});
var exampleSqlServer = new Azure.Sql.SqlServer("example", new()
{
Name = "my-sql-server",
ResourceGroupName = example.Name,
Location = example.Location,
Version = "12.0",
AdministratorLogin = "4dm1n157r470r",
AdministratorLoginPassword = "4-v3ry-53cr37-p455w0rd",
});
var exampleElasticPool = new Azure.Sql.ElasticPool("example", new()
{
Name = "test",
ResourceGroupName = example.Name,
Location = example.Location,
ServerName = exampleSqlServer.Name,
Edition = "Basic",
Dtu = 50,
DbDtuMin = 0,
DbDtuMax = 5,
PoolSize = 5000,
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/sql"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("my-resource-group"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleSqlServer, err := sql.NewSqlServer(ctx, "example", &sql.SqlServerArgs{
Name: pulumi.String("my-sql-server"),
ResourceGroupName: example.Name,
Location: example.Location,
Version: pulumi.String("12.0"),
AdministratorLogin: pulumi.String("4dm1n157r470r"),
AdministratorLoginPassword: pulumi.String("4-v3ry-53cr37-p455w0rd"),
})
if err != nil {
return err
}
_, err = sql.NewElasticPool(ctx, "example", &sql.ElasticPoolArgs{
Name: pulumi.String("test"),
ResourceGroupName: example.Name,
Location: example.Location,
ServerName: exampleSqlServer.Name,
Edition: pulumi.String("Basic"),
Dtu: pulumi.Int(50),
DbDtuMin: pulumi.Int(0),
DbDtuMax: pulumi.Int(5),
PoolSize: pulumi.Int(5000),
})
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.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.sql.SqlServer;
import com.pulumi.azure.sql.SqlServerArgs;
import com.pulumi.azure.sql.ElasticPool;
import com.pulumi.azure.sql.ElasticPoolArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("my-resource-group")
.location("West Europe")
.build());
var exampleSqlServer = new SqlServer("exampleSqlServer", SqlServerArgs.builder()
.name("my-sql-server")
.resourceGroupName(example.name())
.location(example.location())
.version("12.0")
.administratorLogin("4dm1n157r470r")
.administratorLoginPassword("4-v3ry-53cr37-p455w0rd")
.build());
var exampleElasticPool = new ElasticPool("exampleElasticPool", ElasticPoolArgs.builder()
.name("test")
.resourceGroupName(example.name())
.location(example.location())
.serverName(exampleSqlServer.name())
.edition("Basic")
.dtu(50)
.dbDtuMin(0)
.dbDtuMax(5)
.poolSize(5000)
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: my-resource-group
location: West Europe
exampleSqlServer:
type: azure:sql:SqlServer
name: example
properties:
name: my-sql-server
resourceGroupName: ${example.name}
location: ${example.location}
version: '12.0'
administratorLogin: 4dm1n157r470r
administratorLoginPassword: 4-v3ry-53cr37-p455w0rd
exampleElasticPool:
type: azure:sql:ElasticPool
name: example
properties:
name: test
resourceGroupName: ${example.name}
location: ${example.location}
serverName: ${exampleSqlServer.name}
edition: Basic
dtu: 50
dbDtuMin: 0
dbDtuMax: 5
poolSize: 5000

NOTE on azure.sql.ElasticPool: - The values of edition, dtu, and pool_size must be consistent with the Azure SQL Database Service Tiers. Any inconsistent argument configuration will be rejected.

Import

SQL Elastic Pool's can be imported using the resource id, e.g.

$ pulumi import azure:sql/elasticPool:ElasticPool pool1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myresourcegroup/providers/Microsoft.Sql/servers/myserver/elasticPools/pool1

Properties

Link copied to clipboard
val creationDate: Output<String>

The creation date of the SQL Elastic Pool.

Link copied to clipboard
val dbDtuMax: Output<Int>

The maximum DTU which will be guaranteed to all databases in the elastic pool to be created.

Link copied to clipboard
val dbDtuMin: Output<Int>

The minimum DTU which will be guaranteed to all databases in the elastic pool to be created.

Link copied to clipboard
val dtu: Output<Int>

The total shared DTU for the elastic pool. Valid values depend on the edition which has been defined. Refer to Azure SQL Database Service Tiers for valid combinations.

Link copied to clipboard
val edition: Output<String>

The edition of the elastic pool to be created. Valid values are Basic, Standard, and Premium. Refer to Azure SQL Database Service Tiers for details. Changing this forces a new resource to be created.

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

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

Link copied to clipboard
val name: Output<String>

The name of the elastic pool. This needs to be globally unique. Changing this forces a new resource to be created.

Link copied to clipboard
val poolSize: Output<Int>

The maximum size in MB that all databases in the elastic pool can grow to. The maximum size must be consistent with combination of edition and dtu and the limits documented in Azure SQL Database Service Tiers. If not defined when creating an elastic pool, the value is set to the size implied by edition and dtu.

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

The name of the resource group in which to create the elastic pool. This must be the same as the resource group of the underlying SQL server. Changing this forces a new resource to be created.

Link copied to clipboard
val serverName: Output<String>

The name of the SQL Server on which to create the elastic pool. Changing this forces a new resource to be created.

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

A mapping of tags to assign to the resource.

Link copied to clipboard
val urn: Output<String>