Web Service Deployment via Virtual Machine Consolidation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for updating or deploying new services in web services clusters are costly and risky, as they often require multiple virtual machines to isolate services, leading to increased infrastructure costs and potential compatibility issues.
Innovation Solution
A two-step process involving deployment and consolidation, where new services are initially run on separate virtual machines and then consolidated onto a single machine after a 'burn-in' period, reducing the number of machines needed and minimizing risks through automated or manual verification of service stability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If services are deployed on separate virtual machines to isolate compatibility risks, then service stability and compatibility are improved, but infrastructure costs increase
Solution Approach 1:
The deployment process is segmented into distinct phases: initial deployment on separate VMs for isolation, followed by consolidation onto a single VM after stability verification. This segmentation allows the system to achieve both isolation benefits during deployment and cost reduction during operation.
Solution Approach 2:
The system performs preliminary deployment and testing of services on separate virtual machines before consolidation. This preliminary action ensures service stability and compatibility are verified before reducing infrastructure resources, thereby preventing potential failures.
2Reliability
If multiple virtual machines are used to host services, then service isolation and stability are improved, but infrastructure costs increase
Solution Approach 1:
The patent merges multiple virtual machines into a single host after verifying service stability through the burn-in period. This consolidation reduces infrastructure costs while maintaining service isolation during the critical deployment phase through the two-step process.
Solution Approach 2:
The virtual machine configuration is dynamic rather than static. The system starts with multiple VMs for isolation during deployment, then transitions to a single VM for cost efficiency during operation. This dynamic adjustment allows the infrastructure to adapt to different operational requirements.
3Productivity
If services are updated while the cluster handles live traffic, then service availability is improved, but update risk increases
Solution Approach 1:
The system performs preliminary deployment and stability testing of updated services on separate virtual machines before consolidating them into the live cluster. This preliminary action allows updates to be tested in isolation, reducing the risk when deploying to production while maintaining availability.
Solution Approach 2:
The separate virtual machines act as intermediaries during the deployment process. They serve as a testing ground where updates can be verified before being consolidated into the live cluster, thereby mediating between the update process and production traffic.
Data Source
AI summary
System, method, and computer program product to perform an operation, including installing a first service on a first virtual machine and a second service on a second virtual machine in a web services cluster, testing the first service on the first virtual machine and the second service on the second virtual machine to determine that the first and second services are stable, installing the first service and the second service on a third virtual machine in the web services cluster, causing at least a portion of traffic directed to the first service and the second service to be sent to the third virtual machine, testing the first service and the second service on the third virtual machine, and removing the first and second virtual machines from the web services cluster upon determining that the first service and the second service executing on the third virtual machine are stable.


