Node Advisor

Magalix Node Advisor provides the best type, size, and the number of nodes for Kubernetes clusters

Magalix Node Advisor provides you the best type, size, and the number of nodes for your Kubernetes cluster. It helps you manage the underlying capacity to either save money in case of an over-provisioned cluster or improve application performance if your containers need more resources.

Overview

The Node Advisor considers the works at the infrastructure level. Its main goal is to save you money even if you have just the right capacity in your Kubernetes cluster. It works on finding the cheapest combination of nodes for your cluster. For example, GCP custom nodes are around 40% cheaper than standard nodes if you used the right combination of CPU and memory. Magalix Node advisor searches for the best configurations to guarantee you the lowest cost of infrastructure. 

Node Advisor Estimated Improvements

The below chart visualizes the estimated improvements in CPU and memory utilization after you apply the recommended changes in your cluster. For example, if your current CPU utilization is 30% and it will be 50% after applying the Node Advisor recommendations.

Detailed Analysis

Magalix - kubernetes node advisor recommendations
 

Capacity Analysis

The capacity analysis section compares the currently allocated nodes with the new nodes. It also shows you the estimated CPU and memory utilization after applying the recommended capacity.

Pricing and Plans Analysis

This section analysis different pricing plans before and after applying the recommended capacity changes. The Node advisor tracks all the currently available billing plans to give you the best different billing plans to select from. We support on-demand, capacity reservation with different terms, and spot. The table below summarizes supported billing plans that the Node Advisor will do the analysis for.

Cloud Provider Supported Billing Plans
AWS On-Demand, Reserved Instance(1, 2, and 3 years with different upfront options), Spot (with estimated 80% savings)
Azure On-Demand & Reserved Instances,
Google Cloud Engine (GCE) On-demand, Committed Capacity, and Preemptive (with an estimated 80% savings)
IBM On-demand & Reserved Instances

Opportunities for Cost Savings

The Magalix Kubernetes Node Advisor looks at different dimensions to reduce the cost of your cluster. It tries to optimize at the following three dimensions:

Optimizing Node Families and Nodes Pools

To get the best value out of your nodes, you need to allocate nodes based on the profile of your workloads. For example, nodes that are memory-optimized will provide the best price and performance combination for containers that are memory intensive. The same applies to CPU.

CPU and Memory profiling

Node advisor currently selects for the family type based on the CPU and memory profiles of your nodes. It doesn't consider yet I/O characterization.

Not all of your workloads will be of the same profile. The Node Advisor starts early on in its optimization process segmenting your containers into different profiles. Each segment will be allocated to a single node pool. Each node pool will have one or more homogenous nodes. In later stages of the analysis process, the Node Advisor will decide on the best node size and number of nodes in each pool and globally for your cluster.

Optimizing Node Size

Selecting the best combination of nodes sizes is important to minimize the amount of waste in your cluster. The rationale behind it is to give you the best combination of sizes to reduce the amount of unallocated memory or CPU. It also works on

Optimizing for the Number of Nodes

After identifying the best combination of the other cost-saving dimensions, the Node Advisor optimizes for the minimum number of nodes in each pool. The goal is to reach the desired utilization with the least cost.

Supported Cloud Providers and Nodes Families

Currently, the Node Advisor supports AWS, Azure, GCP, IBM.

Amazon Web Services (AWS)

We support the following AWS instances with a general-purpose computing architecture:

  • Compute-optimized, such as C3, C4, and C5 familes
  • General purpose, such as M3, M4, M5, and M5A families
  • Memory-optimized, such as R3 and R4 families
  • Micro Instances, such as T2, and T3, T3a families.
  • Storage optimized, such as I2, I3, and D2 families

Azure

We support the following Azure instances with a general-purpose computing architecture:

  • Entry Level, such as the A-Series VM families
  • Compute-optimized, specifically the H-Series
  • General purpose, such as the B and D-Series VM families
  • High performance compute, such as the H-Series
  • Memory-optimized, such as the M and G-Series VM families
  • Storage optimized, such as the G, and Ls Series VM families

Google Compute Engine (GCE)

We support the following Azure instances with a general-purpose computing architecture:

  • High CPU
  • High Memory
  • Mega Memory
  • Micro
  • Small
  • Standard
  • Ultra Memory

IBM

We support the following IBM instances with a general-purpose computing architecture:

  • Balanced
  • Balanced Local Storage
  • Balanced Local Storage - SSD
  • Compute
  • Memory

Node Advisor Does Not Support Special Purpose Nodes/Instances

The Node Advisor does not currently support instances with specialized processors, such as FPGA, AMR or GPUs.

 Node Advisor for the On-Prem Kubernetes Clusters

The Node Advisor supports on-prem configurations by giving the best nodes sizes and count of nodes for your cluster. Since the notion of cost-saving is relevant for the on-prem clusters, the Node advisor focuses on giving you the best CPU and memory combinations to achieved 50% or more utilization of your capacity.

FAQ

Do you have any plans to automate the Node Advisor recommendations?

Yes. It is a quite complex process to upgrade the capacity of your cluster. We working on some basic scenarios that will help you reach maximum efficiency with full automation. Stay tuned!

How frequently do you update the pricing of different cloud providers?

We update the pricing and family types immediately after any of the cloud providers make changes to their billing or pricing model.

Do I need to provide Magalix access to my cloud provider account in order for the Node Advisor to work properly?

Not at this point. We use the existing standard pricing to estimate how much you would be currently paying using different billing models and how much you will be paying on the new recommended capacity. This does not require any special access to your cloud provider accounts.