IP Library Granted Patent US 9,317,268
Granted Patent B2
US 9,317,268 · App. 13/364,431 · Granted Apr 19, 2016

Recovery automation in heterogeneous environments

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 9,317,268
App. No.
13/364,431
Granted
Apr 19, 2016
Kind
B2
Abstract

A computer system may be configured to invoke drivers to one or more target machines. A controller, based on a request, may select a driver from a set of interface drivers. The controller may be configured to invoke the driver selected from the set of interface drivers. The invoked driver may issue commands to a target machine that was named in the request. The commands may install an operating system, named in the request, on the target machine.

Claims (59)

1. A computer-implemented method comprising:

receiving a request to install one of a plurality of different operating systems on one of a plurality of heterogeneous target machines, two or more of which comprise different hardware environments, the request comprising a name of the operating system to be installed and a name of the target machine;

selecting, by a controller and based on the name of the operating system and the name of the target machine in the received request, a corresponding interface driver from a set of interface drivers coupled to the controller, each interface driver in the set being associated with a different operating system type and a different target machine type that a user may request to be installed, and each interface driver being a set of executable instructions specific to one of the different operating systems and one of the heterogeneous target machines, the set of executable instructions in the interface drivers providing a common set of commands for the controller to communicate with the plurality of different operating systems and the plurality of heterogeneous target machines;

invoking, by the controller, the corresponding interface driver;

issuing, via the corresponding interface driver invoked by the controller, one or more of the common set of commands to the target machine named in the request to install the operating system named in the request on the target machine; and

wherein issuing, via the corresponding interface driver invoked by the controller, one or more of the common set of commands to the target machine to install the named operating system further comprises:

determining an installation type of the operating system named in the request from a table that associates the name of the operating system in the received request and an associated install type, the associated install type being one of at least a scripted type or an image type;

when the table indicates the installation type is a scripted type, sending to the target machine, a location of a scripted installer for the operating system to be installed; and

when the table indicates the installation type is an image-based type, loading the operating system on the target machine, wherein the operating system comprises a plurality of imaging tools.

2. The method of claim 1 , further comprising:

receiving an other request to install an other operating system on an other target machine;

selecting, by the controller and based on a name of the other operating system and a name of the other target machine in the other received request, and selecting an other corresponding interface driver from the set of interface drivers;

invoking, by the controller, the other corresponding interface driver; and

issuing, via the other corresponding interface driver invoked by the controller, one or more other commands of the common set of commands to the other target machine to install the other operating system on the other target machine, wherein the other target machine is comprised of a hardware environment different than the hardware environment of the named target machine named in the request.

3. The method of claim 1 , the method further comprising:

in response to one of the one or more commands issued to the named target machine, changing a hardware configuration of the named target machine.

4. The method of claim 3 , wherein changing the hardware configuration of the named target machine further comprises:

loading a network bootloader on the target machine;

sending a unique identifier from the named target machine to the controller;

providing, by the controller, a bootloader configuration to the named target machine, the bootloader configuration indicating a location of the operating system to be installed.

5. The method of claim 1 , further comprising:

monitoring the issuing of the one or commands of the common set of commands to install the named operating system named in the request;

based on the monitoring, reporting one or more statuses to a user interface of the controller; and

displaying the one or more statuses on the user interface.

6. The method of claim 1 , further comprising:

monitoring the controller and the target machine named in the request;

receiving, via the controller, a deployment command;

in response to the deployment command, changing a deployment event in a user interface of the controller to a setup state;

after the operating system is installed on the named target machine, providing a job completed alert to the user interface of the controller;

displaying, by the user interface, an indication of the job completed alert.

7. The method of claim 1 , further comprising:

detecting an error while issuing, via the corresponding interface driver invoked by the controller, one or more of the common set of commands to the named target machine to install the operating system named in the request on the target machine;

reporting the error to a user interface of the controller; and

displaying, by the user interface, an indication of the error.

8. The method of claim 1 , further comprising:

removing, by the controller, an installed operating system from a target machine in the plurality of heterogeneous target machines.

9. A computer system comprising:

a memory storing a set of interface drivers, each interface driver in the set of interface drivers being a set of executable program instructions configured to issue a set of common commands to a selected one of a plurality of target machine types for installing a respective one of a plurality of different operating systems on the selected target machine type, the interface drivers collectively providing the set of common commands for the plurality of different operating systems and the plurality of machine types to communicate with a controller;

the memory also storing a table associating an operating system name with an install type, the install type being one of at least a scripted type or an image type; and

a processor operating as the controller and further configured to:

select from the memory, based on a received user request comprising a name of an operating system to be installed and a name of a target machine, a corresponding one of the interface drivers of the set; and

execute the corresponding interface driver, the corresponding interface driver being further configured to issue one or more of the common commands to the named target machine to install the named operating system on the named target machine; and

wherein execute the corresponding interface driver further comprises to:

determine an installation type of the operating system named in the request to select further from the memory, as specified in a table that associates the name of the operating system with a corresponding installation type;

when the table indicates the installation type is a scripted type, send to the target machine, a location of a scripted installer for the operating system to be installed; and

when the table indicates the installation type is an image-based type, load the operating system on the target machine, wherein the operating system comprises a plurality of imaging tools.

10. The system of claim 9 , wherein the controller is further configured to:

select, based on an other received user request comprising an other name of an other operating system and an other name of an other target machine, an other corresponding interface driver in the set; and

invoke the other corresponding interface driver, the other corresponding interface driver being further configured to issue one or more other commands to the other named target machine to install the other named operating system on the other named target machine, wherein other target machine comprises a different hardware environment than a hardware environment of the target machine named in the request.

11. The system of claim 10 , wherein the other named operating system is equivalent to the named operating system.

12. The system of claim 10 , wherein the other operating system is different than the named operating system.

13. The system of claim 9 , further comprising:

a group of target machines coupled to the controller and comprising the named target machine, wherein at least one target machine in the group of target machines is comprised of a different hardware environment than a hardware environment of the named target machine.

14. The system of claim 9 , further comprising:

a state machine configured to:

monitor the controller and the target machine named in the request; and

provide, to a user interface of the controller, one or more statuses of one or more deployment events, wherein each deployment event of the one or more deployment events is comprised of one or more deployment jobs, and each deployment job of the one or more deployment jobs is comprised of one or more tasks.

15. The system of claim 14 , wherein the user interface of the controller is configured to display the one or more statuses of the one or more deployment events, at least one status of the one or more deployment jobs, and at least one status of the one or more tasks.

16. The system of claim 9 , wherein the controller is further configured to remove an installed operating system from a target machine in a group of target machines.

Assignments (16)
RELEASE OF SECURITY INTEREST Recorded Sep 20, 2023
From: PNC BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: SUNGARD AVAILABILITY SERVICES, LP; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC
Reel/Frame 064963/0677 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2023
From: CORTLAND PRODUCTS CORP.
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 062451/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2022
From: SUNGARD AVAILABILITY SERVICES, L.P.
To: 11:11 SYSTEMS, INC.
Reel/Frame 061853/0933 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 11, 2022
From: PNC BANK, NATIONAL ASSOCIATION
To: SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 061925/0294 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY INTEREST Recorded Jun 21, 2021
From: ALTER DOMUS PRODUCTS CORP.
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 056634/0200 →
INTELLECTUAL PROPERTY SECURITY INTEREST AGREEMENT Recorded Dec 23, 2020
From: SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: ALTER DOMUS PRODUCTS CORP.
Reel/Frame 054837/0948 →
INTELLECTUAL PROPERTY SECURITY INTEREST AGREEMENT Recorded Dec 23, 2020
From: SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: ALTER DOMUS PRODUCTS CORP.
Reel/Frame 054838/0052 →
SUCCESSOR AGENCY AGREEMENT Recorded Aug 26, 2019
From: CORTLAND CAPITAL MARKET SERVICES LLC, AS RESIGNING AGENT
To: CORTLAND PRODUCTS CORP, AS NEW AGENT
Reel/Frame 050174/0017 →
SECURITY INTEREST Recorded Aug 26, 2019
From: SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: CORTLAND CAPITAL MARKET SERVICES LLC
Reel/Frame 050173/0063 →
SECURITY INTEREST Recorded Aug 26, 2019
From: SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC; SUNGARD AVAILABILITY SERVICES, LP
To: CORTLAND CAPITAL MARKET SERVICES LLC
Reel/Frame 050173/0112 →
SUCCESSOR AGENCY AGREEMENT Recorded Aug 26, 2019
From: CORTLAND CAPITAL MARKET SERVICES LLC, AS RESIGNING AGENT
To: CORTLAND PRODUCTS CORP, AS NEW AGENT
Reel/Frame 050174/0335 →
SECURITY AGREEMENT Recorded Aug 12, 2019
From: SUNGARD AVAILABILITY SERVICES, LP; SUNGARD AS NEW HOLDINGS III, LLC; SUNGARD AS NEW HOLDINGS II, LLC
To: PNC BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 050020/0785 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 049092/0264 →
CHANGE OF NAME Recorded Dec 1, 2017
From: SUNGARD AVAILABILITY SERVICES LP
To: SUNGARD AVAILABILITY SERVICES, LP
Reel/Frame 044635/0787 →
SECURITY INTEREST Recorded Apr 11, 2014
From: SUNGARD AVAILABILITY SERVICES, LP
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 032652/0864 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2012
From: LEVIJARVI, EMMANUEL SHELDON
To: SUNGARD AVAILABILITY SERVICES LP
Reel/Frame 027648/0115 →