Thinly-Provisioned Secondary Servers for No-Reboot Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing high availability (HA) systems with secondary servers are inefficient in resource allocation, leading to wasted hardware and operational costs due to full provisioning, and fail to seamlessly transition to primary roles without disruptive reboots.
Innovation Solution
Implementing thinly-provisioned secondary servers with software-defined server (SDS) architecture that allows dynamic reconfiguration of computer nodes without rebooting, using a secondary server expansion engine to add spare nodes and expand resources for seamless takeover.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secondary servers are fully provisioned with the same hardware resources as primary servers, then failover reliability is improved, but hardware costs and operational expenses increase
Solution Approach 1:
The patent applies partial provisioning to secondary servers, providing them with fewer hardware resources than primary servers. The secondary server is provisioned with sufficient resources to handle typical workloads but with reduced capacity compared to the primary server, accepting that the secondary server may not be able to handle peak loads independently but can still provide reliable failover when needed.
Solution Approach 2:
The patent dynamically changes the resource allocation parameters of the secondary server based on operational needs. When failover is required, the system dynamically allocates additional resources to the secondary server, transforming it from a thinly-provisioned state to a fully-provisioned state, thereby maintaining reliability while optimizing resource usage during normal operation.
2Productivity
If traditional server provisioning is used, then hardware costs are high, but resource allocation efficiency is poor
Solution Approach 1:
The patent implements dynamic resource allocation where the secondary server's hardware resources can be changed during operation. The system dynamically adjusts the provisioning level of the secondary server based on whether it is in a standby state or an active failover state, allowing efficient resource utilization while maintaining the ability to provide full service capacity when needed.
Solution Approach 2:
The secondary server is designed to serve multiple functions: it operates as a cost-effective backup server with reduced resources during normal operation, and can be dynamically expanded to fully replace the primary server during failover events. This multi-functionality allows a single server to optimize resource allocation efficiency across different operational states.
3Reliability
If secondary servers are added to expand resources during failover, then system availability is improved, but system complexity increases
Solution Approach 1:
The patent segments the server system into distinct primary and secondary servers with clearly defined roles and resource allocation. The secondary server is segmented as a separate entity that can be independently provisioned and managed, allowing the system to maintain simplicity in normal operation while enabling expanded availability when needed through controlled resource addition.
Solution Approach 2:
The patent introduces a resource allocation manager as an intermediary component that handles the complexity of dynamic resource provisioning. This intermediary abstracts the complexity of resource allocation from the failover process, allowing the system to automatically manage resource expansion during failover without increasing the operational complexity of the failover mechanism itself.
Data Source
AI summary
In accordance with example implementations, a process includes associating a secondary computer system with a primary computer system. The secondary computer system includes a first virtual machine, which is hosted by a secondary set of physical computer nodes. The primary computer system has a primary role, and the primary role corresponds to a minimum physical resource allocation. The secondary computer system is associated with a secondary role, and the second computer system is provisioned with a second physical resource allocation, which is less than the minimum physical resource allocation. The process includes, responsive to the primary computer system failing and without rebooting the secondary computer system, preparing the secondary computer system to take over the primary role. The preparation includes adding at least one physical computer node to the secondary set of physical computer nodes to cause the second physical resource allocation to meet or exceed the minimum physical resource allocation. The process includes, responsive to the primary computer system failing and without rebooting the secondary computer system, causing the secondary computer system to take over the primary role.


