Deployment Manager for Server Cluster Environment Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Enterprise computing environments face challenges in managing updates to user-controlled server clusters, particularly in ensuring compatibility and allowing users to control the timing of updates while maintaining system stability and service continuity.

Innovation Solution

The technology provides users with a deployment manager and system manager to control the installation of new operating environments, allowing users to test updates in a controlled environment before deploying them, and enabling users to initiate updates at their convenience, with mechanisms for managing server clusters and virtualization to ensure minimal disruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If administrators centrally control environment updates in server clusters, then system stability and compatibility are improved, but user control over update timing is reduced

Engineering Contradiction:
Improvesystem stabilityVSAvoiduser control
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The update management process is segmented into distinct phases: testing environment deployment, user validation, and production deployment. The deployment manager separates control functions between administrators (who prepare and distribute update packages) and users (who control timing and validation), allowing both centralized quality control and decentralized operational control.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The deployment manager acts as an intermediary between administrators and users. It receives update packages from administrators, manages testing environments, and enables users to control when updates are applied to production systems. This intermediary layer reconciles the conflicting needs for centralized stability control and decentralized user autonomy.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If users are allowed to control update timing in their clusters, then user autonomy and service continuity are improved, but system-wide update consistency is reduced

Engineering Contradiction:
Improveuser autonomyVSAvoidupdate consistency
Core Design Contradiction:
Ease of operationVSStability of the object's composition

Solution Approach 1:

The system performs preliminary actions by deploying update packages to testing environments before production deployment. Users can validate updates in controlled testing scenarios and prepare their systems in advance, ensuring service continuity while maintaining user control over the actual production update timing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The deployment manager provides dynamic update management where users can control the timing and pacing of production deployments based on their specific service requirements. The system adapts to different user schedules and service continuity needs while maintaining overall system coherence through standardized update packages and validation processes.

Inventive Principle:
Principle #15Dynamics

3Productivity

If updates are deployed without prior testing, then deployment speed is improved, but compatibility and reliability are reduced

Engineering Contradiction:
Improvedeployment speedVSAvoidcompatibility
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary testing by automatically deploying update packages to dedicated testing environments populated with representative workloads and applications. Compatibility validation occurs in advance before production deployment, ensuring reliability while maintaining efficient production rollout speeds through automated testing processes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The deployment manager creates copies of update packages and deploys them to separate testing environments that mirror production systems. This copying approach allows comprehensive compatibility testing without risking production system stability, and validated updates can be rapidly deployed to production with confidence in their compatibility.

Inventive Principle:
Principle #26Copying

4Reliability

If comprehensive testing is performed before deployment, then compatibility and reliability are improved, but time and complexity are increased

Engineering Contradiction:
ImprovecompatibilityVSAvoidtesting duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system uses virtualization to create lightweight copies of testing environments that can run concurrently with production systems. Multiple testing instances can evaluate updates simultaneously, reducing overall testing duration while maintaining comprehensive compatibility validation through parallel testing of different scenarios and workloads.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The deployment manager merges testing and validation functions into an integrated automated workflow. Multiple testing activities (compatibility validation, performance testing, regression testing) are combined and executed systematically in the testing environment, reducing redundant manual processes and minimizing total testing time while maintaining thoroughness.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9229703B1User controlled environment updates in server cluster
Publication Date: 2016.01.05 AMAZON TECH INC
  • US9229703B1 patent drawing
  • US9229703B1 patent drawing
  • US9229703B1 patent drawing

AI summary

A system and method of deploying operating environments in an enterprise computing environment comprised of managed virtual or hardware servers is disclosed. A library of operating environments, each environment including at least one package including an operating system image and an application, is provided. A user controlling a cluster of servers may request creation of a test environment using an operating environment from the library, and test the environment with applications to ensure the user's needs are met. The user may request all servers within the user's cluster be provisioned with the operating environment through a deployment manager.