Microsoft.ServiceFabric managedClusters 2021-01-01-preview

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-01-01-preview' = {
  location: 'string'
  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'
    dnsName: 'string'
    enableAutoOSUpgrade: bool
    fabricSettings: [
      {
        name: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
      }
    ]
    httpGatewayConnectionPort: int
    loadBalancingRules: [
      {
        backendPort: int
        frontendPort: 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'
        ]
      }
    ]
  }
  sku: {
    name: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

ApplicationTypeVersionsCleanupPolicy

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

Constraints:
Min value = 0 (required)

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

LoadBalancingRule

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

Constraints:
Min value = 1
Max value = 65534 (required)
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

Constraints:
Min value = 1
Max value = 65534 (required)
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)

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 can only by set the user when upgradeMode 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. 'Wave0'
'Wave1'
'Wave2'
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[]

Microsoft.ServiceFabric/managedClusters

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

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

Constraints:
Min value = 1000
Max value = 3000 (required)
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[]

ResourceTags

Name Description Value

SettingsParameterDescription

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

SettingsSectionDescription

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

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-01-01-preview",
  "name": "string",
  "location": "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",
    "dnsName": "string",
    "enableAutoOSUpgrade": "bool",
    "fabricSettings": [
      {
        "name": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ]
      }
    ],
    "httpGatewayConnectionPort": "int",
    "loadBalancingRules": [
      {
        "backendPort": "int",
        "frontendPort": "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" ]
      }
    ]
  },
  "sku": {
    "name": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

ApplicationTypeVersionsCleanupPolicy

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

Constraints:
Min value = 0 (required)

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

LoadBalancingRule

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

Constraints:
Min value = 1
Max value = 65534 (required)
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

Constraints:
Min value = 1
Max value = 65534 (required)
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)

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 can only by set the user when upgradeMode 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. 'Wave0'
'Wave1'
'Wave2'
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[]

Microsoft.ServiceFabric/managedClusters

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

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

Constraints:
Min value = 1000
Max value = 3000 (required)
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[]

ResourceTags

Name Description Value

SettingsParameterDescription

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

SettingsSectionDescription

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

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-01-01-preview"
  name = "string"
  location = "string"
  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"
      dnsName = "string"
      enableAutoOSUpgrade = bool
      fabricSettings = [
        {
          name = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
        }
      ]
      httpGatewayConnectionPort = int
      loadBalancingRules = [
        {
          backendPort = int
          frontendPort = 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"
          ]
        }
      ]
    }
  })
  sku = {
    name = "string"
  }
  tags = {
    {customized property} = "string"
  }
}

Property values

ApplicationTypeVersionsCleanupPolicy

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

Constraints:
Min value = 0 (required)

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

LoadBalancingRule

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

Constraints:
Min value = 1
Max value = 65534 (required)
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

Constraints:
Min value = 1
Max value = 65534 (required)
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)

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 can only by set the user when upgradeMode 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. 'Wave0'
'Wave1'
'Wave2'
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[]

Microsoft.ServiceFabric/managedClusters

Name Description Value
location Azure resource location. string (required)
name The resource name string (required)
properties The managed cluster resource properties ManagedClusterProperties
sku The sku of the managed cluster Sku
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.ServiceFabric/managedClusters@2021-01-01-preview"

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

Constraints:
Min value = 1000
Max value = 3000 (required)
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[]

ResourceTags

Name Description Value

SettingsParameterDescription

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

SettingsSectionDescription

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

Sku

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