Microsoft.ServiceFabric clusters 2016-09-01

Bicep resource definition

The clusters 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/clusters resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.ServiceFabric/clusters@2016-09-01' = {
  location: 'string'
  name: 'string'
  properties: {
    azureActiveDirectory: {
      clientApplication: 'string'
      clusterApplication: 'string'
      tenantId: 'string'
    }
    certificate: {
      thumbprint: 'string'
      thumbprintSecondary: 'string'
      x509StoreName: 'string'
    }
    clientCertificateCommonNames: [
      {
        certificateCommonName: 'string'
        certificateIssuerThumbprint: 'string'
        isAdmin: bool
      }
    ]
    clientCertificateThumbprints: [
      {
        certificateThumbprint: 'string'
        isAdmin: bool
      }
    ]
    clusterCodeVersion: 'string'
    diagnosticsStorageAccountConfig: {
      blobEndpoint: 'string'
      protectedAccountKeyName: 'string'
      queueEndpoint: 'string'
      storageAccountName: 'string'
      tableEndpoint: 'string'
    }
    fabricSettings: [
      {
        name: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
      }
    ]
    managementEndpoint: 'string'
    nodeTypes: [
      {
        applicationPorts: {
          endPort: int
          startPort: int
        }
        capacities: {
          {customized property}: 'string'
        }
        clientConnectionEndpointPort: int
        durabilityLevel: 'string'
        ephemeralPorts: {
          endPort: int
          startPort: int
        }
        httpGatewayEndpointPort: int
        isPrimary: bool
        name: 'string'
        placementProperties: {
          {customized property}: 'string'
        }
        reverseProxyEndpointPort: int
        vmInstanceCount: int
      }
    ]
    reliabilityLevel: 'string'
    reverseProxyCertificate: {
      thumbprint: 'string'
      thumbprintSecondary: 'string'
      x509StoreName: 'string'
    }
    upgradeDescription: {
      deltaHealthPolicy: {
        maxPercentDeltaUnhealthyApplications: int
        maxPercentDeltaUnhealthyNodes: int
        maxPercentUpgradeDomainDeltaUnhealthyNodes: int
      }
      forceRestart: bool
      healthCheckRetryTimeout: 'string'
      healthCheckStableDuration: 'string'
      healthCheckWaitDuration: 'string'
      healthPolicy: {
        maxPercentUnhealthyApplications: int
        maxPercentUnhealthyNodes: int
      }
      overrideUserUpgradePolicy: bool
      upgradeDomainTimeout: 'string'
      upgradeReplicaSetCheckTimeout: 'string'
      upgradeTimeout: 'string'
    }
    upgradeMode: 'string'
    vmImage: 'string'
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

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

CertificateDescription

Name Description Value
thumbprint Thumbprint of the primary certificate string (required)
thumbprintSecondary Thumbprint of the secondary certificate string
x509StoreName The local certificate store location 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'Disallowed'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

Name Description Value
certificateCommonName Certificate common name to be granted access; be careful using wild card common names string (required)
certificateIssuerThumbprint Certificate issuer thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false , it is used or query only access bool (required)

ClientCertificateThumbprint

Name Description Value
certificateThumbprint Certificate thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false, it is used or query only access bool (required)

ClusterHealthPolicy

Name Description Value
maxPercentUnhealthyApplications The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100
maxPercentUnhealthyNodes The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100

ClusterProperties

Name Description Value
azureActiveDirectory The settings to enable AAD authentication on the cluster AzureActiveDirectory
certificate This primary certificate will be used as cluster node to node security, SSL certificate for cluster management endpoint and default admin client CertificateDescription
clientCertificateCommonNames List of client certificates to trust based on common names ClientCertificateCommonName[]
clientCertificateThumbprints The client thumbprint details ,it is used for client access for cluster operation ClientCertificateThumbprint[]
clusterCodeVersion The ServiceFabric code version running in your cluster string
diagnosticsStorageAccountConfig The storage diagnostics account configuration details DiagnosticsStorageAccountConfig
fabricSettings List of custom fabric settings to configure the cluster. SettingsSectionDescription[]
managementEndpoint The http management endpoint of the cluster string (required)
nodeTypes The list of node types that make up the cluster NodeTypeDescription[] (required)
reliabilityLevel Cluster reliability level indicates replica set size of system service 'Bronze'
'Gold'
'Platinum'
'Silver'
reverseProxyCertificate The server certificate used by reverse proxy CertificateDescription
upgradeDescription The policy to use when upgrading the cluster. ClusterUpgradePolicy
upgradeMode Cluster upgrade mode indicates if fabric upgrade is initiated automatically by the system or not 'Automatic'
'Manual'
vmImage The name of VM image VMSS has been configured with. Generic names such as Windows or Linux can be used. string

ClusterUpgradeDeltaHealthPolicy

Name Description Value
maxPercentDeltaUnhealthyApplications Additional unhealthy applications percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentDeltaUnhealthyNodes Additional unhealthy nodes percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentUpgradeDomainDeltaUnhealthyNodes Additional unhealthy nodes percentage per upgrade domain int

Constraints:
Min value = 0
Max value = 100 (required)

ClusterUpgradePolicy

Name Description Value
deltaHealthPolicy Delta health policy ClusterUpgradeDeltaHealthPolicy
forceRestart Force node to restart or not bool
healthCheckRetryTimeout The length of time that health checks can fail continuously,it represents .Net TimeSpan string (required)
healthCheckStableDuration The length of time that health checks must pass continuously,it represents .Net TimeSpan string (required)
healthCheckWaitDuration The length of time to wait after completing an upgrade domain before performing health checks, it represents .Net TimeSpan string (required)
healthPolicy Cluster health Policy ClusterHealthPolicy (required)
overrideUserUpgradePolicy Use the user defined upgrade policy or not bool
upgradeDomainTimeout The timeout for any upgrade domain,it represents .Net TimeSpan string (required)
upgradeReplicaSetCheckTimeout Timeout for replica set upgrade to complete,it represents .Net TimeSpan string (required)
upgradeTimeout The upgrade timeout,it represents .Net TimeSpan string (required)

DiagnosticsStorageAccountConfig

Name Description Value
blobEndpoint Diagnostics storage account blob endpoint string (required)
protectedAccountKeyName Protected Diagnostics storage key name string (required)
queueEndpoint Diagnostics storage account queue endpoint string (required)
storageAccountName Diagnostics storage account name string (required)
tableEndpoint Diagnostics storage account table endpoint string (required)

EndpointRangeDescription

Name Description Value
endPort End port of a range of ports int (required)
startPort Starting port of a range of ports int (required)

Microsoft.ServiceFabric/clusters

Name Description Value
location Resource location. string (required)
name The resource name string (required)
properties The cluster resource properties ClusterProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates

NodeTypeDescription

Name Description Value
applicationPorts Ports used by applications EndpointRangeDescription
capacities The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much of a resource a node has NodeTypeDescriptionCapacities
clientConnectionEndpointPort The TCP cluster management endpoint port int (required)
durabilityLevel Node type durability Level 'Bronze'
'Gold'
'Silver'
ephemeralPorts System assigned application ports EndpointRangeDescription
httpGatewayEndpointPort The HTTP cluster management endpoint port int (required)
isPrimary Mark this as the primary node type bool (required)
name Name of the node type string (required)
placementProperties The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Endpoint used by reverse proxy int
vmInstanceCount The number of node instances in the node type int

Constraints:
Min value = 1
Max value = 2147483647 (required)

NodeTypeDescriptionCapacities

Name Description Value

NodeTypeDescriptionPlacementProperties

Name Description Value

ResourceTags

Name Description Value

SettingsParameterDescription

Name Description Value
name The name of settings property string (required)
value The value of the property string (required)

SettingsSectionDescription

Name Description Value
name The name of settings section string (required)
parameters Collection of settings in the section, each setting is a tuple consisting of setting name and value SettingsParameterDescription[] (required)

Quickstart samples

The following quickstart samples deploy this resource type.

Bicep File Description
Deploy a 5 Node Secure Cluster This template allows you to deploy a secure 5 node Service Fabric Cluster running Windows Server 2019 Datacenter on a Standard_D2_v2 Size VMSS.

ARM template resource definition

The clusters 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/clusters resource, add the following JSON to your template.

{
  "type": "Microsoft.ServiceFabric/clusters",
  "apiVersion": "2016-09-01",
  "name": "string",
  "location": "string",
  "properties": {
    "azureActiveDirectory": {
      "clientApplication": "string",
      "clusterApplication": "string",
      "tenantId": "string"
    },
    "certificate": {
      "thumbprint": "string",
      "thumbprintSecondary": "string",
      "x509StoreName": "string"
    },
    "clientCertificateCommonNames": [
      {
        "certificateCommonName": "string",
        "certificateIssuerThumbprint": "string",
        "isAdmin": "bool"
      }
    ],
    "clientCertificateThumbprints": [
      {
        "certificateThumbprint": "string",
        "isAdmin": "bool"
      }
    ],
    "clusterCodeVersion": "string",
    "diagnosticsStorageAccountConfig": {
      "blobEndpoint": "string",
      "protectedAccountKeyName": "string",
      "queueEndpoint": "string",
      "storageAccountName": "string",
      "tableEndpoint": "string"
    },
    "fabricSettings": [
      {
        "name": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ]
      }
    ],
    "managementEndpoint": "string",
    "nodeTypes": [
      {
        "applicationPorts": {
          "endPort": "int",
          "startPort": "int"
        },
        "capacities": {
          "{customized property}": "string"
        },
        "clientConnectionEndpointPort": "int",
        "durabilityLevel": "string",
        "ephemeralPorts": {
          "endPort": "int",
          "startPort": "int"
        },
        "httpGatewayEndpointPort": "int",
        "isPrimary": "bool",
        "name": "string",
        "placementProperties": {
          "{customized property}": "string"
        },
        "reverseProxyEndpointPort": "int",
        "vmInstanceCount": "int"
      }
    ],
    "reliabilityLevel": "string",
    "reverseProxyCertificate": {
      "thumbprint": "string",
      "thumbprintSecondary": "string",
      "x509StoreName": "string"
    },
    "upgradeDescription": {
      "deltaHealthPolicy": {
        "maxPercentDeltaUnhealthyApplications": "int",
        "maxPercentDeltaUnhealthyNodes": "int",
        "maxPercentUpgradeDomainDeltaUnhealthyNodes": "int"
      },
      "forceRestart": "bool",
      "healthCheckRetryTimeout": "string",
      "healthCheckStableDuration": "string",
      "healthCheckWaitDuration": "string",
      "healthPolicy": {
        "maxPercentUnhealthyApplications": "int",
        "maxPercentUnhealthyNodes": "int"
      },
      "overrideUserUpgradePolicy": "bool",
      "upgradeDomainTimeout": "string",
      "upgradeReplicaSetCheckTimeout": "string",
      "upgradeTimeout": "string"
    },
    "upgradeMode": "string",
    "vmImage": "string"
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

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

CertificateDescription

Name Description Value
thumbprint Thumbprint of the primary certificate string (required)
thumbprintSecondary Thumbprint of the secondary certificate string
x509StoreName The local certificate store location 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'Disallowed'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

Name Description Value
certificateCommonName Certificate common name to be granted access; be careful using wild card common names string (required)
certificateIssuerThumbprint Certificate issuer thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false , it is used or query only access bool (required)

ClientCertificateThumbprint

Name Description Value
certificateThumbprint Certificate thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false, it is used or query only access bool (required)

ClusterHealthPolicy

Name Description Value
maxPercentUnhealthyApplications The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100
maxPercentUnhealthyNodes The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100

ClusterProperties

Name Description Value
azureActiveDirectory The settings to enable AAD authentication on the cluster AzureActiveDirectory
certificate This primary certificate will be used as cluster node to node security, SSL certificate for cluster management endpoint and default admin client CertificateDescription
clientCertificateCommonNames List of client certificates to trust based on common names ClientCertificateCommonName[]
clientCertificateThumbprints The client thumbprint details ,it is used for client access for cluster operation ClientCertificateThumbprint[]
clusterCodeVersion The ServiceFabric code version running in your cluster string
diagnosticsStorageAccountConfig The storage diagnostics account configuration details DiagnosticsStorageAccountConfig
fabricSettings List of custom fabric settings to configure the cluster. SettingsSectionDescription[]
managementEndpoint The http management endpoint of the cluster string (required)
nodeTypes The list of node types that make up the cluster NodeTypeDescription[] (required)
reliabilityLevel Cluster reliability level indicates replica set size of system service 'Bronze'
'Gold'
'Platinum'
'Silver'
reverseProxyCertificate The server certificate used by reverse proxy CertificateDescription
upgradeDescription The policy to use when upgrading the cluster. ClusterUpgradePolicy
upgradeMode Cluster upgrade mode indicates if fabric upgrade is initiated automatically by the system or not 'Automatic'
'Manual'
vmImage The name of VM image VMSS has been configured with. Generic names such as Windows or Linux can be used. string

ClusterUpgradeDeltaHealthPolicy

Name Description Value
maxPercentDeltaUnhealthyApplications Additional unhealthy applications percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentDeltaUnhealthyNodes Additional unhealthy nodes percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentUpgradeDomainDeltaUnhealthyNodes Additional unhealthy nodes percentage per upgrade domain int

Constraints:
Min value = 0
Max value = 100 (required)

ClusterUpgradePolicy

Name Description Value
deltaHealthPolicy Delta health policy ClusterUpgradeDeltaHealthPolicy
forceRestart Force node to restart or not bool
healthCheckRetryTimeout The length of time that health checks can fail continuously,it represents .Net TimeSpan string (required)
healthCheckStableDuration The length of time that health checks must pass continuously,it represents .Net TimeSpan string (required)
healthCheckWaitDuration The length of time to wait after completing an upgrade domain before performing health checks, it represents .Net TimeSpan string (required)
healthPolicy Cluster health Policy ClusterHealthPolicy (required)
overrideUserUpgradePolicy Use the user defined upgrade policy or not bool
upgradeDomainTimeout The timeout for any upgrade domain,it represents .Net TimeSpan string (required)
upgradeReplicaSetCheckTimeout Timeout for replica set upgrade to complete,it represents .Net TimeSpan string (required)
upgradeTimeout The upgrade timeout,it represents .Net TimeSpan string (required)

DiagnosticsStorageAccountConfig

Name Description Value
blobEndpoint Diagnostics storage account blob endpoint string (required)
protectedAccountKeyName Protected Diagnostics storage key name string (required)
queueEndpoint Diagnostics storage account queue endpoint string (required)
storageAccountName Diagnostics storage account name string (required)
tableEndpoint Diagnostics storage account table endpoint string (required)

EndpointRangeDescription

Name Description Value
endPort End port of a range of ports int (required)
startPort Starting port of a range of ports int (required)

Microsoft.ServiceFabric/clusters

Name Description Value
apiVersion The api version '2016-09-01'
location Resource location. string (required)
name The resource name string (required)
properties The cluster resource properties ClusterProperties
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.ServiceFabric/clusters'

NodeTypeDescription

Name Description Value
applicationPorts Ports used by applications EndpointRangeDescription
capacities The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much of a resource a node has NodeTypeDescriptionCapacities
clientConnectionEndpointPort The TCP cluster management endpoint port int (required)
durabilityLevel Node type durability Level 'Bronze'
'Gold'
'Silver'
ephemeralPorts System assigned application ports EndpointRangeDescription
httpGatewayEndpointPort The HTTP cluster management endpoint port int (required)
isPrimary Mark this as the primary node type bool (required)
name Name of the node type string (required)
placementProperties The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Endpoint used by reverse proxy int
vmInstanceCount The number of node instances in the node type int

Constraints:
Min value = 1
Max value = 2147483647 (required)

NodeTypeDescriptionCapacities

Name Description Value

NodeTypeDescriptionPlacementProperties

Name Description Value

ResourceTags

Name Description Value

SettingsParameterDescription

Name Description Value
name The name of settings property string (required)
value The value of the property string (required)

SettingsSectionDescription

Name Description Value
name The name of settings section string (required)
parameters Collection of settings in the section, each setting is a tuple consisting of setting name and value SettingsParameterDescription[] (required)

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Deploy a 3 Nodetype Secure Cluster with NSGs enabled

Deploy to Azure
This template allows you to deploy a secure 3 nodetype Service fabric Cluster running Windows server 2016 Data center on a Standard_D2 Size VMs. Use this template allows you ro control the inbound and outbound network traffic using Network Security Groups.
Deploy a 5 Node Secure Cluster

Deploy to Azure
This template allows you to deploy a secure 5 node Service Fabric Cluster running Windows Server 2019 Datacenter on a Standard_D2_v2 Size VMSS.
Deploy a 5 Node Ubuntu Service Fabric Cluster

Deploy to Azure
This template allows you to deploy a secure 5 node Service Fabric Cluster running Ubuntu on a Standard_D2_V2 Size VMSS.

Terraform (AzAPI provider) resource definition

The clusters 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/clusters resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ServiceFabric/clusters@2016-09-01"
  name = "string"
  location = "string"
  body = jsonencode({
    properties = {
      azureActiveDirectory = {
        clientApplication = "string"
        clusterApplication = "string"
        tenantId = "string"
      }
      certificate = {
        thumbprint = "string"
        thumbprintSecondary = "string"
        x509StoreName = "string"
      }
      clientCertificateCommonNames = [
        {
          certificateCommonName = "string"
          certificateIssuerThumbprint = "string"
          isAdmin = bool
        }
      ]
      clientCertificateThumbprints = [
        {
          certificateThumbprint = "string"
          isAdmin = bool
        }
      ]
      clusterCodeVersion = "string"
      diagnosticsStorageAccountConfig = {
        blobEndpoint = "string"
        protectedAccountKeyName = "string"
        queueEndpoint = "string"
        storageAccountName = "string"
        tableEndpoint = "string"
      }
      fabricSettings = [
        {
          name = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
        }
      ]
      managementEndpoint = "string"
      nodeTypes = [
        {
          applicationPorts = {
            endPort = int
            startPort = int
          }
          capacities = {
            {customized property} = "string"
          }
          clientConnectionEndpointPort = int
          durabilityLevel = "string"
          ephemeralPorts = {
            endPort = int
            startPort = int
          }
          httpGatewayEndpointPort = int
          isPrimary = bool
          name = "string"
          placementProperties = {
            {customized property} = "string"
          }
          reverseProxyEndpointPort = int
          vmInstanceCount = int
        }
      ]
      reliabilityLevel = "string"
      reverseProxyCertificate = {
        thumbprint = "string"
        thumbprintSecondary = "string"
        x509StoreName = "string"
      }
      upgradeDescription = {
        deltaHealthPolicy = {
          maxPercentDeltaUnhealthyApplications = int
          maxPercentDeltaUnhealthyNodes = int
          maxPercentUpgradeDomainDeltaUnhealthyNodes = int
        }
        forceRestart = bool
        healthCheckRetryTimeout = "string"
        healthCheckStableDuration = "string"
        healthCheckWaitDuration = "string"
        healthPolicy = {
          maxPercentUnhealthyApplications = int
          maxPercentUnhealthyNodes = int
        }
        overrideUserUpgradePolicy = bool
        upgradeDomainTimeout = "string"
        upgradeReplicaSetCheckTimeout = "string"
        upgradeTimeout = "string"
      }
      upgradeMode = "string"
      vmImage = "string"
    }
  })
  tags = {
    {customized property} = "string"
  }
}

Property values

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

CertificateDescription

Name Description Value
thumbprint Thumbprint of the primary certificate string (required)
thumbprintSecondary Thumbprint of the secondary certificate string
x509StoreName The local certificate store location 'AddressBook'
'AuthRoot'
'CertificateAuthority'
'Disallowed'
'My'
'Root'
'TrustedPeople'
'TrustedPublisher'

ClientCertificateCommonName

Name Description Value
certificateCommonName Certificate common name to be granted access; be careful using wild card common names string (required)
certificateIssuerThumbprint Certificate issuer thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false , it is used or query only access bool (required)

ClientCertificateThumbprint

Name Description Value
certificateThumbprint Certificate thumbprint string (required)
isAdmin Is this certificate used for admin access from the client, if false, it is used or query only access bool (required)

ClusterHealthPolicy

Name Description Value
maxPercentUnhealthyApplications The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100
maxPercentUnhealthyNodes The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10. int

Constraints:
Min value = 0
Max value = 100

ClusterProperties

Name Description Value
azureActiveDirectory The settings to enable AAD authentication on the cluster AzureActiveDirectory
certificate This primary certificate will be used as cluster node to node security, SSL certificate for cluster management endpoint and default admin client CertificateDescription
clientCertificateCommonNames List of client certificates to trust based on common names ClientCertificateCommonName[]
clientCertificateThumbprints The client thumbprint details ,it is used for client access for cluster operation ClientCertificateThumbprint[]
clusterCodeVersion The ServiceFabric code version running in your cluster string
diagnosticsStorageAccountConfig The storage diagnostics account configuration details DiagnosticsStorageAccountConfig
fabricSettings List of custom fabric settings to configure the cluster. SettingsSectionDescription[]
managementEndpoint The http management endpoint of the cluster string (required)
nodeTypes The list of node types that make up the cluster NodeTypeDescription[] (required)
reliabilityLevel Cluster reliability level indicates replica set size of system service 'Bronze'
'Gold'
'Platinum'
'Silver'
reverseProxyCertificate The server certificate used by reverse proxy CertificateDescription
upgradeDescription The policy to use when upgrading the cluster. ClusterUpgradePolicy
upgradeMode Cluster upgrade mode indicates if fabric upgrade is initiated automatically by the system or not 'Automatic'
'Manual'
vmImage The name of VM image VMSS has been configured with. Generic names such as Windows or Linux can be used. string

ClusterUpgradeDeltaHealthPolicy

Name Description Value
maxPercentDeltaUnhealthyApplications Additional unhealthy applications percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentDeltaUnhealthyNodes Additional unhealthy nodes percentage int

Constraints:
Min value = 0
Max value = 100 (required)
maxPercentUpgradeDomainDeltaUnhealthyNodes Additional unhealthy nodes percentage per upgrade domain int

Constraints:
Min value = 0
Max value = 100 (required)

ClusterUpgradePolicy

Name Description Value
deltaHealthPolicy Delta health policy ClusterUpgradeDeltaHealthPolicy
forceRestart Force node to restart or not bool
healthCheckRetryTimeout The length of time that health checks can fail continuously,it represents .Net TimeSpan string (required)
healthCheckStableDuration The length of time that health checks must pass continuously,it represents .Net TimeSpan string (required)
healthCheckWaitDuration The length of time to wait after completing an upgrade domain before performing health checks, it represents .Net TimeSpan string (required)
healthPolicy Cluster health Policy ClusterHealthPolicy (required)
overrideUserUpgradePolicy Use the user defined upgrade policy or not bool
upgradeDomainTimeout The timeout for any upgrade domain,it represents .Net TimeSpan string (required)
upgradeReplicaSetCheckTimeout Timeout for replica set upgrade to complete,it represents .Net TimeSpan string (required)
upgradeTimeout The upgrade timeout,it represents .Net TimeSpan string (required)

DiagnosticsStorageAccountConfig

Name Description Value
blobEndpoint Diagnostics storage account blob endpoint string (required)
protectedAccountKeyName Protected Diagnostics storage key name string (required)
queueEndpoint Diagnostics storage account queue endpoint string (required)
storageAccountName Diagnostics storage account name string (required)
tableEndpoint Diagnostics storage account table endpoint string (required)

EndpointRangeDescription

Name Description Value
endPort End port of a range of ports int (required)
startPort Starting port of a range of ports int (required)

Microsoft.ServiceFabric/clusters

Name Description Value
location Resource location. string (required)
name The resource name string (required)
properties The cluster resource properties ClusterProperties
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.ServiceFabric/clusters@2016-09-01"

NodeTypeDescription

Name Description Value
applicationPorts Ports used by applications EndpointRangeDescription
capacities The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much of a resource a node has NodeTypeDescriptionCapacities
clientConnectionEndpointPort The TCP cluster management endpoint port int (required)
durabilityLevel Node type durability Level 'Bronze'
'Gold'
'Silver'
ephemeralPorts System assigned application ports EndpointRangeDescription
httpGatewayEndpointPort The HTTP cluster management endpoint port int (required)
isPrimary Mark this as the primary node type bool (required)
name Name of the node type string (required)
placementProperties The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run NodeTypeDescriptionPlacementProperties
reverseProxyEndpointPort Endpoint used by reverse proxy int
vmInstanceCount The number of node instances in the node type int

Constraints:
Min value = 1
Max value = 2147483647 (required)

NodeTypeDescriptionCapacities

Name Description Value

NodeTypeDescriptionPlacementProperties

Name Description Value

ResourceTags

Name Description Value

SettingsParameterDescription

Name Description Value
name The name of settings property string (required)
value The value of the property string (required)

SettingsSectionDescription

Name Description Value
name The name of settings section string (required)
parameters Collection of settings in the section, each setting is a tuple consisting of setting name and value SettingsParameterDescription[] (required)