IP Library Granted Patent US 8,918,781
Granted Patent B1
US 8,918,781 · App. 14/036,743 · Granted Dec 23, 2014

Product deployment system

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 8,918,781
App. No.
14/036,743
Granted
Dec 23, 2014
Kind
B1
Abstract

A product deployment system of an electronic document is described. An example product deployment system includes a deployment processor, a remote execution module, and a plan manager. The deployment processor may be configured to receive a request to deploy an application, generated a deployment plan, provide the deployment plan to the plan manager, and trigger a command to be sent from the remote execution module to the target hosts in the target host set. The plan manager provides the deployment plan to the target host set in response to receiving the identification of the deployment plan from the target host set. The plan manager may also monitor execution of the deployment plan by the target host set without saving a state of deployment process that is being performed at the target host set. The plan manager may also react to perceived failures that may occur at the target host set.

Claims (60)

1. A method comprising:

receiving, at a deployment processor, a request to deploy an application on a target host;

generating, at the deployment processor, a deployment plan for the request;

providing the deployment plan to a plan manager, utilizing at least one processor;

utilizing a remote execution module, triggering a command to be executed on a target host, the command comprising an identification of the deployment plan;

in response to receiving the identification of the deployment plan at the plan manager, providing the deployment plan from the plan manager to the target host, using at least one processor coupled to a memory; and

at the plan manager, monitoring execution of the deployment plan by the target host without saving, at the plan manager, a state of deployment process that is being performed at the target host, the target host provided on a machine that is distinct from a machine hosting the plan manager, wherein requesting re-execution of an operation at the target host produces the same outcome at the target host as an earlier execution of the operation at the target host.

2. The method of claim 1 , wherein the generating of the deployment plan comprises:

accessing a deployment topology and a deployment script; and

based on the deployment topology and the deployment script, generating the deployment plan.

3. The method of claim 2 , wherein the deployment topology indicates which and how many specific target host machines are to execute an application associated with the request.

4. The method of claim 2 , wherein the deployment script includes one or more operations to be executed at the target host machine with respect to the application that is the subject of deployment.

5. The method of claim 1 , comprising:

detecting, at the plan manager, an indication of a failure with respect to the execution of the deployment plan by the target host; and

processing the indication of the failure.

6. The method of claim 5 , wherein the processing of the indication of a failure comprises:

determining that the failure is a temporary failure; and

requesting that one or more operation from the deployment plan are re-executed at the host target system.

7. The method of claim 5 , wherein the processing of the indication of a failure comprises:

determining that the failure is a permanent failure; and

recording information about the indication of the failure.

8. The method of claim 1 , wherein the application comprises one or more web services.

9. The method of claim 8 , wherein the one or more web services are associated with an on-line social networking system.

10. The method of claim 1 wherein:

the target host is from a plurality of target host machines; and

the deployment topology indicates that the application is to be deployed on one or more host target machines in addition to the target host.

11. A computer-implemented system comprising:

at least one processor coupled to a memory;

a deployment processor to, using the at least one processor:

receive a request to deploy an application on a target host,

generating a deployment plan for the request, and

provide the deployment plan to a plan manager;

trigger a command to be sent from a remote execution module to the target host, the command comprising an identification of the deployment plan;

the remote execution system to send authenticated commands to target hosts, the target hosts including the target host, using the at least one processor;

the plan manager to, using the at least one processor:

provide the deployment plan to the target host in response to receiving the identification of the deployment plan from the target host, and

monitor execution of the deployment plan by the target host without saving, at the plan manager, a state of deployment process that is being performed at the target host, the target host provided on a machine that is distinct from a machine hosting the plan manager, wherein requesting re-execution of an operation at the target host produces the same outcome at the target host as an earlier execution of the operation at the target host.

12. The system of claim 11 , wherein the deployment processor is to:

access a deployment topology and a deployment script; and

based on the deployment topology and the deployment script, generate the deployment plan.

13. The system of claim 12 , wherein the deployment topology indicates which and how many specific target host machines are to execute an application associated with the request.

14. The system of claim 12 , wherein the deployment script includes one or more operations to be executed at the target host machine with respect to the application that is the subject of deployment.

15. The system of claim 11 , wherein the plan manager is to:

detect an indication of a failure with respect to the execution of the deployment plan by the target host; and

process the indication of the failure.

16. The system of claim 15 , wherein the plan manager is to:

determine that the failure is a temporary failure; and

request that one or more operation from the deployment plan are re-executed at the host target system.

17. The system of claim 15 , wherein the plan manager is to:

determine that the failure is a permanent failure; and

record information about the indication of the failure.

18. The system of claim 11 , wherein the application comprises one or more web services.

19. The system of claim 18 , wherein the one or more web services are associated with an on-line social networking system.

20. A machine-readable non-transitory storage medium having instruction data to cause a machine to:

receive a request to deploy an application on a target host;

generate a deployment plan for the request;

provide the deployment plan to a plan manager;

trigger a command to be sent from a remote execution module to the target host, the command comprising an identification of the deployment plan;

provide the deployment plan to the target host in response to receiving the identification of the deployment plan from the target host; and

monitor execution of the deployment plan by the target host without saving, at the plan manager, a state of deployment process that is being performed at the target host, the target host provided on a machine that is distinct from a machine hosting the plan manager, wherein requesting re-execution of an operation at the target host produces the same outcome at the target host as an earlier execution of the operation at the target host.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2017
From: LINKEDIN CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044746/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2013
From: DUBEY, MANISH; SULLY, DANIEL; SIMIC, ZORAN; HOLMES, SCOTT; GRILLO, DANIEL L.
To: LINKEDIN CORPORATION
Reel/Frame 031279/0221 →