Cluster

class Cluster : KotlinCustomResource

Manages a Service Fabric Cluster.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleCluster = new azure.servicefabric.Cluster("example", {
name: "example-servicefabric",
resourceGroupName: example.name,
location: example.location,
reliabilityLevel: "Bronze",
upgradeMode: "Manual",
clusterCodeVersion: "7.1.456.959",
vmImage: "Windows",
managementEndpoint: "https://example:80",
nodeTypes: [{
name: "first",
instanceCount: 3,
isPrimary: true,
clientEndpointPort: 2020,
httpEndpointPort: 80,
}],
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_cluster = azure.servicefabric.Cluster("example",
name="example-servicefabric",
resource_group_name=example.name,
location=example.location,
reliability_level="Bronze",
upgrade_mode="Manual",
cluster_code_version="7.1.456.959",
vm_image="Windows",
management_endpoint="https://example:80",
node_types=[{
"name": "first",
"instance_count": 3,
"is_primary": True,
"client_endpoint_port": 2020,
"http_endpoint_port": 80,
}])
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 = "example-resources",
Location = "West Europe",
});
var exampleCluster = new Azure.ServiceFabric.Cluster("example", new()
{
Name = "example-servicefabric",
ResourceGroupName = example.Name,
Location = example.Location,
ReliabilityLevel = "Bronze",
UpgradeMode = "Manual",
ClusterCodeVersion = "7.1.456.959",
VmImage = "Windows",
ManagementEndpoint = "https://example:80",
NodeTypes = new[]
{
new Azure.ServiceFabric.Inputs.ClusterNodeTypeArgs
{
Name = "first",
InstanceCount = 3,
IsPrimary = true,
ClientEndpointPort = 2020,
HttpEndpointPort = 80,
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/servicefabric"
"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("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
_, err = servicefabric.NewCluster(ctx, "example", &servicefabric.ClusterArgs{
Name: pulumi.String("example-servicefabric"),
ResourceGroupName: example.Name,
Location: example.Location,
ReliabilityLevel: pulumi.String("Bronze"),
UpgradeMode: pulumi.String("Manual"),
ClusterCodeVersion: pulumi.String("7.1.456.959"),
VmImage: pulumi.String("Windows"),
ManagementEndpoint: pulumi.String("https://example:80"),
NodeTypes: servicefabric.ClusterNodeTypeArray{
&servicefabric.ClusterNodeTypeArgs{
Name: pulumi.String("first"),
InstanceCount: pulumi.Int(3),
IsPrimary: pulumi.Bool(true),
ClientEndpointPort: pulumi.Int(2020),
HttpEndpointPort: pulumi.Int(80),
},
},
})
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.servicefabric.Cluster;
import com.pulumi.azure.servicefabric.ClusterArgs;
import com.pulumi.azure.servicefabric.inputs.ClusterNodeTypeArgs;
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("example-resources")
.location("West Europe")
.build());
var exampleCluster = new Cluster("exampleCluster", ClusterArgs.builder()
.name("example-servicefabric")
.resourceGroupName(example.name())
.location(example.location())
.reliabilityLevel("Bronze")
.upgradeMode("Manual")
.clusterCodeVersion("7.1.456.959")
.vmImage("Windows")
.managementEndpoint("https://example:80")
.nodeTypes(ClusterNodeTypeArgs.builder()
.name("first")
.instanceCount(3)
.isPrimary(true)
.clientEndpointPort(2020)
.httpEndpointPort(80)
.build())
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleCluster:
type: azure:servicefabric:Cluster
name: example
properties:
name: example-servicefabric
resourceGroupName: ${example.name}
location: ${example.location}
reliabilityLevel: Bronze
upgradeMode: Manual
clusterCodeVersion: 7.1.456.959
vmImage: Windows
managementEndpoint: https://example:80
nodeTypes:
- name: first
instanceCount: 3
isPrimary: true
clientEndpointPort: 2020
httpEndpointPort: 80

Import

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

$ pulumi import azure:servicefabric/cluster:Cluster cluster1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ServiceFabric/clusters/cluster1

Properties

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

A List of one or more features which should be enabled, such as DnsService.

Link copied to clipboard

An azure_active_directory block as defined below.

Link copied to clipboard

A certificate block as defined below. Conflicts with certificate_common_names.

Link copied to clipboard

A certificate_common_names block as defined below. Conflicts with certificate.

Link copied to clipboard

A client_certificate_common_name block as defined below.

Link copied to clipboard

One or more client_certificate_thumbprint blocks as defined below.

Link copied to clipboard

Required if Upgrade Mode set to Manual, Specifies the Version of the Cluster Code of the cluster.

Link copied to clipboard
val clusterEndpoint: Output<String>

The Cluster Endpoint for this Service Fabric Cluster.

Link copied to clipboard

A diagnostics_config block as defined below.

Link copied to clipboard

One or more fabric_settings blocks as defined below.

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

Specifies the Azure Region where the Service Fabric Cluster should exist. Changing this forces a new resource to be created.

Link copied to clipboard

Specifies the Management Endpoint of the cluster such as http://example.com. Changing this forces a new resource to be created.

Link copied to clipboard
val name: Output<String>

The name of the Service Fabric Cluster. Changing this forces a new resource to be created.

Link copied to clipboard

One or more node_type blocks as defined below.

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

Specifies the Reliability Level of the Cluster. Possible values include None, Bronze, Silver, Gold and Platinum.

Link copied to clipboard

The name of the Resource Group in which the Service Fabric Cluster exists. Changing this forces a new resource to be created.

Link copied to clipboard

A reverse_proxy_certificate block as defined below. Conflicts with reverse_proxy_certificate_common_names.

Link copied to clipboard

A reverse_proxy_certificate_common_names block as defined below. Conflicts with reverse_proxy_certificate.

Link copied to clipboard

Specifies the logical grouping of VMs in upgrade domains. Possible values are Hierarchical or Parallel.

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

A mapping of tags to assign to the resource.

Link copied to clipboard
val upgradeMode: Output<String>

Specifies the Upgrade Mode of the cluster. Possible values are Automatic or Manual.

Link copied to clipboard

A upgrade_policy block as defined below.

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

Specifies the Image expected for the Service Fabric Cluster, such as Windows. Changing this forces a new resource to be created.

Link copied to clipboard

Specifies the upgrade mode for the virtual machine scale set updates that happen in all availability zones at once. Possible values are Hierarchical or Parallel.