Cluster Application Placement Manager for Resource Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing environments, existing systems face challenges in efficiently and optimally placing applications across nodes in a cluster, especially during failures, due to inadequate real-time resource utilization monitoring and balancing, leading to potential downtime and resource inefficiencies.

Innovation Solution

A method that involves real-time monitoring of resource utilization across nodes, using a placement manager and resource manager to determine the optimal node for application placement, considering custom resources, NUMA-specific requirements, and prioritization, and dynamically adjusting by stopping lower-priority applications if necessary, to minimize downtime and ensure balanced resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If administrators specify a preferred order of placement for each application, then application placement can be controlled, but resource utilization balance across nodes cannot be ensured during unexpected events

Engineering Contradiction:
Improveapplication placement controlVSAvoidresource utilization balance
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system dynamically adjusts application placement based on real-time resource utilization data and event type, rather than following static administrator-defined placement orders. The placement manager modifies placement decisions dynamically when unexpected events occur, balancing resource utilization across nodes while responding to current system state.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback by continuously monitoring real-time resource utilization data from all nodes and using this information to make informed placement decisions. The placement manager receives feedback about current resource states and adjusts placement strategies accordingly to maintain balance across the cluster.

Inventive Principle:
Principle #23Feedback

2Productivity

If real-time resource utilization monitoring is implemented, then optimal node selection can be made, but system complexity increases

Engineering Contradiction:
Improveapplication placement efficiencyVSAvoidmonitoring system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The resource manager and placement manager components serve multiple functions: the resource manager both collects resource utilization data and provides this information to the placement manager, while the placement manager both receives this data and executes placement decisions. This multi-functionality reduces overall system complexity by consolidating responsibilities into versatile components.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The placement manager acts as an intermediary between the resource monitoring system and the application deployment system. It receives real-time resource utilization data, processes this information according to placement policies, and makes placement decisions, thereby simplifying the interaction between monitoring and deployment functions.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If applications are placed without considering real-time resource availability, then placement speed is faster, but resource inefficiencies and downtime occur

Engineering Contradiction:
Improveapplication placement speedVSAvoidresource utilization efficiency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by continuously collecting and monitoring resource utilization data from all nodes before placement decisions are needed. This advance preparation ensures that when an unexpected event occurs and placement is required, the system already has current resource information available, enabling fast and informed placement decisions without causing downtime or resource inefficiencies.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9026837B2Resource aware placement of applications in clusters
Publication Date: 2015.05.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9026837B2 patent drawing
  • US9026837B2 patent drawing
  • US9026837B2 patent drawing

AI summary

Placing an application on a node in a cluster. A method includes detecting an unexpected event indicating that an application should be placed on a node in the cluster. Real time information about resource utilization on one or more nodes in the cluster is received. Based on the real time information, a determination of a node to place the application is made. The application is placed on the determined node.