Cluster

Manages a Kusto (also known as Azure Data Explorer) Cluster

Example Usage

using Pulumi;
using Azure = Pulumi.Azure;

class MyStack : Stack
{
    public MyStack()
    {
        var rg = new Azure.Core.ResourceGroup("rg", new Azure.Core.ResourceGroupArgs
        {
            Location = "East US",
        });
        var example = new Azure.Kusto.Cluster("example", new Azure.Kusto.ClusterArgs
        {
            Location = rg.Location,
            ResourceGroupName = rg.Name,
            Sku = new Azure.Kusto.Inputs.ClusterSkuArgs
            {
                Name = "Standard_D13_v2",
                Capacity = 2,
            },
            Tags = 
            {
                { "Environment", "Production" },
            },
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-azure/sdk/v3/go/azure/core"
    "github.com/pulumi/pulumi-azure/sdk/v3/go/azure/kusto"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        rg, err := core.NewResourceGroup(ctx, "rg", &core.ResourceGroupArgs{
            Location: pulumi.String("East US"),
        })
        if err != nil {
            return err
        }
        _, err = kusto.NewCluster(ctx, "example", &kusto.ClusterArgs{
            Location:          rg.Location,
            ResourceGroupName: rg.Name,
            Sku: &kusto.ClusterSkuArgs{
                Name:     pulumi.String("Standard_D13_v2"),
                Capacity: pulumi.Int(2),
            },
            Tags: pulumi.Map{
                "Environment": pulumi.String("Production"),
            },
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_azure as azure

rg = azure.core.ResourceGroup("rg", location="East US")
example = azure.kusto.Cluster("example",
    location=rg.location,
    resource_group_name=rg.name,
    sku={
        "name": "Standard_D13_v2",
        "capacity": 2,
    },
    tags={
        "Environment": "Production",
    })
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const rg = new azure.core.ResourceGroup("rg", {location: "East US"});
const example = new azure.kusto.Cluster("example", {
    location: rg.location,
    resourceGroupName: rg.name,
    sku: {
        name: "Standard_D13_v2",
        capacity: 2,
    },
    tags: {
        Environment: "Production",
    },
});

Create a Cluster Resource

new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);
def Cluster(resource_name, opts=None, enable_disk_encryption=None, enable_purge=None, enable_streaming_ingest=None, identity=None, location=None, name=None, resource_group_name=None, sku=None, tags=None, virtual_network_configuration=None, zones=None, __props__=None);
func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args ClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args ClusterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Cluster Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The Cluster resource accepts the following input properties:

ResourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

Sku ClusterSkuArgs

A sku block as defined below.

EnableDiskEncryption bool

Specifies if the cluster’s disks are encrypted.

EnablePurge bool

Specifies if the purge operations are enabled.

EnableStreamingIngest bool

Specifies if the streaming ingest is enabled.

Identity ClusterIdentityArgs

A identity block.

Location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

Name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

Tags Dictionary<string, string>

A mapping of tags to assign to the resource.

VirtualNetworkConfiguration ClusterVirtualNetworkConfigurationArgs

A virtual_network_configuration block as defined below.

Zones List<string>

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

ResourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

Sku ClusterSku

A sku block as defined below.

EnableDiskEncryption bool

Specifies if the cluster’s disks are encrypted.

EnablePurge bool

Specifies if the purge operations are enabled.

EnableStreamingIngest bool

Specifies if the streaming ingest is enabled.

Identity ClusterIdentity

A identity block.

Location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

Name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

Tags map[string]string

A mapping of tags to assign to the resource.

VirtualNetworkConfiguration ClusterVirtualNetworkConfiguration

A virtual_network_configuration block as defined below.

Zones []string

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

resourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

sku ClusterSku

A sku block as defined below.

enableDiskEncryption boolean

Specifies if the cluster’s disks are encrypted.

enablePurge boolean

Specifies if the purge operations are enabled.

enableStreamingIngest boolean

Specifies if the streaming ingest is enabled.

identity ClusterIdentity

A identity block.

location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

tags {[key: string]: string}

A mapping of tags to assign to the resource.

virtualNetworkConfiguration ClusterVirtualNetworkConfiguration

A virtual_network_configuration block as defined below.

zones string[]

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

resource_group_name str

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

sku Dict[ClusterSku]

A sku block as defined below.

enable_disk_encryption bool

Specifies if the cluster’s disks are encrypted.

enable_purge bool

Specifies if the purge operations are enabled.

enable_streaming_ingest bool

Specifies if the streaming ingest is enabled.

identity Dict[ClusterIdentity]

A identity block.

location str

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

name str

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

tags Dict[str, str]

A mapping of tags to assign to the resource.

virtual_network_configuration Dict[ClusterVirtualNetworkConfiguration]

A virtual_network_configuration block as defined below.

zones List[str]

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

Outputs

All input properties are implicitly available as output properties. Additionally, the Cluster resource produces the following output properties:

DataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

Id string
The provider-assigned unique ID for this managed resource.
Uri string

The FQDN of the Azure Kusto Cluster.

DataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

Id string
The provider-assigned unique ID for this managed resource.
Uri string

The FQDN of the Azure Kusto Cluster.

dataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

id string
The provider-assigned unique ID for this managed resource.
uri string

The FQDN of the Azure Kusto Cluster.

data_ingestion_uri str

The Kusto Cluster URI to be used for data ingestion.

id str
The provider-assigned unique ID for this managed resource.
uri str

The FQDN of the Azure Kusto Cluster.

Look up an Existing Cluster Resource

Get an existing Cluster 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?: ClusterState, opts?: CustomResourceOptions): Cluster
static get(resource_name, id, opts=None, data_ingestion_uri=None, enable_disk_encryption=None, enable_purge=None, enable_streaming_ingest=None, identity=None, location=None, name=None, resource_group_name=None, sku=None, tags=None, uri=None, virtual_network_configuration=None, zones=None, __props__=None);
func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

DataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

EnableDiskEncryption bool

Specifies if the cluster’s disks are encrypted.

EnablePurge bool

Specifies if the purge operations are enabled.

EnableStreamingIngest bool

Specifies if the streaming ingest is enabled.

Identity ClusterIdentityArgs

A identity block.

Location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

Name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

ResourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

Sku ClusterSkuArgs

A sku block as defined below.

Tags Dictionary<string, string>

A mapping of tags to assign to the resource.

Uri string

The FQDN of the Azure Kusto Cluster.

VirtualNetworkConfiguration ClusterVirtualNetworkConfigurationArgs

A virtual_network_configuration block as defined below.

Zones List<string>

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

DataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

EnableDiskEncryption bool

Specifies if the cluster’s disks are encrypted.

EnablePurge bool

Specifies if the purge operations are enabled.

EnableStreamingIngest bool

Specifies if the streaming ingest is enabled.

Identity ClusterIdentity

A identity block.

Location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

Name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

ResourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

Sku ClusterSku

A sku block as defined below.

Tags map[string]string

A mapping of tags to assign to the resource.

Uri string

The FQDN of the Azure Kusto Cluster.

VirtualNetworkConfiguration ClusterVirtualNetworkConfiguration

A virtual_network_configuration block as defined below.

Zones []string

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

dataIngestionUri string

The Kusto Cluster URI to be used for data ingestion.

enableDiskEncryption boolean

Specifies if the cluster’s disks are encrypted.

enablePurge boolean

Specifies if the purge operations are enabled.

enableStreamingIngest boolean

Specifies if the streaming ingest is enabled.

identity ClusterIdentity

A identity block.

location string

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

name string

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

resourceGroupName string

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

sku ClusterSku

A sku block as defined below.

tags {[key: string]: string}

A mapping of tags to assign to the resource.

uri string

The FQDN of the Azure Kusto Cluster.

virtualNetworkConfiguration ClusterVirtualNetworkConfiguration

A virtual_network_configuration block as defined below.

zones string[]

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

data_ingestion_uri str

The Kusto Cluster URI to be used for data ingestion.

enable_disk_encryption bool

Specifies if the cluster’s disks are encrypted.

enable_purge bool

Specifies if the purge operations are enabled.

enable_streaming_ingest bool

Specifies if the streaming ingest is enabled.

identity Dict[ClusterIdentity]

A identity block.

location str

The location where the Kusto Cluster should be created. Changing this forces a new resource to be created.

name str

The name of the Kusto Cluster to create. Changing this forces a new resource to be created.

resource_group_name str

Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created.

sku Dict[ClusterSku]

A sku block as defined below.

tags Dict[str, str]

A mapping of tags to assign to the resource.

uri str

The FQDN of the Azure Kusto Cluster.

virtual_network_configuration Dict[ClusterVirtualNetworkConfiguration]

A virtual_network_configuration block as defined below.

zones List[str]

A list of Availability Zones in which the cluster instances should be created in. Changing this forces a new resource to be created.

Supporting Types

ClusterIdentity

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Type string

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned (where Azure will generate a Service Principal for you).

IdentityIds List<string>

The list of user identities associated with the Kusto cluster.

PrincipalId string

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

TenantId string

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

Type string

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned (where Azure will generate a Service Principal for you).

IdentityIds []string

The list of user identities associated with the Kusto cluster.

PrincipalId string

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

TenantId string

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

type string

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned (where Azure will generate a Service Principal for you).

identityIds string[]

The list of user identities associated with the Kusto cluster.

principalId string

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

tenantId string

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

type str

Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned (where Azure will generate a Service Principal for you).

identityIds List[str]

The list of user identities associated with the Kusto cluster.

principal_id str

Specifies the Principal ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

tenant_id str

Specifies the Tenant ID of the System Assigned Managed Service Identity that is configured on this Kusto Cluster.

ClusterSku

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Capacity int

Specifies the node count for the cluster. Boundaries depend on the sku name.

Name string

The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16a_v4, Standard_E2a_v4, Standard_E4a_v4, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8a_v4, Standard_L16s, Standard_L4s and Standard_L8s

Capacity int

Specifies the node count for the cluster. Boundaries depend on the sku name.

Name string

The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16a_v4, Standard_E2a_v4, Standard_E4a_v4, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8a_v4, Standard_L16s, Standard_L4s and Standard_L8s

capacity number

Specifies the node count for the cluster. Boundaries depend on the sku name.

name string

The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16a_v4, Standard_E2a_v4, Standard_E4a_v4, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8a_v4, Standard_L16s, Standard_L4s and Standard_L8s

capacity float

Specifies the node count for the cluster. Boundaries depend on the sku name.

name str

The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16a_v4, Standard_E2a_v4, Standard_E4a_v4, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8a_v4, Standard_L16s, Standard_L4s and Standard_L8s

ClusterVirtualNetworkConfiguration

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

DataManagementPublicIpId string

Data management’s service public IP address resource id.

EnginePublicIpId string

Engine service’s public IP address resource id.

SubnetId string

The subnet resource id.

DataManagementPublicIpId string

Data management’s service public IP address resource id.

EnginePublicIpId string

Engine service’s public IP address resource id.

SubnetId string

The subnet resource id.

dataManagementPublicIpId string

Data management’s service public IP address resource id.

enginePublicIpId string

Engine service’s public IP address resource id.

subnetId string

The subnet resource id.

dataManagementPublicIpId str

Data management’s service public IP address resource id.

enginePublicIpId str

Engine service’s public IP address resource id.

subnet_id str

The subnet resource id.

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes
This Pulumi package is based on the azurerm Terraform Provider.