Arsalan Shahid

A Solution Concept for Resource Optimization in Cloud-Based Data Centers

My dear reader, how are you? السلام عليكم

The only true wisdom is in knowing you know nothing – Socrates 

This post presents a solution concept for Intelligent Resource Management Engine (iRME). iRME aims to provide dynamic resource allocation in modern cloud-based data centers.

My reader, I first suggest you go through an earlier post regarding resource management in cloud data centers DirectMe.


Let us first list and explain the terminology we will be using for the proposed solution. 

General terminologies:

iRME specific terminologies:

Scenario Illustration

Figure 1 represents the typical workload executing on a node. A WL is a collection of SGs for an application feature. The collection of MS constitutes SG.

Fig 1: A typical representation of a WL.

Figure 2 represents the number of nodes (VMs) running on blade servers (or hosts) in cloud data centers.

Fig 2: A typical representation of a host executing a number of nodes.

Figure 3 illustrates the concept of live migration of the nodes across multiple hosts depending on the resource requirements and computational stress. The live migration support is provided in almost all modern virtual machine platforms.

Fig 3: Live migration of nodes.

iRME Design Objectives

While designing the solution concept for iRME, I have the following two objectives in mind.

Characteristics of Proposed Solution

Fig 4: Architecture for iRME.

Key Sub-problems Addressed by iRME Controllers

  1. Profile the resources (CPU, memory, and disks) of nodes executing SGs for defined time period to understand resource utilization (NativeController)
  2. Detect over or under-load nodes to resize them accordingly (NativeController)
  3. Select nodes to migrate among the hosts (CosmoController)
  4. Place nodes on MSH (CosmoController)

iRME Stages: How it works?

Initial Steps

    1. Test Results, functional points provided by the service, and characteristics of the service
    2. Host characteristics (Sum of node resources < host resources)
    3. MS from SG are deployed based on anti-affinity rules


Function: Resize the nodes based on utilizations and send the information to CosmoController


  1. CR
  2. SR



Function: Receive information from NativeController and perform node migrations


  1. RR information for a node if greater than SR on a host (optional).
  2. UR information for a node corresponding to the host.



I hope you find this post useful. If you find any errors or feel any need for improvement, let me know in your comments below.

Signing off for today. Stay tuned and I will see you in my next post! Happy learning.

Exit mobile version