IP Library Granted Patent US 7,478,149
Granted Patent B2
US 7,478,149 · App. 10/609,363 · Granted Jan 13, 2009

Business continuation policy for server consolidation environment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,478,149
App. No.
10/609,363
Granted
Jan 13, 2009
Kind
B2
Abstract

A method, computer program product and system that establishes and maintains a business continuity policy in a server consolidation environment. Business continuity is ensured by enabling high availability of applications. When an application is started, restarted upon failure, or moved due to an overload situation, a system is selected best fulfilling the requirements for running the application. These requirements can include application requirements, such as an amount of available capacity to handle the load that will be placed on the system by the application. These requirements can further include system requirements, such as honoring a system limit of a number of applications that can be run on a particular system. Respective priorities of applications can be used to determine whether a lower-priority application can be moved to free resources for running a higher-priority application.

Claims (59)

1. A method comprising:

determining whether no single system among a plurality of systems meets a resource requirement for hosting a first application among a plurality of applications running on the plurality of systems; and

if the determining indicates that no single system among the plurality of systems meet the resource requirement,

using a priority of the first application and a respective priority for each of the plurality of applications running on the plurality of systems for identifying a resource to free, wherein the resource is one of a plurality of resources and is used by at least one of the plurality of applications, and wherein each of the plurality of resources is associated with at least one of the plurality of systems,

determining whether freeing the resource would cause a first system, associated with the resource, among the plurality of systems to meet the resource requirement,

freeing the resource in response to the identifying the resource and in response to a determination that freeing the resource would cause the first system to meet the resource requirement, and

hosting the first application on the first system using the resource.

2. The method of claim 1 wherein

the identifying the resource further comprises

using a respective capacity for each of the plurality of systems for identifying the resource.

3. The method of claim 1 wherein the freeing the resource comprises stopping a second application that is using the resource, wherein the second application has a lower respective priority than a respective priority of the first application.

4. The method of claim 1 wherein

the freeing the resource comprises moving a second application that is using the resource to a second system among the plurality of systems, wherein

the second application has a lower respective priority than a respective priority of the first application.

5. The method of claim 1 further comprising:

determining that the first application is to be started.

6. The method of claim 5 wherein

the determining that the first application is to be started comprises

detecting that the first application failed.

7. The method of claim 5 , wherein

the determining that the first application is to be started comprises

comparing the priority of the first application with each of a set of respective priorities for a set of the applications running on the plurality of systems, and

determining that the first application is to be started when the respective priority of the first application is higher than one of the set of respective priorities for the set of applications running on the plurality of systems.

8. The method of claim 1 wherein

the determining comprises

ascertaining whether a selected system among the plurality of systems meets a prerequisite for the first application.

9. The method of claim 1 wherein

the determining comprises

ascertaining whether the first application does not exceed a limit for a selected system among the plurality of systems.

10. An apparatus comprising:

a processor;

a first determining circuit configured to determine whether no single system among a plurality of systems meets a resource requirement for hosting a first application among a plurality of applications running on the plurality of systems;

an identifying circuit configured to use a priority of the first application and a respective priority for each of the plurality of applications running on the plurality of systems for identifying a resource to free if the determining circuit determines that no single system among the plurality of systems meet the resource requirement, wherein the resource is one of a plurality of resources and is used by at least one of the plurality of applications, and wherein each of the plurality of resources is associated with at least one of the plurality of systems,

a second determining circuit configured to determine whether freeing the resource would cause a first system, associated with the resource, among the plurality of systems to meet the resource requirement;

a freeing circuit configured to free the resource in response to the identifying circuit identifying the resource and in response to a determination that freeing the resource would cause the first system to meet the resource requirement, and

a hosting circuit for causing the first application to be hosted on the first system using the resource.

11. The apparatus of claim 10 wherein

the identifying circuit is further configured to use a respective capacity for each of the plurality of systems for identifying the resource.

12. The apparatus of claim 10 wherein

the freeing circuit comprises a stopping circuit configured to stop a second application that is using the resource, wherein

the second application has a lower respective priority than a respective priority of the first application.

13. The apparatus of claim 10 wherein

the freeing circuit comprises

a moving circuit configured to move a second application that is using the resource to a second system among the plurality of systems, wherein the second application has a lower respective priority than a respective priority of the first application.

14. The apparatus of claim 10

wherein the first determining circuit is further configured to determine that the first application is to be started.

15. The apparatus of claim 14 wherein

the first determining circuit comprises

a detecting circuit configured to detect that the first application failed.

16. The apparatus of claim 14 wherein

the first determining circuit comprises

a comparing circuit configured to compare a respective priority of the first application with each of a set of respective priorities for a set of the applications running on the plurality of systems, wherein

the first determining circuit is configured to determine that the first application is to be started when the respective priority of the first application is higher than one of the set of respective priorities for the set of applications running on the plurality of systems.

17. The apparatus of claim 10 wherein

the first determining circuit comprises

an ascertaining circuit configured to ascertain whether a selected system among the plurality of systems meets a prerequisite for the first application.

18. The apparatus of claim 10 wherein

the first determining circuit comprises

an ascertaining circuit configured to ascertain whether the first application does not exceed a limit for a selected system among the plurality of systems.

Assignments (15)
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CHANGE OF NAME Recorded Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →