Inner Cloud Environment for Microservice Compatibility Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microservice applications in cloud environments are prone to breaking due to changes in underlying architecture, leading to significant downtime and complex debugging processes when the cloud environment updates, such as changes in OpenShift versions.

Innovation Solution

Automatically detecting broken microservice applications, generating an inner cloud environment within the outer cloud environment, testing a newer version of the microservice application for compatibility, and notifying users of available updates to minimize downtime by creating a proxy environment that mirrors the outer cloud environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the cloud environment updates its underlying architecture (e.g., OpenShift version), then the cloud environment can access improved features and performance, but the microservice application may break and cause downtime

Engineering Contradiction:
Improvecloud environment adaptabilityVSAvoidmicroservice application reliability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by automatically detecting when a microservice application breaks due to cloud environment updates, retrieving a compatible version from a repository, and deploying it before significant downtime occurs. This proactive approach prevents the reliability issue from fully manifesting.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A continuous integration tool acts as an intermediary between the cloud environment and the microservice application. This intermediary automatically detects breaks, retrieves compatible versions, and deploys fixes, serving as a buffer that protects the microservice application from direct impacts of cloud environment changes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of repair

If manual debugging processes are performed to fix broken microservice applications, then compatibility issues can be resolved, but significant time is lost due to the complex debugging process

Engineering Contradiction:
Improvemicroservice application repairabilityVSAvoiddowntime
Core Design Contradiction:
Ease of repairVSLoss of time

Solution Approach 1:

The system implements self-service by enabling the microservice application to automatically detect its own breaks, retrieve compatible versions, and deploy fixes without human intervention. The continuous integration tool automates the entire debugging and repair process, allowing the system to self-heal.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system establishes a feedback loop where the continuous integration tool continuously monitors the microservice application, automatically detects when it breaks, and triggers automated retrieval and deployment of compatible versions. This closed-loop feedback mechanism eliminates manual debugging time.

Inventive Principle:
Principle #23Feedback

3Ease of operation

If developers update microservice applications independently, then development flexibility is improved, but compatibility issues with the cloud environment architecture increase

Engineering Contradiction:
Improvedevelopment flexibilityVSAvoidsystem compatibility complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The continuous integration tool serves as an intermediary that manages compatibility between independently developed microservice applications and the cloud environment. It automatically detects compatibility issues and deploys appropriate versions, maintaining flexibility while reducing complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of developers ensuring compatibility before deployment, the system inverts the approach by automatically detecting and fixing compatibility issues after deployment. The continuous integration tool retrieves and deploys compatible versions automatically, reversing the traditional compatibility assurance workflow.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10628290B2Generating an inner cloud environment within an outer cloud environment for testing a microservice application
Publication Date: 2020.04.21 RED HAT INC
  • US10628290B2 patent drawing
  • US10628290B2 patent drawing
  • US10628290B2 patent drawing

AI summary

A microservice application can be tested inside an inner cloud environment that is within an outer cloud environment. For example, a software application can generate an inner cloud environment within an outer cloud environment in response to an event associated with a microservice application. The software application can then deploy another version of the microservice application in the inner cloud environment. The software application can perform at least one test on the other version of the microservice application in the inner cloud environment to determine a compatibility of the other version of the microservice application with the inner cloud environment.