Virtual Machine Reuse via Process Termination for Application Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing applications on computing systems, particularly those utilizing virtual machines, requires significant expertise and time, and existing solutions often necessitate different user techniques for configuration and operation, leading to inefficiencies and resource wastage.
Innovation Solution
An application management platform that includes a load balancer, orchestrator, monitoring module, and repository, which simplifies the deployment, management, and re-use of virtual machines by automating tasks such as provisioning, scaling, and resource allocation, allowing for efficient management of multiple applications without requiring specialized knowledge from end-users.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If virtual machines are terminated and re-provisioned for each application deployment, then application isolation and security are improved, but computational resource wastage increases and deployment time increases
Solution Approach 1:
The system terminates application processes on virtual machines and recovers the virtual machine resources for reuse. The orchestrator monitors application status, terminates processes when applications stop, and makes the virtual machine available for new deployments, thus recovering computational resources without requiring full re-provisioning
Solution Approach 2:
Virtual machines are designed to serve multiple application deployments universally. The same virtual machine infrastructure can host different applications sequentially, with the orchestrator managing the allocation and termination of processes to enable the virtual machine to fulfill multiple functions across different application lifecycles
2Adaptability or versatility
If users manually manage application deployment on virtual machines, then customization and control are improved, but user expertise requirements increase and management time increases
Solution Approach 1:
The orchestrator implements self-service automation for application deployment management. It automatically provisions virtual machines, deploys applications, monitors process status, and terminates processes when needed, eliminating the need for users to perform manual configuration and management tasks while maintaining system control and adaptability
Solution Approach 2:
The orchestrator acts as an intermediary between users and the virtual machine infrastructure. It abstracts the complex deployment and management operations, providing users with simplified interfaces while handling the technical complexity of virtual machine provisioning, application deployment, and process management in the background
3Adaptability or versatility
If multiple virtual machines are provisioned for multiple applications, then application independence and scalability are improved, but resource consumption and management complexity increase
Solution Approach 1:
The system merges the management of multiple virtual machines and applications under a single orchestrator platform. The orchestrator provides unified provisioning, deployment, monitoring, and termination capabilities across the entire virtual machine fleet, reducing management complexity while maintaining application independence and enabling scalable deployment
Data Source
AI summary
Example systems and methods of managing installation of applications are described. In one implementation, a repository stores data associated with multiple application instances. An orchestrator analyzes application instances running on multiple provisioned virtual machines and identifies at least one unused virtual machine among the multiple provisioned virtual machines. The orchestrator terminates processes running on the unused virtual machine and clears data associated with the unused virtual machine. The cleared virtual machine is added to a virtual machine pool for use by another application instance.


