Microsoft.ServiceFabric managedClusters 2021-05-01

Bicep resource definition

The managedClusters resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ServiceFabric/managedClusters resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.ServiceFabric/managedClusters@2021-05-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    name: 'string'
  }
  properties: {
    addonFeatures: [
      'string'
    ]
    adminPassword: 'string'
    adminUserName: 'string'
    allowRdpAccess: bool
    applicationTypeVersionsCleanupPolicy: {
      maxUnusedVersionsToKeep: int
    }
    azureActiveDirectory: {
      clientApplication: 'string'
      clusterApplication: 'string'
      tenantId: 'string'
    }
    clientConnectionPort: int
    clients: [
      {
        commonName: 'string'
        isAdmin: bool
        issuerThumbprint: 'string'
        thumbprint: 'string'
      }
    ]
    clusterCodeVersion: 'string'
    clusterUpgradeCadence: 'string'
    clusterUpgradeMode: 'string'
    dnsName: 'string'
    enableAutoOSUpgrade: bool
    fabricSettings: [
      {
        name: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
      }
    ]
    httpGatewayConnectionPort: int
    loadBalancingRules: [
      {
        backendPort: int
        frontendPort: int
        probePort: int
        probeProtocol: 'string'
        probeRequestPath: 'string'
        protocol: 'string'
      }
    ]
    networkSecurityRules: [
      {
        access: 'string'
        description: 'string'
        destinationAddressPrefixes: [
          'string'
        ]
        destinationPortRanges: [
          'string'
        ]
        direction: 'string'
        name: 'string'
        priority: int
        protocol: 'string'
        sourceAddressPrefixes: [
          'string'
        ]
        sourcePortRanges: [
          'string'
        ]
      }
    ]
    zonalResiliency: bool
  }
}

Property values

managedClusters

Name Description Value
name The resource name string (required)
location Azure resource location. string (required)
tags Azure resource tags. Dictionary of tag names and values. See Tags in templates
sku The sku of the managed cluster Sku
properties The managed cluster resource properties ManagedClusterProperties

ManagedClusterProperties

Name Description Value
addonFeatures List of add-on features to enable on the cluster. String array containing any of:
'BackupRestoreService'
'DnsService'
'ResourceMonitorService'
adminPassword VM admin user password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
adminUserName VM admin user name. string (required)
allowRdpAccess Setting this to true enables RDP access to the VM. The default NSG rule opens RDP port to internet which can be overridden with custom Network Security Rules. The default value for this setting is false. bool
applicationTypeVersionsCleanupPolicy The policy used to clean up unused versions. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory The AAD authentication settings of the cluster. AzureActiveDirectory
clientConnectionPort The port used for client connections to the cluster. int
clients Client certificates that are allowed to manage the cluster. ClientCertificate[]
clusterCodeVersion The Service Fabric runtime version of the cluster. This property is required when clusterUpgradeMode is set to 'Manual'. To get list of available Service Fabric versions for new clusters use ClusterVersion API. To get the list of available version for existing clusters use availableClusterVersions. string
clusterUpgradeCadence Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when clusterUpgradeMode is set to 'Automatic'. 'Wave0'
'Wave1'
'Wave2'
clusterUpgradeMode The upgrade mode of the cluster when new Service Fabric runtime version is available. 'Automatic'
'Manual'
dnsName The cluster dns name. string (required)
enableAutoOSUpgrade Setting this to true enables automatic OS upgrade for the node types that are created using any platform OS image with version 'latest'. The default value for this setting is false. bool
fabricSettings The list of custom fabric settings to configure the cluster. SettingsSectionDescription[]
httpGatewayConnectionPort The port used for HTTP connections to the cluster. int
loadBalancingRules Load balancing rules that are applied to the public load balancer of the cluster. LoadBalancingRule[]
networkSecurityRules Custom Network Security Rules that are applied to the virtual network of the cluster. NetworkSecurityRule[]
zonalResiliency Indicates if the cluster has zone resiliency. bool

ApplicationTypeVersionsCleanupPolicy

Name Description Value
maxUnusedVersionsToKeep Number of unused versions per application type to keep. int (required)

Constraints:
Min value = 0

AzureActiveDirectory

Name Description Value
clientApplication Azure active directory client application id. string
clusterApplication Azure active directory cluster application id. string
tenantId Azure active directory tenant id. string

ClientCertificate

Name Description Value
commonName Certificate common name. string
isAdmin Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster. bool (required)
issuerThumbprint Issuer thumbprint for the certificate. Only used together with CommonName. string
thumbprint Certificate thumbprint. string

SettingsSectionDescription

Name Description Value
name The section name of the fabric settings. string (required)
parameters The collection of parameters in the section. SettingsParameterDescription[] (required)

SettingsParameterDescription

Name Description Value
name The parameter name of fabric setting. string (required)
value The parameter value of fabric setting. string (required)

LoadBalancingRule

Name Description Value
backendPort The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535. int (required)

Constraints:
Min value = 1
Max value = 65534
frontendPort The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534. int (required)

Constraints:
Min value = 1
Max value = 65534
probePort The prob port used by the load balancing rule. Acceptable values are between 1 and 65535. int

Constraints:
Min value = 1
Max value = 65534
probeProtocol the reference to the load balancer probe used by the load balancing rule. 'http'
'https'
'tcp' (required)
probeRequestPath The probe request path. Only supported for HTTP/HTTPS probes. string
protocol The reference to the transport protocol used by the load balancing rule. 'tcp'
'udp' (required)

NetworkSecurityRule

Name Description Value
access The network traffic is allowed or denied. 'allow'
'deny' (required)
description Network security rule description. string
destinationAddressPrefixes The destination address prefixes. CIDR or destination IP ranges. string[]
destinationPortRanges The destination port ranges. string[]
direction Network security rule direction. 'inbound'
'outbound' (required)
name Network security rule name. string (required)
priority The priority of the rule. The value can be in the range 1000 to 3000. Values outside this range are reserved for Service Fabric ManagerCluster Resource Provider. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. int (required)

Constraints:
Min value = 1000
Max value = 3000
protocol Network protocol this rule applies to. 'ah'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp' (required)
sourceAddressPrefixes The CIDR or source IP ranges. string[]
sourcePortRanges The source port ranges. string[]

Sku

Name Description Value
name Sku Name. 'Basic'
'Standard' (required)

ARM template resource definition

The managedClusters resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ServiceFabric/managedClusters resource, add the following JSON to your template.

{
  "type": "Microsoft.ServiceFabric/managedClusters",
  "apiVersion": "2021-05-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "sku": {
    "name": "string"
  },
  "properties": {
    "addonFeatures": [ "string" ],
    "adminPassword": "string",
    "adminUserName": "string",
    "allowRdpAccess": "bool",
    "applicationTypeVersionsCleanupPolicy": {
      "maxUnusedVersionsToKeep": "int"
    },
    "azureActiveDirectory": {
      "clientApplication": "string",
      "clusterApplication": "string",
      "tenantId": "string"
    },
    "clientConnectionPort": "int",
    "clients": [
      {
        "commonName": "string",
        "isAdmin": "bool",
        "issuerThumbprint": "string",
        "thumbprint": "string"
      }
    ],
    "clusterCodeVersion": "string",
    "clusterUpgradeCadence": "string",
    "clusterUpgradeMode": "string",
    "dnsName": "string",
    "enableAutoOSUpgrade": "bool",
    "fabricSettings": [
      {
        "name": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ]
      }
    ],
    "httpGatewayConnectionPort": "int",
    "loadBalancingRules": [
      {
        "backendPort": "int",
        "frontendPort": "int",
        "probePort": "int",
        "probeProtocol": "string",
        "probeRequestPath": "string",
        "protocol": "string"
      }
    ],
    "networkSecurityRules": [
      {
        "access": "string",
        "description": "string",
        "destinationAddressPrefixes": [ "string" ],
        "destinationPortRanges": [ "string" ],
        "direction": "string",
        "name": "string",
        "priority": "int",
        "protocol": "string",
        "sourceAddressPrefixes": [ "string" ],
        "sourcePortRanges": [ "string" ]
      }
    ],
    "zonalResiliency": "bool"
  }
}

Property values

managedClusters

Name Description Value
type The resource type 'Microsoft.ServiceFabric/managedClusters'
apiVersion The resource api version '2021-05-01'
name The resource name string (required)
location Azure resource location. string (required)
tags Azure resource tags. Dictionary of tag names and values. See Tags in templates
sku The sku of the managed cluster Sku
properties The managed cluster resource properties ManagedClusterProperties

ManagedClusterProperties

Name Description Value
addonFeatures List of add-on features to enable on the cluster. String array containing any of:
'BackupRestoreService'
'DnsService'
'ResourceMonitorService'
adminPassword VM admin user password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
adminUserName VM admin user name. string (required)
allowRdpAccess Setting this to true enables RDP access to the VM. The default NSG rule opens RDP port to internet which can be overridden with custom Network Security Rules. The default value for this setting is false. bool
applicationTypeVersionsCleanupPolicy The policy used to clean up unused versions. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory The AAD authentication settings of the cluster. AzureActiveDirectory
clientConnectionPort The port used for client connections to the cluster. int
clients Client certificates that are allowed to manage the cluster. ClientCertificate[]
clusterCodeVersion The Service Fabric runtime version of the cluster. This property is required when clusterUpgradeMode is set to 'Manual'. To get list of available Service Fabric versions for new clusters use ClusterVersion API. To get the list of available version for existing clusters use availableClusterVersions. string
clusterUpgradeCadence Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when clusterUpgradeMode is set to 'Automatic'. 'Wave0'
'Wave1'
'Wave2'
clusterUpgradeMode The upgrade mode of the cluster when new Service Fabric runtime version is available. 'Automatic'
'Manual'
dnsName The cluster dns name. string (required)
enableAutoOSUpgrade Setting this to true enables automatic OS upgrade for the node types that are created using any platform OS image with version 'latest'. The default value for this setting is false. bool
fabricSettings The list of custom fabric settings to configure the cluster. SettingsSectionDescription[]
httpGatewayConnectionPort The port used for HTTP connections to the cluster. int
loadBalancingRules Load balancing rules that are applied to the public load balancer of the cluster. LoadBalancingRule[]
networkSecurityRules Custom Network Security Rules that are applied to the virtual network of the cluster. NetworkSecurityRule[]
zonalResiliency Indicates if the cluster has zone resiliency. bool

ApplicationTypeVersionsCleanupPolicy

Name Description Value
maxUnusedVersionsToKeep Number of unused versions per application type to keep. int (required)

Constraints:
Min value = 0

AzureActiveDirectory

Name Description Value
clientApplication Azure active directory client application id. string
clusterApplication Azure active directory cluster application id. string
tenantId Azure active directory tenant id. string

ClientCertificate

Name Description Value
commonName Certificate common name. string
isAdmin Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster. bool (required)
issuerThumbprint Issuer thumbprint for the certificate. Only used together with CommonName. string
thumbprint Certificate thumbprint. string

SettingsSectionDescription

Name Description Value
name The section name of the fabric settings. string (required)
parameters The collection of parameters in the section. SettingsParameterDescription[] (required)

SettingsParameterDescription

Name Description Value
name The parameter name of fabric setting. string (required)
value The parameter value of fabric setting. string (required)

LoadBalancingRule

Name Description Value
backendPort The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535. int (required)

Constraints:
Min value = 1
Max value = 65534
frontendPort The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534. int (required)

Constraints:
Min value = 1
Max value = 65534
probePort The prob port used by the load balancing rule. Acceptable values are between 1 and 65535. int

Constraints:
Min value = 1
Max value = 65534
probeProtocol the reference to the load balancer probe used by the load balancing rule. 'http'
'https'
'tcp' (required)
probeRequestPath The probe request path. Only supported for HTTP/HTTPS probes. string
protocol The reference to the transport protocol used by the load balancing rule. 'tcp'
'udp' (required)

NetworkSecurityRule

Name Description Value
access The network traffic is allowed or denied. 'allow'
'deny' (required)
description Network security rule description. string
destinationAddressPrefixes The destination address prefixes. CIDR or destination IP ranges. string[]
destinationPortRanges The destination port ranges. string[]
direction Network security rule direction. 'inbound'
'outbound' (required)
name Network security rule name. string (required)
priority The priority of the rule. The value can be in the range 1000 to 3000. Values outside this range are reserved for Service Fabric ManagerCluster Resource Provider. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. int (required)

Constraints:
Min value = 1000
Max value = 3000
protocol Network protocol this rule applies to. 'ah'
'esp'
'http'
'https'
'icmp'
'tcp'
'udp' (required)
sourceAddressPrefixes The CIDR or source IP ranges. string[]
sourcePortRanges The source port ranges. string[]

Sku

Name Description Value
name Sku Name. 'Basic'
'Standard' (required)

Terraform (AzAPI provider) resource definition

The managedClusters resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ServiceFabric/managedClusters resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/managedClusters@2021-05-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      addonFeatures = [
        "string"
      ]
      adminPassword = "string"
      adminUserName = "string"
      allowRdpAccess = bool
      applicationTypeVersionsCleanupPolicy = {
        maxUnusedVersionsToKeep = int
      }
      azureActiveDirectory = {
        clientApplication = "string"
        clusterApplication = "string"
        tenantId = "string"
      }
      clientConnectionPort = int
      clients = [
        {
          commonName = "string"
          isAdmin = bool
          issuerThumbprint = "string"
          thumbprint = "string"
        }
      ]
      clusterCodeVersion = "string"
      clusterUpgradeCadence = "string"
      clusterUpgradeMode = "string"
      dnsName = "string"
      enableAutoOSUpgrade = bool
      fabricSettings = [
        {
          name = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
        }
      ]
      httpGatewayConnectionPort = int
      loadBalancingRules = [
        {
          backendPort = int
          frontendPort = int
          probePort = int
          probeProtocol = "string"
          probeRequestPath = "string"
          protocol = "string"
        }
      ]
      networkSecurityRules = [
        {
          access = "string"
          description = "string"
          destinationAddressPrefixes = [
            "string"
          ]
          destinationPortRanges = [
            "string"
          ]
          direction = "string"
          name = "string"
          priority = int
          protocol = "string"
          sourceAddressPrefixes = [
            "string"
          ]
          sourcePortRanges = [
            "string"
          ]
        }
      ]
      zonalResiliency = bool
    }
    sku = {
      name = "string"
    }
  })
}

Property values

managedClusters

Name Description Value
type The resource type "Microsoft.ServiceFabric/managedClusters@2021-05-01"
name The resource name string (required)
location Azure resource location. string (required)
parent_id To deploy to a resource group, use the ID of that resource group. string (required)
tags Azure resource tags. Dictionary of tag names and values.
sku The sku of the managed cluster Sku
properties The managed cluster resource properties ManagedClusterProperties

ManagedClusterProperties

Name Description Value
addonFeatures List of add-on features to enable on the cluster. String array containing any of:
"BackupRestoreService"
"DnsService"
"ResourceMonitorService"
adminPassword VM admin user password. string

Constraints:
Sensitive value. Pass in as a secure parameter.
adminUserName VM admin user name. string (required)
allowRdpAccess Setting this to true enables RDP access to the VM. The default NSG rule opens RDP port to internet which can be overridden with custom Network Security Rules. The default value for this setting is false. bool
applicationTypeVersionsCleanupPolicy The policy used to clean up unused versions. ApplicationTypeVersionsCleanupPolicy
azureActiveDirectory The AAD authentication settings of the cluster. AzureActiveDirectory
clientConnectionPort The port used for client connections to the cluster. int
clients Client certificates that are allowed to manage the cluster. ClientCertificate[]
clusterCodeVersion The Service Fabric runtime version of the cluster. This property is required when clusterUpgradeMode is set to 'Manual'. To get list of available Service Fabric versions for new clusters use ClusterVersion API. To get the list of available version for existing clusters use availableClusterVersions. string
clusterUpgradeCadence Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when clusterUpgradeMode is set to 'Automatic'. "Wave0"
"Wave1"
"Wave2"
clusterUpgradeMode The upgrade mode of the cluster when new Service Fabric runtime version is available. "Automatic"
"Manual"
dnsName The cluster dns name. string (required)
enableAutoOSUpgrade Setting this to true enables automatic OS upgrade for the node types that are created using any platform OS image with version 'latest'. The default value for this setting is false. bool
fabricSettings The list of custom fabric settings to configure the cluster. SettingsSectionDescription[]
httpGatewayConnectionPort The port used for HTTP connections to the cluster. int
loadBalancingRules Load balancing rules that are applied to the public load balancer of the cluster. LoadBalancingRule[]
networkSecurityRules Custom Network Security Rules that are applied to the virtual network of the cluster. NetworkSecurityRule[]
zonalResiliency Indicates if the cluster has zone resiliency. bool

ApplicationTypeVersionsCleanupPolicy

Name Description Value
maxUnusedVersionsToKeep Number of unused versions per application type to keep. int (required)

Constraints:
Min value = 0

AzureActiveDirectory

Name Description Value
clientApplication Azure active directory client application id. string
clusterApplication Azure active directory cluster application id. string
tenantId Azure active directory tenant id. string

ClientCertificate

Name Description Value
commonName Certificate common name. string
isAdmin Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster. bool (required)
issuerThumbprint Issuer thumbprint for the certificate. Only used together with CommonName. string
thumbprint Certificate thumbprint. string

SettingsSectionDescription

Name Description Value
name The section name of the fabric settings. string (required)
parameters The collection of parameters in the section. SettingsParameterDescription[] (required)

SettingsParameterDescription

Name Description Value
name The parameter name of fabric setting. string (required)
value The parameter value of fabric setting. string (required)

LoadBalancingRule

Name Description Value
backendPort The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535. int (required)

Constraints:
Min value = 1
Max value = 65534
frontendPort The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534. int (required)

Constraints:
Min value = 1
Max value = 65534
probePort The prob port used by the load balancing rule. Acceptable values are between 1 and 65535. int

Constraints:
Min value = 1
Max value = 65534
probeProtocol the reference to the load balancer probe used by the load balancing rule. "http"
"https"
"tcp" (required)
probeRequestPath The probe request path. Only supported for HTTP/HTTPS probes. string
protocol The reference to the transport protocol used by the load balancing rule. "tcp"
"udp" (required)

NetworkSecurityRule

Name Description Value
access The network traffic is allowed or denied. "allow"
"deny" (required)
description Network security rule description. string
destinationAddressPrefixes The destination address prefixes. CIDR or destination IP ranges. string[]
destinationPortRanges The destination port ranges. string[]
direction Network security rule direction. "inbound"
"outbound" (required)
name Network security rule name. string (required)
priority The priority of the rule. The value can be in the range 1000 to 3000. Values outside this range are reserved for Service Fabric ManagerCluster Resource Provider. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. int (required)

Constraints:
Min value = 1000
Max value = 3000
protocol Network protocol this rule applies to. "ah"
"esp"
"http"
"https"
"icmp"
"tcp"
"udp" (required)
sourceAddressPrefixes The CIDR or source IP ranges. string[]
sourcePortRanges The source port ranges. string[]

Sku

Name Description Value
name Sku Name. "Basic"
"Standard" (required)