Capacity limits of resources within Azure Service Fabric

Unlike most Azure PaaS services, there is no charge for the Service Fabric service itself but the final cost of creating the Service Fabric clusters & running them has to be calculated on your own.

minimum of the following IaaS resources are at least created for you:
Virtual Machine Scaleset
Public IP address
Virtual Network
Load Balancer
Storage accounts

I was curious to know what are the minimum and maximum capacities you can have for the cluster components so I monkeyed around the Service Fabric blades
click image to enlarge

Node types can be seen as equivalent to roles in cloud services. In each node type you can define the VM sizes, the number of VMs, and their properties. A Service Fabric cluster must have at least one node type and upto 3 in a cluster.

Durability tier determines the SKU size for your node type. The default Bronze tier supports Standard_A/D/DS SKUs. Gold tier supports G5 as the largest VM type possible if available in chosen region. A0 Standard is the smallest VM type that you can choose though nothing practical can be achieved out of them.

Reliability tier determines the initial VM capacity assigned to your cluster. Each tier has a minimum required VM capacity for primary node type - Platinum: 9, Gold: 7, Silver (default tier): 5, Bronze: 3

The primary node type (the first one that you define on the portal) must have at least five VMs for clusters used for production workloads or at least three VMs for test clusters.

The primary node type is the node type where Service Fabric system services are placed.

The maximum initial VM scale set capacity that can be set through the slider in the form is 50 for the primary node type while for the other non-primary node types, the minimum & maximum initial VM scale set capacity that can be set for through the slider is 1 and 50 respectively.

The number of VMs in a node type can be increased after you have deployed the cluster.

VM Scale Sets are an Azure compute resource you can use to deploy and manage a collection of virtual machines as a set. Being defined as distinct VM Scale Sets, each node type can then be scaled up or down independently, have different sets of ports open, and can have different capacity metrics.

For realistic capacity planning, you have to figure out what the cluster you are creating is going to be used for and what kinds of applications you are planning to deploy into this cluster.

Related:
Commonly asked Service Fabric questions
Service Fabric cluster capacity planning considerations

Comments