We recommend using Azure Native.
azure.compute.DiskPool
Explore with Pulumi AI
Manages a Disk Pool.
!> Note: Azure are officially halting the preview of Azure Disk Pools, and it will not be made generally available. New customers will not be able to register the Microsoft.StoragePool resource provider on their subscription and deploy new Disk Pools. Existing subscriptions registered with Microsoft.StoragePool may continue to deploy and manage disk pools for the time being.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new()
{
Location = "West Europe",
});
var exampleVirtualNetwork = new Azure.Network.VirtualNetwork("exampleVirtualNetwork", new()
{
ResourceGroupName = exampleResourceGroup.Name,
Location = exampleResourceGroup.Location,
AddressSpaces = new[]
{
"10.0.0.0/16",
},
});
var exampleSubnet = new Azure.Network.Subnet("exampleSubnet", new()
{
ResourceGroupName = exampleVirtualNetwork.ResourceGroupName,
VirtualNetworkName = exampleVirtualNetwork.Name,
AddressPrefixes = new[]
{
"10.0.0.0/24",
},
Delegations = new[]
{
new Azure.Network.Inputs.SubnetDelegationArgs
{
Name = "diskspool",
ServiceDelegation = new Azure.Network.Inputs.SubnetDelegationServiceDelegationArgs
{
Actions = new[]
{
"Microsoft.Network/virtualNetworks/read",
},
Name = "Microsoft.StoragePool/diskPools",
},
},
},
});
var exampleDiskPool = new Azure.Compute.DiskPool("exampleDiskPool", new()
{
ResourceGroupName = exampleResourceGroup.Name,
Location = exampleResourceGroup.Location,
SkuName = "Basic_B1",
SubnetId = exampleSubnet.Id,
Zones = new[]
{
"1",
},
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/compute"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "exampleVirtualNetwork", &network.VirtualNetworkArgs{
ResourceGroupName: exampleResourceGroup.Name,
Location: exampleResourceGroup.Location,
AddressSpaces: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
})
if err != nil {
return err
}
exampleSubnet, err := network.NewSubnet(ctx, "exampleSubnet", &network.SubnetArgs{
ResourceGroupName: exampleVirtualNetwork.ResourceGroupName,
VirtualNetworkName: exampleVirtualNetwork.Name,
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.0.0.0/24"),
},
Delegations: network.SubnetDelegationArray{
&network.SubnetDelegationArgs{
Name: pulumi.String("diskspool"),
ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
Actions: pulumi.StringArray{
pulumi.String("Microsoft.Network/virtualNetworks/read"),
},
Name: pulumi.String("Microsoft.StoragePool/diskPools"),
},
},
},
})
if err != nil {
return err
}
_, err = compute.NewDiskPool(ctx, "exampleDiskPool", &compute.DiskPoolArgs{
ResourceGroupName: exampleResourceGroup.Name,
Location: exampleResourceGroup.Location,
SkuName: pulumi.String("Basic_B1"),
SubnetId: exampleSubnet.ID(),
Zones: pulumi.StringArray{
pulumi.String("1"),
},
})
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.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;
import com.pulumi.azure.compute.DiskPool;
import com.pulumi.azure.compute.DiskPoolArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.addressSpaces("10.0.0.0/16")
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.resourceGroupName(exampleVirtualNetwork.resourceGroupName())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.0.0.0/24")
.delegations(SubnetDelegationArgs.builder()
.name("diskspool")
.serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()
.actions("Microsoft.Network/virtualNetworks/read")
.name("Microsoft.StoragePool/diskPools")
.build())
.build())
.build());
var exampleDiskPool = new DiskPool("exampleDiskPool", DiskPoolArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.skuName("Basic_B1")
.subnetId(exampleSubnet.id())
.zones("1")
.build());
}
}
import pulumi
import pulumi_azure as azure
example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_virtual_network = azure.network.VirtualNetwork("exampleVirtualNetwork",
resource_group_name=example_resource_group.name,
location=example_resource_group.location,
address_spaces=["10.0.0.0/16"])
example_subnet = azure.network.Subnet("exampleSubnet",
resource_group_name=example_virtual_network.resource_group_name,
virtual_network_name=example_virtual_network.name,
address_prefixes=["10.0.0.0/24"],
delegations=[azure.network.SubnetDelegationArgs(
name="diskspool",
service_delegation=azure.network.SubnetDelegationServiceDelegationArgs(
actions=["Microsoft.Network/virtualNetworks/read"],
name="Microsoft.StoragePool/diskPools",
),
)])
example_disk_pool = azure.compute.DiskPool("exampleDiskPool",
resource_group_name=example_resource_group.name,
location=example_resource_group.location,
sku_name="Basic_B1",
subnet_id=example_subnet.id,
zones=["1"])
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
addressSpaces: ["10.0.0.0/16"],
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleVirtualNetwork.resourceGroupName,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefixes: ["10.0.0.0/24"],
delegations: [{
name: "diskspool",
serviceDelegation: {
actions: ["Microsoft.Network/virtualNetworks/read"],
name: "Microsoft.StoragePool/diskPools",
},
}],
});
const exampleDiskPool = new azure.compute.DiskPool("exampleDiskPool", {
resourceGroupName: exampleResourceGroup.name,
location: exampleResourceGroup.location,
skuName: "Basic_B1",
subnetId: exampleSubnet.id,
zones: ["1"],
});
resources:
exampleResourceGroup:
type: azure:core:ResourceGroup
properties:
location: West Europe
exampleVirtualNetwork:
type: azure:network:VirtualNetwork
properties:
resourceGroupName: ${exampleResourceGroup.name}
location: ${exampleResourceGroup.location}
addressSpaces:
- 10.0.0.0/16
exampleSubnet:
type: azure:network:Subnet
properties:
resourceGroupName: ${exampleVirtualNetwork.resourceGroupName}
virtualNetworkName: ${exampleVirtualNetwork.name}
addressPrefixes:
- 10.0.0.0/24
delegations:
- name: diskspool
serviceDelegation:
actions:
- Microsoft.Network/virtualNetworks/read
name: Microsoft.StoragePool/diskPools
exampleDiskPool:
type: azure:compute:DiskPool
properties:
resourceGroupName: ${exampleResourceGroup.name}
location: ${exampleResourceGroup.location}
skuName: Basic_B1
subnetId: ${exampleSubnet.id}
zones:
- '1'
Create DiskPool Resource
new DiskPool(name: string, args: DiskPoolArgs, opts?: CustomResourceOptions);
@overload
def DiskPool(resource_name: str,
opts: Optional[ResourceOptions] = None,
location: Optional[str] = None,
name: Optional[str] = None,
resource_group_name: Optional[str] = None,
sku_name: Optional[str] = None,
subnet_id: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
zones: Optional[Sequence[str]] = None)
@overload
def DiskPool(resource_name: str,
args: DiskPoolArgs,
opts: Optional[ResourceOptions] = None)
func NewDiskPool(ctx *Context, name string, args DiskPoolArgs, opts ...ResourceOption) (*DiskPool, error)
public DiskPool(string name, DiskPoolArgs args, CustomResourceOptions? opts = null)
public DiskPool(String name, DiskPoolArgs args)
public DiskPool(String name, DiskPoolArgs args, CustomResourceOptions options)
type: azure:compute:DiskPool
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DiskPoolArgs
- 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 DiskPoolArgs
- 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 DiskPoolArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DiskPoolArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args DiskPoolArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
DiskPool Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The DiskPool resource accepts the following input properties:
- Resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- Subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Zones List<string>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- Location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Dictionary<string, string>
A mapping of tags which should be assigned to the Disk Pool.
- Resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- Subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Zones []string
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- Location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- map[string]string
A mapping of tags which should be assigned to the Disk Pool.
- resource
Group StringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name String The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id String The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- zones List<String>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location String
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name String
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Map<String,String>
A mapping of tags which should be assigned to the Disk Pool.
- resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- zones string[]
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- {[key: string]: string}
A mapping of tags which should be assigned to the Disk Pool.
- resource_
group_ strname The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku_
name str The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet_
id str The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- zones Sequence[str]
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location str
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name str
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Mapping[str, str]
A mapping of tags which should be assigned to the Disk Pool.
- resource
Group StringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name String The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id String The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- zones List<String>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location String
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name String
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Map<String>
A mapping of tags which should be assigned to the Disk Pool.
Outputs
All input properties are implicitly available as output properties. Additionally, the DiskPool resource produces the following output properties:
- Id string
The provider-assigned unique ID for this managed resource.
- Id string
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
- id string
The provider-assigned unique ID for this managed resource.
- id str
The provider-assigned unique ID for this managed resource.
- id String
The provider-assigned unique ID for this managed resource.
Look up Existing DiskPool Resource
Get an existing DiskPool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: DiskPoolState, opts?: CustomResourceOptions): DiskPool
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
location: Optional[str] = None,
name: Optional[str] = None,
resource_group_name: Optional[str] = None,
sku_name: Optional[str] = None,
subnet_id: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
zones: Optional[Sequence[str]] = None) -> DiskPool
func GetDiskPool(ctx *Context, name string, id IDInput, state *DiskPoolState, opts ...ResourceOption) (*DiskPool, error)
public static DiskPool Get(string name, Input<string> id, DiskPoolState? state, CustomResourceOptions? opts = null)
public static DiskPool get(String name, Output<String> id, DiskPoolState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- Subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Dictionary<string, string>
A mapping of tags which should be assigned to the Disk Pool.
- Zones List<string>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- Location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- Resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- Sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- Subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- map[string]string
A mapping of tags which should be assigned to the Disk Pool.
- Zones []string
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location String
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name String
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- resource
Group StringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name String The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id String The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Map<String,String>
A mapping of tags which should be assigned to the Disk Pool.
- zones List<String>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location string
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name string
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- resource
Group stringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name string The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id string The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- {[key: string]: string}
A mapping of tags which should be assigned to the Disk Pool.
- zones string[]
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location str
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name str
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- resource_
group_ strname The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku_
name str The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet_
id str The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Mapping[str, str]
A mapping of tags which should be assigned to the Disk Pool.
- zones Sequence[str]
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
- location String
The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- name String
The name of the Disk Pool. Changing this forces a new Disk Pool to be created.
- resource
Group StringName The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created.
- sku
Name String The SKU of the Disk Pool. Possible values are
Basic_B1
,Standard_S1
andPremium_P1
. Changing this forces a new Disk Pool to be created.- subnet
Id String The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created.
- Map<String>
A mapping of tags which should be assigned to the Disk Pool.
- zones List<String>
Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created.
Import
Disk Pools can be imported using the resource id
, e.g.
$ pulumi import azure:compute/diskPool:DiskPool example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.StoragePool/diskPools/diskPool1
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
azurerm
Terraform Provider.