azure-native.sql.InstancePool
Explore with Pulumi AI
An Azure SQL instance pool. Azure REST API version: 2021-11-01. Prior API version in Azure Native 1.x: 2020-11-01-preview.
Other available API versions: 2022-11-01-preview, 2023-02-01-preview, 2023-05-01-preview, 2023-08-01-preview, 2024-05-01-preview.
Example Usage
Create an instance pool with all properties.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var instancePool = new AzureNative.Sql.InstancePool("instancePool", new()
    {
        InstancePoolName = "testIP",
        LicenseType = AzureNative.Sql.InstancePoolLicenseType.LicenseIncluded,
        Location = "japaneast",
        ResourceGroupName = "group1",
        Sku = new AzureNative.Sql.Inputs.SkuArgs
        {
            Family = "Gen5",
            Name = "GP_Gen5",
            Tier = "GeneralPurpose",
        },
        SubnetId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
        Tags = 
        {
            { "a", "b" },
        },
        VCores = 8,
    });
});
package main
import (
	sql "github.com/pulumi/pulumi-azure-native-sdk/sql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sql.NewInstancePool(ctx, "instancePool", &sql.InstancePoolArgs{
			InstancePoolName:  pulumi.String("testIP"),
			LicenseType:       pulumi.String(sql.InstancePoolLicenseTypeLicenseIncluded),
			Location:          pulumi.String("japaneast"),
			ResourceGroupName: pulumi.String("group1"),
			Sku: &sql.SkuArgs{
				Family: pulumi.String("Gen5"),
				Name:   pulumi.String("GP_Gen5"),
				Tier:   pulumi.String("GeneralPurpose"),
			},
			SubnetId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1"),
			Tags: pulumi.StringMap{
				"a": pulumi.String("b"),
			},
			VCores: pulumi.Int(8),
		})
		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.InstancePool;
import com.pulumi.azurenative.sql.InstancePoolArgs;
import com.pulumi.azurenative.sql.inputs.SkuArgs;
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 instancePool = new InstancePool("instancePool", InstancePoolArgs.builder()
            .instancePoolName("testIP")
            .licenseType("LicenseIncluded")
            .location("japaneast")
            .resourceGroupName("group1")
            .sku(SkuArgs.builder()
                .family("Gen5")
                .name("GP_Gen5")
                .tier("GeneralPurpose")
                .build())
            .subnetId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1")
            .tags(Map.of("a", "b"))
            .vCores(8)
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const instancePool = new azure_native.sql.InstancePool("instancePool", {
    instancePoolName: "testIP",
    licenseType: azure_native.sql.InstancePoolLicenseType.LicenseIncluded,
    location: "japaneast",
    resourceGroupName: "group1",
    sku: {
        family: "Gen5",
        name: "GP_Gen5",
        tier: "GeneralPurpose",
    },
    subnetId: "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
    tags: {
        a: "b",
    },
    vCores: 8,
});
import pulumi
import pulumi_azure_native as azure_native
instance_pool = azure_native.sql.InstancePool("instancePool",
    instance_pool_name="testIP",
    license_type=azure_native.sql.InstancePoolLicenseType.LICENSE_INCLUDED,
    location="japaneast",
    resource_group_name="group1",
    sku={
        "family": "Gen5",
        "name": "GP_Gen5",
        "tier": "GeneralPurpose",
    },
    subnet_id="/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
    tags={
        "a": "b",
    },
    v_cores=8)
resources:
  instancePool:
    type: azure-native:sql:InstancePool
    properties:
      instancePoolName: testIP
      licenseType: LicenseIncluded
      location: japaneast
      resourceGroupName: group1
      sku:
        family: Gen5
        name: GP_Gen5
        tier: GeneralPurpose
      subnetId: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1
      tags:
        a: b
      vCores: 8
Create an instance pool with min properties.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var instancePool = new AzureNative.Sql.InstancePool("instancePool", new()
    {
        InstancePoolName = "testIP",
        LicenseType = AzureNative.Sql.InstancePoolLicenseType.LicenseIncluded,
        Location = "japaneast",
        ResourceGroupName = "group1",
        Sku = new AzureNative.Sql.Inputs.SkuArgs
        {
            Family = "Gen5",
            Name = "GP_Gen5",
            Tier = "GeneralPurpose",
        },
        SubnetId = "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
        VCores = 8,
    });
});
package main
import (
	sql "github.com/pulumi/pulumi-azure-native-sdk/sql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := sql.NewInstancePool(ctx, "instancePool", &sql.InstancePoolArgs{
			InstancePoolName:  pulumi.String("testIP"),
			LicenseType:       pulumi.String(sql.InstancePoolLicenseTypeLicenseIncluded),
			Location:          pulumi.String("japaneast"),
			ResourceGroupName: pulumi.String("group1"),
			Sku: &sql.SkuArgs{
				Family: pulumi.String("Gen5"),
				Name:   pulumi.String("GP_Gen5"),
				Tier:   pulumi.String("GeneralPurpose"),
			},
			SubnetId: pulumi.String("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1"),
			VCores:   pulumi.Int(8),
		})
		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.InstancePool;
import com.pulumi.azurenative.sql.InstancePoolArgs;
import com.pulumi.azurenative.sql.inputs.SkuArgs;
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 instancePool = new InstancePool("instancePool", InstancePoolArgs.builder()
            .instancePoolName("testIP")
            .licenseType("LicenseIncluded")
            .location("japaneast")
            .resourceGroupName("group1")
            .sku(SkuArgs.builder()
                .family("Gen5")
                .name("GP_Gen5")
                .tier("GeneralPurpose")
                .build())
            .subnetId("/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1")
            .vCores(8)
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const instancePool = new azure_native.sql.InstancePool("instancePool", {
    instancePoolName: "testIP",
    licenseType: azure_native.sql.InstancePoolLicenseType.LicenseIncluded,
    location: "japaneast",
    resourceGroupName: "group1",
    sku: {
        family: "Gen5",
        name: "GP_Gen5",
        tier: "GeneralPurpose",
    },
    subnetId: "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
    vCores: 8,
});
import pulumi
import pulumi_azure_native as azure_native
instance_pool = azure_native.sql.InstancePool("instancePool",
    instance_pool_name="testIP",
    license_type=azure_native.sql.InstancePoolLicenseType.LICENSE_INCLUDED,
    location="japaneast",
    resource_group_name="group1",
    sku={
        "family": "Gen5",
        "name": "GP_Gen5",
        "tier": "GeneralPurpose",
    },
    subnet_id="/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1",
    v_cores=8)
resources:
  instancePool:
    type: azure-native:sql:InstancePool
    properties:
      instancePoolName: testIP
      licenseType: LicenseIncluded
      location: japaneast
      resourceGroupName: group1
      sku:
        family: Gen5
        name: GP_Gen5
        tier: GeneralPurpose
      subnetId: /subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet1
      vCores: 8
Create InstancePool Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new InstancePool(name: string, args: InstancePoolArgs, opts?: CustomResourceOptions);@overload
def InstancePool(resource_name: str,
                 args: InstancePoolArgs,
                 opts: Optional[ResourceOptions] = None)
@overload
def InstancePool(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 license_type: Optional[Union[str, InstancePoolLicenseType]] = None,
                 resource_group_name: Optional[str] = None,
                 subnet_id: Optional[str] = None,
                 v_cores: Optional[int] = None,
                 instance_pool_name: Optional[str] = None,
                 location: Optional[str] = None,
                 sku: Optional[SkuArgs] = None,
                 tags: Optional[Mapping[str, str]] = None)func NewInstancePool(ctx *Context, name string, args InstancePoolArgs, opts ...ResourceOption) (*InstancePool, error)public InstancePool(string name, InstancePoolArgs args, CustomResourceOptions? opts = null)
public InstancePool(String name, InstancePoolArgs args)
public InstancePool(String name, InstancePoolArgs args, CustomResourceOptions options)
type: azure-native:sql:InstancePool
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args InstancePoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args InstancePoolArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args InstancePoolArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstancePoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args InstancePoolArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var instancePoolResource = new AzureNative.Sql.InstancePool("instancePoolResource", new()
{
    LicenseType = "string",
    ResourceGroupName = "string",
    SubnetId = "string",
    VCores = 0,
    InstancePoolName = "string",
    Location = "string",
    Sku = new AzureNative.Sql.Inputs.SkuArgs
    {
        Name = "string",
        Capacity = 0,
        Family = "string",
        Size = "string",
        Tier = "string",
    },
    Tags = 
    {
        { "string", "string" },
    },
});
example, err := sql.NewInstancePool(ctx, "instancePoolResource", &sql.InstancePoolArgs{
	LicenseType:       pulumi.String("string"),
	ResourceGroupName: pulumi.String("string"),
	SubnetId:          pulumi.String("string"),
	VCores:            pulumi.Int(0),
	InstancePoolName:  pulumi.String("string"),
	Location:          pulumi.String("string"),
	Sku: &sql.SkuArgs{
		Name:     pulumi.String("string"),
		Capacity: pulumi.Int(0),
		Family:   pulumi.String("string"),
		Size:     pulumi.String("string"),
		Tier:     pulumi.String("string"),
	},
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
var instancePoolResource = new InstancePool("instancePoolResource", InstancePoolArgs.builder()
    .licenseType("string")
    .resourceGroupName("string")
    .subnetId("string")
    .vCores(0)
    .instancePoolName("string")
    .location("string")
    .sku(SkuArgs.builder()
        .name("string")
        .capacity(0)
        .family("string")
        .size("string")
        .tier("string")
        .build())
    .tags(Map.of("string", "string"))
    .build());
instance_pool_resource = azure_native.sql.InstancePool("instancePoolResource",
    license_type="string",
    resource_group_name="string",
    subnet_id="string",
    v_cores=0,
    instance_pool_name="string",
    location="string",
    sku={
        "name": "string",
        "capacity": 0,
        "family": "string",
        "size": "string",
        "tier": "string",
    },
    tags={
        "string": "string",
    })
const instancePoolResource = new azure_native.sql.InstancePool("instancePoolResource", {
    licenseType: "string",
    resourceGroupName: "string",
    subnetId: "string",
    vCores: 0,
    instancePoolName: "string",
    location: "string",
    sku: {
        name: "string",
        capacity: 0,
        family: "string",
        size: "string",
        tier: "string",
    },
    tags: {
        string: "string",
    },
});
type: azure-native:sql:InstancePool
properties:
    instancePoolName: string
    licenseType: string
    location: string
    resourceGroupName: string
    sku:
        capacity: 0
        family: string
        name: string
        size: string
        tier: string
    subnetId: string
    tags:
        string: string
    vCores: 0
InstancePool Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The InstancePool resource accepts the following input properties:
- LicenseType string | Pulumi.Azure Native. Sql. Instance Pool License Type 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- ResourceGroup stringName 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- SubnetId string
- Resource ID of the subnet to place this instance pool in.
- VCores int
- Count of vCores belonging to this instance pool.
- InstancePool stringName 
- The name of the instance pool to be created or updated.
- Location string
- Resource location.
- Sku
Pulumi.Azure Native. Sql. Inputs. Sku 
- The name and tier of the SKU.
- Dictionary<string, string>
- Resource tags.
- LicenseType string | InstancePool License Type 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- ResourceGroup stringName 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- SubnetId string
- Resource ID of the subnet to place this instance pool in.
- VCores int
- Count of vCores belonging to this instance pool.
- InstancePool stringName 
- The name of the instance pool to be created or updated.
- Location string
- Resource location.
- Sku
SkuArgs 
- The name and tier of the SKU.
- map[string]string
- Resource tags.
- licenseType String | InstancePool License Type 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- resourceGroup StringName 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- subnetId String
- Resource ID of the subnet to place this instance pool in.
- vCores Integer
- Count of vCores belonging to this instance pool.
- instancePool StringName 
- The name of the instance pool to be created or updated.
- location String
- Resource location.
- sku Sku
- The name and tier of the SKU.
- Map<String,String>
- Resource tags.
- licenseType string | InstancePool License Type 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- resourceGroup stringName 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- subnetId string
- Resource ID of the subnet to place this instance pool in.
- vCores number
- Count of vCores belonging to this instance pool.
- instancePool stringName 
- The name of the instance pool to be created or updated.
- location string
- Resource location.
- sku Sku
- The name and tier of the SKU.
- {[key: string]: string}
- Resource tags.
- license_type str | InstancePool License Type 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- resource_group_ strname 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- subnet_id str
- Resource ID of the subnet to place this instance pool in.
- v_cores int
- Count of vCores belonging to this instance pool.
- instance_pool_ strname 
- The name of the instance pool to be created or updated.
- location str
- Resource location.
- sku
SkuArgs 
- The name and tier of the SKU.
- Mapping[str, str]
- Resource tags.
- licenseType String | "LicenseIncluded" | "Base Price" 
- The license type. Possible values are 'LicenseIncluded' (price for SQL license is included) and 'BasePrice' (without SQL license price).
- resourceGroup StringName 
- The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
- subnetId String
- Resource ID of the subnet to place this instance pool in.
- vCores Number
- Count of vCores belonging to this instance pool.
- instancePool StringName 
- The name of the instance pool to be created or updated.
- location String
- Resource location.
- sku Property Map
- The name and tier of the SKU.
- Map<String>
- Resource tags.
Outputs
All input properties are implicitly available as output properties. Additionally, the InstancePool resource produces the following output properties:
Supporting Types
InstancePoolLicenseType, InstancePoolLicenseTypeArgs        
- LicenseIncluded 
- LicenseIncluded
- BasePrice 
- BasePrice
- InstancePool License Type License Included 
- LicenseIncluded
- InstancePool License Type Base Price 
- BasePrice
- LicenseIncluded 
- LicenseIncluded
- BasePrice 
- BasePrice
- LicenseIncluded 
- LicenseIncluded
- BasePrice 
- BasePrice
- LICENSE_INCLUDED
- LicenseIncluded
- BASE_PRICE
- BasePrice
- "LicenseIncluded" 
- LicenseIncluded
- "BasePrice" 
- BasePrice
Sku, SkuArgs  
- Name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- Capacity int
- Capacity of the particular SKU.
- Family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- Size string
- Size of the particular SKU
- Tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- Name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- Capacity int
- Capacity of the particular SKU.
- Family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- Size string
- Size of the particular SKU
- Tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name String
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity Integer
- Capacity of the particular SKU.
- family String
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size String
- Size of the particular SKU
- tier String
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity number
- Capacity of the particular SKU.
- family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size string
- Size of the particular SKU
- tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name str
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity int
- Capacity of the particular SKU.
- family str
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size str
- Size of the particular SKU
- tier str
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name String
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity Number
- Capacity of the particular SKU.
- family String
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size String
- Size of the particular SKU
- tier String
- The tier or edition of the particular SKU, e.g. Basic, Premium.
SkuResponse, SkuResponseArgs    
- Name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- Capacity int
- Capacity of the particular SKU.
- Family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- Size string
- Size of the particular SKU
- Tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- Name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- Capacity int
- Capacity of the particular SKU.
- Family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- Size string
- Size of the particular SKU
- Tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name String
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity Integer
- Capacity of the particular SKU.
- family String
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size String
- Size of the particular SKU
- tier String
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name string
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity number
- Capacity of the particular SKU.
- family string
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size string
- Size of the particular SKU
- tier string
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name str
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity int
- Capacity of the particular SKU.
- family str
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size str
- Size of the particular SKU
- tier str
- The tier or edition of the particular SKU, e.g. Basic, Premium.
- name String
- The name of the SKU, typically, a letter + Number code, e.g. P3.
- capacity Number
- Capacity of the particular SKU.
- family String
- If the service has different generations of hardware, for the same SKU, then that can be captured here.
- size String
- Size of the particular SKU
- tier String
- The tier or edition of the particular SKU, e.g. Basic, Premium.
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:sql:InstancePool testIP /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/instancePools/{instancePoolName} 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Native pulumi/pulumi-azure-native
- License
- Apache-2.0