Automated Application Containerization via Trace Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Manual application containerization is time-consuming and error-prone, making it inefficient for migrating workloads to container environments.

Innovation Solution

A computer-implemented method and system for tracing applications to determine features, creating an image template, and building a container image based on those features, utilizing modules like a collector, analyzer, and generator to automate the containerization process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual application containerization is used, then customization and control are improved, but time consumption and error rate increase

Engineering Contradiction:
Improvecustomization controlVSAvoidcontainerization time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs self-service by automatically tracing the application, analyzing dependencies, and generating container images without manual intervention. The application itself provides the necessary information through tracing, eliminating the need for manual configuration while maintaining accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary actions by tracing and analyzing the application before containerization begins. Dependencies, environment variables, and configuration files are identified in advance, allowing the container image to be built correctly without manual intervention during the actual containerization process.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If manual application containerization is used, then detailed control is improved, but error rate increases

Engineering Contradiction:
Improvedetailed controlVSAvoiderror rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system uses feedback by tracing the application to collect information about dependencies, environment variables, and configuration files. This feedback loop ensures that the container image is built with the correct settings, reducing errors while maintaining detailed control over the containerization process.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system replaces manual mechanical operations with automated tracing and analysis mechanisms. Instead of manually configuring each parameter, the system automatically detects and configures dependencies, environment variables, and configuration files, reducing human error while maintaining control.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Productivity

If automated containerization is implemented, then efficiency is improved, but complexity of the system increases

Engineering Contradiction:
Improvecontainerization efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the containerization process into distinct modules: tracing, analysis, and image building. Each module handles a specific aspect of the process, making the overall system more manageable despite the automation complexity. The tracing module collects information, the analysis module processes dependencies, and the image building module creates the container.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11243868B2Application containerization based on trace information
Publication Date: 2022.02.08 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11243868B2 patent drawing
  • US11243868B2 patent drawing
  • US11243868B2 patent drawing

AI summary

The present disclosure provides a computer-implemented method, computer system and computer program product for application containerization. According to the computer-implemented method, an application to be containerized can be traced. Information obtained in the tracing can be analyzed to determine one or more features of the application. An image template for the application can be created based on the one or more features. Then, a container image for the application can be built based on the image template.