Configuration Engine for Datacenter Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing datacenter configurations is challenging due to the complexity of maintaining uniformity across various configuration artifacts, which can lead to inconsistent deployments and increased risk of errors or malicious alterations, especially when multiple teams make changes simultaneously.

Innovation Solution

A configuration engine that ensures global consistency by allowing partial configuration branching, enabling simultaneous deployment of multiple versions during transitional windows, and enforcing constraints to ensure that changes are globally consistent before being committed, while also supporting versioned interfaces and dynamic enums to manage complex datacenter configurations effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple teams make configuration changes simultaneously, then productivity increases, but configuration consistency deteriorates

Engineering Contradiction:
Improveconfiguration change throughputVSAvoidconfiguration consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The patent segments configuration management into independent versioned components that can be developed, tested, and deployed separately. Each configuration artifact is treated as an independent unit with its own version history, allowing multiple teams to work on different segments simultaneously without causing consistency conflicts.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a configuration management system as an intermediary that coordinates changes from multiple teams. This intermediary validates configurations, manages versioning, and ensures consistency across all configuration artifacts before deployment, acting as a mediator between parallel development efforts and system consistency requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If configuration changes are validated for global consistency, then configuration reliability improves, but deployment time increases

Engineering Contradiction:
Improveconfiguration consistencyVSAvoiddeployment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs configuration validation and consistency checks as preliminary actions during the development and testing phases, before actual deployment. By validating configurations in advance and maintaining version history, the system ensures consistency is established beforehand, reducing the need for time-consuming validation during deployment.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses versioned copies of configuration artifacts that can be tested and validated independently. Multiple versions are maintained and can be compared, allowing validation to occur on copies rather than the live configuration, thus ensuring reliability without blocking deployment timelines.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If configuration branching is allowed, then deployment flexibility improves, but system complexity increases

Engineering Contradiction:
Improvedeployment flexibilityVSAvoidconfiguration management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic configuration branching where the configuration structure can adapt to deployment needs. Versioned configurations allow dynamic creation of branches for different deployment scenarios, and the system dynamically manages these branches through automated version control and consistency validation, making complexity manageable despite increased flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent uses parameter-based versioning and configuration identification to manage branching complexity. By changing parameters such as version numbers and configuration identifiers rather than restructuring the entire system, the patent enables flexible branching while maintaining manageable system complexity through consistent parameter management.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8769494B2Globally sound and consistent configuration management for distributed datacenter components
Publication Date: 2014.07.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8769494B2 patent drawing
  • US8769494B2 patent drawing
  • US8769494B2 patent drawing

AI summary

Datacenter configuration needs to be managed. A configuration engine (CE) manages configuration data of clusters and/or datacenters. The CE allows users to check out, edit, and check in configuration components. Versioned interfaces are placed between configuration components through data contracts. The CE supports the expression of constraints that ensure global consistency across configuration components and versions, isolates changes in the datacenter from structural changes in configuration components, and enables partial configuration branching to allow for active snapshots that enable configuration rollback. The CE ensures that types are consistent and constraints are satisfied at check-in time to eliminate unsound or inconsistent configuration in the first place. When the active configuration in the datacenter changes, multiple versions of configuration may be simultaneously deployed for a window of time. The managed set of configuration is permitted to have multiple active versions during these transitional windows to reflect the reality in the datacenter.