Jaish Mathews
Jaish Mathews

Reputation: 864

Sizing Azure Kubernetes Services (AKS) Cluster

I am trying to size my AKS clusters. What I understood and followed is the number of micro services and their replication copies would be primary parameters. Also the resource usage by each micro services and prediction of that usage increase during coming years also needs to be considered. But all these information seems totally scattered to reach a number for AKS sizing. Sizing I meant by how many nodes to be assigned? what could be the configuration of nodes, how many pods to be considered, how many IP numbers to be reserved based on number of pods etc..

Is there any standard matrix here or practical way of calculation to compute AKS cluster sizing, based on any ones'experience?

Upvotes: 1

Views: 2410

Answers (2)

Roberto Borges
Roberto Borges

Reputation: 793

Actually, you may be interested in the Sizing of your nodes, things like Memory, CPU, Networking, Disk are directly linked with the node you chose, example:

Not all memory and CPU in a Node can be used to run Pods. The resources are partitioned in 4:

  1. Memory and CPU reserved to the operating system and system daemons such as SSH
  2. Memory and CPU reserved to the Kubelet and Kubernetes agents such as the CRI
  3. Memory reserved for the hard eviction threshold
  4. Memory and CPU available to Pods
CPU and Memory available for PODs
 ________________________________________________
 Memory | % Available   | CPU   | % Available 
 ________________________________________________
   1    |   0.00%       | 1     |   84.00%
   2    |   32.50%      | 2     |   90.00%
   4    |   53.75%      | 4     |   94.00%
   8    |   66.88%      | 8     |   96.50%
   16   |   78.44%      | 16    |   97.75%
   64   |   90.11%      | 32    |   98.38%
   128  |   92.05%      | 64    |   98.69%
   192  |   93.54%      
   256  |   94.65%  

Other things are Disk and Networking, example:

Node Size        | Maximum Disks| Maximum Disk IOPS | Maximum Throughput (MBps)
_______________________________________________________________________________
Standard_DS2_v2  |       8      |    6,400          |   96
Standard_B2ms    |       4      |    1,920          |   22.5

Upvotes: 2

4c74356b41
4c74356b41

Reputation: 72151

no, pretty sure there is none (and how it could be)? just take your pod cpu\memory usage and sum that up, you'll get an expectation of the resources needed to run your stuff, add k8s services on top of that.

also, like Peter mentions in his comment, you can always scale your cluster, so such planning seems a bit unreasonable.

Upvotes: 3

Related Questions