Distributed Deployment Agent for Automated Container Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed computing environments, application maintenance and upgrades are labor-intensive and prone to errors due to repetitive manual processes, lack of automation, and potential corruption of update files during transmission.

Innovation Solution

A distributed deployment agent system that uses a server system agent and a client system agent to generate and transmit compressed command files with deployment instructions, automating the update process by determining target locations, extracting, and executing the files, while ensuring file integrity through checksum validation and automatic backup mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If manual update processes are used for each container, then updates can be applied to individual applications, but the process becomes labor-intensive and time-consuming

Engineering Contradiction:
Improveease of application updateVSAvoidtime for maintenance
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system segments the update process into distinct components: a server system agent that manages the update workflow, client system agents deployed to each container, and automated deployment packages. This segmentation allows parallel processing of updates across multiple containers while maintaining individual control over each application instance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The client system agents enable self-service updates by automatically receiving deployment packages from the server, extracting update files, validating checksums, and applying updates to their respective applications without requiring manual intervention. The system performs self-diagnosis and self-correction through automated error handling and rollback capabilities.

Inventive Principle:
Principle #25Self-service

2Loss of information

If manual tracking of updated containers is performed, then update status can be monitored, but the process becomes complex and error-prone

Engineering Contradiction:
Improvetracking of updated instancesVSAvoidcomplexity of maintenance process
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system implements continuous feedback loops where client system agents report their update status back to the server system agent. The server maintains a centralized record of which containers have been updated, are pending updates, or require rollback. This automated feedback mechanism eliminates manual tracking while providing real-time visibility into the deployment state across the entire system.

Inventive Principle:
Principle #23Feedback

3Speed

If update files are transmitted without validation, then transmission is faster, but file corruption may occur during transmission

Engineering Contradiction:
Improvespeed of file transmissionVSAvoidintegrity of update files
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The server system agent calculates and attaches checksum values to update files before transmission occurs. This preliminary validation preparation ensures that integrity verification can be performed immediately upon receipt without requiring re-transmission or additional processing time, thus maintaining both speed and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses lightweight checksum values (such as MD5 or SHA hashes) as disposable validation objects that are easily computed and transmitted alongside update files. These small validation data structures provide robust corruption detection without significantly increasing transmission overhead or processing complexity.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

4Productivity

If automatic deployment is implemented, then update efficiency is improved, but the system requires more complex automation infrastructure

Engineering Contradiction:
Improvedeployment efficiencyVSAvoidcomplexity of deployment system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The server system agent and client system agents are designed as multi-functional components that can handle multiple tasks: managing update workflows, validating file integrity, coordinating deployments across containers, handling rollbacks, and maintaining deployment records. This universality consolidates what could be multiple separate tools into a unified system, reducing overall complexity while maintaining high automation capability.

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

Data Source

PatentUS10715637B2Systems and methods for automated application deployment management
Publication Date: 2020.07.14 MASTERCARD INT INC
  • US10715637B2 patent drawing
  • US10715637B2 patent drawing
  • US10715637B2 patent drawing

AI summary

A method of automated deployment management for a computer network is provided. The method is implemented using a distributed deployment agent that includes a server system agent operating on a server system and a client system agent operating on a client system. The client system agent is communicatively coupled to the server system agent. The method includes determining target locations associated with the client system, generating (using a configuration file) a command file configured for execution on the client system that hosts a computer application, configuring the command file with deployment instructions for the client system to automate deployment of the command file, and causing the client system agent to extract the command file and execute the command file on the target locations. The execution activates a system update event on the client system and/or a software update event for the computer application.