Cluster

class Cluster : KotlinCustomResource

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

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "my-kusto-cluster-rg",
location: "West Europe",
});
const exampleCluster = new azure.kusto.Cluster("example", {
name: "kustocluster",
location: example.location,
resourceGroupName: example.name,
sku: {
name: "Standard_D13_v2",
capacity: 2,
},
tags: {
Environment: "Production",
},
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="my-kusto-cluster-rg",
location="West Europe")
example_cluster = azure.kusto.Cluster("example",
name="kustocluster",
location=example.location,
resource_group_name=example.name,
sku={
"name": "Standard_D13_v2",
"capacity": 2,
},
tags={
"Environment": "Production",
})
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-kusto-cluster-rg",
Location = "West Europe",
});
var exampleCluster = new Azure.Kusto.Cluster("example", new()
{
Name = "kustocluster",
Location = example.Location,
ResourceGroupName = example.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/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/kusto"
"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-kusto-cluster-rg"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
_, err = kusto.NewCluster(ctx, "example", &kusto.ClusterArgs{
Name: pulumi.String("kustocluster"),
Location: example.Location,
ResourceGroupName: example.Name,
Sku: &kusto.ClusterSkuArgs{
Name: pulumi.String("Standard_D13_v2"),
Capacity: pulumi.Int(2),
},
Tags: pulumi.StringMap{
"Environment": pulumi.String("Production"),
},
})
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.kusto.Cluster;
import com.pulumi.azure.kusto.ClusterArgs;
import com.pulumi.azure.kusto.inputs.ClusterSkuArgs;
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-kusto-cluster-rg")
.location("West Europe")
.build());
var exampleCluster = new Cluster("exampleCluster", ClusterArgs.builder()
.name("kustocluster")
.location(example.location())
.resourceGroupName(example.name())
.sku(ClusterSkuArgs.builder()
.name("Standard_D13_v2")
.capacity(2)
.build())
.tags(Map.of("Environment", "Production"))
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: my-kusto-cluster-rg
location: West Europe
exampleCluster:
type: azure:kusto:Cluster
name: example
properties:
name: kustocluster
location: ${example.location}
resourceGroupName: ${example.name}
sku:
name: Standard_D13_v2
capacity: 2
tags:
Environment: Production

Import

Kusto Clusters can be imported using the resource id, e.g.

$ pulumi import azure:kusto/cluster:Cluster example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Kusto/clusters/cluster1

Properties

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

List of allowed FQDNs(Fully Qualified Domain Name) for egress from Cluster.

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

The list of ips in the format of CIDR allowed to connect to the cluster.

Link copied to clipboard
val autoStopEnabled: Output<Boolean>?

Specifies if the cluster could be automatically stopped (due to lack of data or no activity for many days). Defaults to true.

Link copied to clipboard

The Kusto Cluster URI to be used for data ingestion.

Link copied to clipboard

Specifies if the cluster's disks are encrypted.

Link copied to clipboard

Is the cluster's double encryption enabled? Changing this forces a new resource to be created.

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

An identity block as defined below.

Link copied to clipboard

An list of language_extensions to enable. Valid values are: PYTHON, PYTHON_3.10.8 and R. PYTHON is used to specify Python 3.6.5 image and PYTHON_3.10.8 is used to specify Python 3.10.8 image. Note that PYTHON_3.10.8 is only available in skus which support nested virtualization.

Link copied to clipboard
val location: Output<String>

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

Link copied to clipboard
val name: Output<String>

The name of the Kusto Cluster to create. Only lowercase Alphanumeric characters allowed, starting with a letter. Changing this forces a new resource to be created.

Link copied to clipboard

An optimized_auto_scale block as defined below.

Link copied to clipboard

Whether to restrict outbound network access. Value is optional but if passed in, must be true or false, default is false.

Link copied to clipboard
val publicIpType: Output<String>?

Indicates what public IP type to create - IPv4 (default), or DualStack (both IPv4 and IPv6). Defaults to IPv4.

Link copied to clipboard

Is the public network access enabled? Defaults to true.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val purgeEnabled: Output<Boolean>?

Specifies if the purge operations are enabled.

Link copied to clipboard

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

Link copied to clipboard
val sku: Output<ClusterSku>

A sku block as defined below.

Link copied to clipboard

Specifies if the streaming ingest is enabled.

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

A mapping of tags to assign to the resource.

Link copied to clipboard

Specifies a list of tenant IDs that are trusted by the cluster. Default setting trusts all other tenants. Use trusted_external_tenants = ["*"] to explicitly allow all other tenants, trusted_external_tenants = ["MyTenantOnly"] for only your tenant or trusted_external_tenants = ["<tenantId1>", "<tenantIdx>"] to allow specific other tenants.

Link copied to clipboard
val uri: Output<String>

The FQDN of the Azure Kusto Cluster.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard

A virtual_network_configuration block as defined below.

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

Specifies a list of Availability Zones in which this Kusto Cluster should be located. Changing this forces a new Kusto Cluster to be created.