IP Library Granted Patent US 7,555,644
Granted Patent B2
US 7,555,644 · App. 11/459,030 · Granted Jun 30, 2009

System and method for operating system image provisioning in a utility computing 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,555,644
App. No.
11/459,030
Granted
Jun 30, 2009
Kind
B2
Abstract

A technique to provision an OS image during a boot-up of a computing server in a utility computing environment using disk array's inherent raw concurrent multi-disk copy mechanism. In one example embodiment, this is achieved by forming a pool of OS image boot-up disks in a disk array using the disk array's internal disk copy routine. An OS image boot-up disk is assigned from the pool of OS image boot-up disks to the computing server upon receiving a request from the computing server. The OS image is then received from the assigned OS image boot-up disk. The computing server then boots-up using the received OS image and runs one or more applications residing in the computing server.

Claims (77)

1. A method for OS image provisioning in a utility computing environment comprising:

forming a pool of OS image boot-up disks in a disk array using disk array's internal disk copy routine and a golden image disk including a desired OS image, wherein forming the pool of OS image boot-up disks using the disk array's internal disk copy routine comprises:

determining an upper number of OS image boot-up disks and a lower number of OS image boot-up disks for the pool of OS image boot-up disks based on a utility computing environment parameter;

initializing a pool of OS image boot-up disks in the disk array with the golden image disk using the disk array's internal disk copy routine; and

filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks;

assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request; and

booting-up the computing server using the assigned OS image boot-up disk.

2. The method of claim 1 , wherein, in determining the upper and lower number of OS image boot-up disks, the utility computing environment comprises an average number of requests received for OS image boot-up disks from one or more computing servers during a predetermined amount of time.

3. The method of claim 1 , wherein assigning the OS image boot-up disk from the pool of OS image boot-up disks to the computing server comprises:

determining whether required number of OS image boot-up disk are available in the pool OS image boot-up disks in the disk array upon receiving a request for an OS image boot-up disk;

if not, putting the request for the OS image boot-up disk on hold and filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if so, assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request for an OS image boot-up disk or if there are any requests for an OS image boot-up disk on hold; and

if so, assigning an OS image boot-up disk if there is a request for an OS image boot-up disk on hold.

4. The method of claim 1 , further comprising:

determining whether number of available OS image boot-up disks in the disk array is below the lower number of OS image boot-up disks;

if so, filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if not, receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks; and

if not, determining whether there is a request on hold for an OS image boot-up disk and assigning the OS image boot-up disk if there is a request on hold for an OS image boot-up disk.

5. The method of claim 1 further comprising:

running one or more software applications residing in the computing server upon completing the boot-up of the computing server using the OS image boot-up disk.

6. A method as claimed in claim 1 comprising:

forming one or more pools of OS image boot-up disks using disk array's internal disk copy routine, wherein each pool has different types of OS image boot-up disks;

receiving a request from a computing server for an OS image boot-up disk by one of the one or more pools of OS image boot-up disks via a SAN;

determining type of OS image requested by the computing server;

assigning one of the OS image boot-up disks from the one of the one or more pools of OS image boot-up disks to the computing server as a function of the determination;

receiving the OS image from the assigned one of the OS image boot-up disks by the computing server; and

booting-up the computing server using the received OS image.

7. The method of claim 6 , wherein the one or more pools of OS image boot-up disks comprises image boot-up disks selected from the group comprising Unix OS image boot-up disks, Windows OS image boot-up disks, and Linux OS image boot-up disks.

8. A method as claimed in claim 1 comprising:

forming one or more arrays of OS image boot-up disks using each associated disk array's internal disk copy routine;

receiving a request from a computing server for an OS image boot-up disk by one of the one or more arrays of OS image boot-up disks via a SAN;

assigning one of the OS image boot-up disks from the one or more arrays of OS image boot-up disks to the computing server;

receiving the OS image from the assigned one of the OS image boot-up disks; and

booting-up the computing server using the received OS image.

9. The method of claim 8 , wherein each array comprises OS image boot-up disks selected from the group comprising Unix OS image boot-up disks, Windows OS image boot-up disks, and Linux OS image boot-up disks.

10. An article comprising:

a storage medium having instructions that, when decoded by a computing platform, result in execution of a method comprising:

forming a pool of OS image boot-up disks in a disk array using disk array's internal disk copy routine and a golden image disk, wherein forming the pool of OS image boot-up disks using the disk array's internal disk copy routine comprises:

determining an upper number of OS image boot-up disks and a lower number of OS image boot-up disks for the pool of OS image boot-up disks based on a utility computing environment parameter;

initializing a pool of OS image boot-up disks in the disk array with the golden image disk using the disk array's internal disk copy routine; and

filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks;

assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request; and

booting-up the computing server using the assigned OS image boot-up disk.

11. The article of claim 10 , wherein, in determining the upper and lower number of OS image boot-up disks, the utility computing environment comprises an average number of requests received for OS image boot-up disks from one or more computing servers during a predetermined amount of time.

12. The article of claim 10 , wherein assigning the OS image boot-up disk from the pool of OS image boot-up disks to the computing server comprises:

determining whether required number of OS image boot-up disks are available in the pool of OS image boot-up disks in the disk array upon receiving a request for an OS image boot-up disk;

if not, putting the request for the OS image boot-up disk on hold and filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if so, assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request for an OS image boot-up disk or if there are any requests for an OS image boot-up disk on hold; and

if so, assigning an OS image boot-up disk if there is a request for an OS image boot-up disk on hold.

13. The article of claim 10 , further comprising:

determining whether number of available OS image boot-up disks in the disk array is below the lower number of OS image boot-up disks;

if so, filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if not, receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks; and

if not, determining whether there is a request on hold for an OS image boot-up disk and assigning the OS image boot-up disk.

14. A computer system comprising:

a processor; and

a memory coupled to the processor, the memory having stored therein code which when decoded by the processor, the code causes the processor to perform a method comprising:

forming a pool of OS image boot-up disks in a disk array using the disk array's internal disk copy routine and a golden image disk, wherein forming the pool of OS image boot-up disks using the disk array's internal disk copy routine comprises:

determining an upper number of OS image boot-up disks and a lower number of OS image boot-up disks for the pool of OS image boot-up disks based on a utility computing environment parameter;

initializing a pool of OS image boot-up disks in the disk array with the golden image disk using the disk array's internal disk copy routine; and

filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks;

assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request; and

booting-up the computing server using the assigned OS image boot-up disk.

15. The system of claim 14 , wherein, in determining the upper and lower number of OS image boot-up disks, the utility computing environment comprises an average number of requests received for OS image boot-up disks from one or more computing servers during a predetermined amount of time.

16. The system of claim 14 , wherein assigning the OS image boot-up disk from the pool of OS image boot-up disks to the computing server comprises:

determining whether required number of OS image boot-up disks are available in the pool of OS image boot-up disks in the disk array upon receiving a request for an OS image boot-up disk;

if not, putting the request for the OS image boot-up disk on hold and filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if so, assigning an OS image boot-up disk from the pool of OS image boot-up disks to the computing server upon receiving the request for an OS image boot-up disk or if there are any requests for an OS image boot-up disk on hold; and

if so, assigning an OS image boot-up disk if there is a request for an OS image boot-up disk on hold.

17. The system of claim 14 , further comprising:

determining whether a number of available OS image boot-up disks in the disk array is below the lower number of OS image boot-up disks;

if so, filling the pool of OS image boot-up disks such that the number of OS image boot-up disks in the disk array is greater than or equal to the lower number of OS image boot-up disks and lesser than or equal to the upper number of OS image boot-up disks by using the disk array's internal disk copy routine to copy the desired OS image in the golden image disk;

if not, receiving a request for an OS image boot-up disk for a computing server by the pool of OS image boot-up disks; and

if not, determining whether there is a request on hold for an OS image boot-up disk and assigning the OS image boot-up disk.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2022
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 060005/0600 →
PATENT ASSIGNMENT, SECURITY INTEREST, AND LIEN AGREEMENT Recorded Jan 26, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: OT PATENT ESCROW, LLC
Reel/Frame 055269/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2006
From: BHARATHY, KARTHIK GS; DEVENDRAN, GUHENDRAN B
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 018168/0684 →