IP Library Granted Patent US 7,076,633
Granted Patent B2
US 7,076,633 · App. 10/005,590 · Granted Jul 11, 2006

Hosting service providing platform system and method

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,076,633
App. No.
10/005,590
Granted
Jul 11, 2006
Kind
B2
Abstract

The present invention is a system and method for utilization of computer clusters with automatic configuration and virtual environments integrated with a distributed file system as a hosting service providing platform. The virtual environment of the present invention emulates no hardware and is essentially a personal protected machine with an independent operating system that functions as a separate workstation or server.

Claims (108)

1. A platform for providing hosting services, comprising:

a computer cluster formed by a plurality of hardware-independent cluster nodes, said computer cluster including a control center; and

a plurality of virtual environments running on the computer cluster, wherein each virtual environment virtualizes a full service operating system and does not require dedicated random access memory,

wherein multiple virtual environments running on the same node share the same operating system and the multiple virtual environments are running service processes, and

wherein said control center coordinates functions of said plurality of hardware-independent cluster nodes.

2. The platform as defined in claim 1 , wherein said plurality of hardware-independent cluster nodes further comprises a distributed file system having a common name space.

3. The platform as defined in claim 2 , wherein said distributed file system is integrated and optimized for said computer cluster.

4. The platform as defined in claim 2 , wherein said distributed file system stores data for the plurality of virtual environments.

5. The platform as defined in claim 4 , wherein each of said plurality of virtual environments further comprises:

a unique administrative root user for each member of said plurality of virtual environments;

a file system template and file tree; and

operating system parameter configuration;

and further wherein each of said plurality of virtual environments does not require other dedicated hardware resources.

6. The platform as defined in claim 4 , wherein said distributed file system further comprises:

means for making files containing transactions of any file system changes made in at least one of said plurality of virtual environments;

means for distributing said files containing the transactions to achieve the appropriate level of data accessibility; and

means for providing access to data from each member of said plurality of cluster nodes.

7. A platform that provides a hosting service, comprising;

a plurality of hardware-independent cluster nodes forming a computer cluster;

a plurality of virtual environments supported by the cluster nodes and providing hosting services, wherein each virtual environment virtualizes a full service operating system and does not require dedicated physical random access memory,

wherein multiple virtual environments running on the same node share the same operating system and the multiple virtual environments are running service processes; and

a control center that coordinates functions of the computer cluster.

8. The platform of claim 7 , wherein the plurality of hardware-independent cluster nodes further comprises a distributed file system having a common name space.

9. The platform of claim 8 , wherein the distributed file system is integrated and optimized for the automated computer cluster.

10. The platform of claim 8 , wherein the distributed file system stores data for the plurality of virtual environments.

11. The platform of claim 8 , wherein the distributed file system further comprises:

means for making files containing transactions from any file system changes made in at least one of the plurality of virtual environments;

means for distributing the files containing the transactions to achieve a desired level of data accessibility; and

means for providing access to the distributed storage system from each of the plurality of cluster nodes.

12. The platform of claim 7 , wherein each of the plurality of virtual environments further comprises:

a unique administrative “root” user for each of the plurality of virtual environments;

a file system template and a portion of a namespace dedicated to the virtual environments; and

operating system parameter configuration,

wherein each of the plurality of virtual environments does not require other dedicated hardware resources.

13. The platform of claim 7 , wherein each of the plurality of virtual environments does not require other dedicated hardware resources.

14. The platform of claim 7 , wherein each of the plurality of virtual environments does not require locking of hardware resources that are supported by standard operating system mechanisms.

15. The platform of claim 7 , wherein each of the plurality of virtual environments does not require emulation of hardware resources.

16. A method for maintaining a platform that provides hosting services, comprising:

forming a computer cluster from a plurality of hardware-independent cluster nodes;

establishing a control center for coordinating functions of said plurality of hardware-independent cluster nodes; and

operating a plurality of virtual environments on the computer cluster, wherein each virtual environment virtualizes a full service operating system and does not require dedicated random access memory, and

wherein multiple virtual environments running on the same node share the same operating system and the multiple virtual environments are running service processes.

17. The method as defined in claim 16 , wherein the step of operating the plurality of virtual environments further comprises implementing a distributed file system having a common name space, wherein said distributed file system is integrated and optimized for each member of said plurality of hardware-independent cluster nodes.

18. The method of claim 17 , wherein the step of operating said plurality of virtual environments further comprises:

establishing a unique administrative root user for each member of said plurality of virtual environments;

establishing a file system template and file tree for each member of said plurality of virtual environments;

implementing the operating system parameter configuration for each member of said plurality of virtual environments;

wherein said step of operating said plurality of virtual environments does not require any other dedicated hardware resources.

19. The method as defined in claim 18 , wherein the step of operating said plurality of virtual environments further comprises:

making files containing transactions of any changes in the file system made in at least one of said plurality of virtual environments;

distributing the files containing the transactions to achieve the appropriate level of data accessibility; and

providing access to data stored on the distributed file system from each member of said plurality of cluster nodes.

20. The method as defined in claim 18 , wherein the step of operating each member of said plurality of hardware-independent cluster nodes further comprises:

establishing and configuring network connections;

providing access to the distributed file system containing the file system template for each virtual environment within said cluster node;

accessing the resources of said cluster node; and

utilizing said cluster node for launching new virtual environments.

21. The method as defined in claim 19 , wherein the step of providing access to data from each of the plurality of virtual environments at said plurality of hardware independent cluster nodes further comprises restarting each virtual environment of a failed cluster node at another cluster node that has appropriate resources available.

22. A method for utilizing a hosting service platform, comprising:

requesting a service from an operating system;

operating a virtual environment for delivery of the service to a user, wherein the virtual environment virtualizes a full service operating system and does not require dedicated random access memory,

wherein the same operating system can be shared with other virtual environments running on the same computer and the virtual environments are running service processes; and

utilizing a distributed file system having a common name space for use by the virtual environment.

23. The method of claim 22 , wherein the step of operating said virtual environment further comprises installing an application into the virtual environment.

24. The method of claim 22 , wherein the step of operating said virtual environment further comprises configuring an application.

25. The method of claim 22 , wherein the step of operating said virtual environment further comprises launching an application of said operating system from said virtual environment.

26. The method of claim 22 , wherein the step of operating said virtual environment further comprises repairing remotely a failed software configuration of said virtual environment.

27. The method of claim 22 , wherein the step of utilizing a distributed file system further comprises achieving a desired fault tolerance level.

28. A method for providing a hosting services platform comprising:

forming a computer cluster from a plurality of hardware-independent cluster nodes;

operating a plurality of virtual environments supported by the nodes, wherein each virtual environment virtualizes a full service operating system and does not require dedicated random access memory,

wherein multiple virtual environments running on the same node share the same operating system and the multiple virtual environments are running service processes;

providing hosting services from the virtual environments; and

establishing a control center for managing functions of the computer cluster.

29. The method of claim 28 , wherein the step of forming the cluster further comprises implementing a distributed file system having a common name space,

wherein the distributed file system is integrated and optimized for each of the plurality of hardware-independent cluster nodes.

30. The method of claim 29 , wherein the step of operating the plurality of virtual environments further comprises:

establishing a unique administrative “root” user for each of the plurality of virtual environments;

establishing a file system template and file tree for each of the plurality of virtual environments; and

configuring operating system parameters for each of the plurality of virtual environments.

31. The method of claim 30 , wherein the step of forming the computer cluster further comprises:

establishing and configuring physical network connections;

providing access to the distributed file system containing the file system template for each virtual environment within the cluster;

utilizing the cluster node for launching the virtual environments; and

using the virtual environments for accessing resources of the cluster that service user requests.

32. The method of claim 31 , wherein the step of providing access to the distributed file system further comprises restarting each virtual environment of a failed cluster node at another cluster node that has available resources.

33. The method of claim 28 , wherein the step of operating the plurality of virtual environments does not lock hardware resources that are supported by standard operating system mechanisms.

34. The method of claim 28 , wherein the step of operating the plurality of virtual environments further comprises:

making files containing transactions of any changes in a file system made in at least one of the plurality of virtual environments;

distributing the files containing the transactions to achieve a desired level of data accessibility; and

providing access to data from each of the plurality of cluster nodes.

35. The method of claim 28 , wherein the virtual environments do not emulate hardware resources.

36. A method for utilizing a hosting service platform in an operating system comprising:

receiving a request for a service from the operating system;

operating a virtual environment adapted to respond to the request for service, wherein the virtual environment virtualizes a full service operating system and does not require dedicated random access memory,

wherein multiple virtual environments running on the same computer share the same operating system and the multiple virtual environments are running service processes; and

utilizing a distributed file system with a common name space to respond to the request for service.

37. The method of claim 36 , wherein the step of operating the virtual environment further comprises installing an application into the virtual environment.

38. The method of claim 37 , wherein the step of operating the virtual environment further comprises configuring the application.

39. The method of claim 36 , wherein the step of operating the virtual environment further comprises launching the application.

40. The method of claim 36 , wherein the step of operating the virtual environment further comprises repairing remotely a failed software configuration of the virtual environment.

41. The method of claim 36 , wherein the step of utilizing the distributed file system further comprises achieving a desired fault tolerance level.

42. A computer program product for providing a hosting services platform, comprising a computer usable medium having computer program logic recorded thereon for controlling a processor, the computer program logic comprising:

computer program code means for automating a computer cluster formed by a plurality of hardware-independent cluster nodes;

computer program code means for operating a plurality of virtual environments supported by the nodes, wherein each virtual environment vitalizes a full service operating system and does not require dedicated random access memory,

wherein multiple virtual environments running on the same node share the same operating system and the multiple virtual environments are running service processes;

computer program code means for providing hosting services from virtual environments; and

computer program code means for establishing a control center for managing functions of the computer cluster.

Assignments (10)
SECURITY INTEREST IN TRADEMARK, PATENT, AND COPYRIGHT RIGHTS Recorded Dec 22, 2022
From: VIRTUOZZO INTERNATIONAL GMBH; ONAPP LIMITED
To: WILMINGTON TRUST (LONDON) LIMITED
Reel/Frame 062206/0557 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2018
From: PARALLELS IP HOLDINGS GMBH
To: VIRTUOZZO INTERNATIONAL GMBH
Reel/Frame 045179/0537 →
RELEASE OF SECURITY INTEREST Recorded Dec 14, 2015
From: SILICON VALLEY BANK
To: PARALLELS HOLDINGS LTD. (F/K/A SWSOFT HOLDINGS LTD.)
Reel/Frame 037289/0685 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2012
From: PARALLELS HOLDINGS, LTD.
To: PARALLELS IP HOLDINGS GMBH
Reel/Frame 027595/0187 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2011
From: SWSOFT HOLDINGS, LTD.
To: PARALLELS HOLDINGS, LTD.
Reel/Frame 027467/0345 →
SECURITY AGREEMENT Recorded Jun 23, 2011
From: PARALLELS HOLDINGS LTD. (F/K/A SWSOFT HOLDINGS LTD.)
To: SILICON VALLEY BANK
Reel/Frame 026480/0957 →
CONFIRMATORY ASSIGNMENT Recorded Aug 27, 2003
From: SWSOFT HOLDINGS, INC.
To: SWSOFT HOLDINGS LTD.
Reel/Frame 014433/0820 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2003
From: TORMASOV, ALEXANDER; PUDGORODSKY, YURI; LUNEV, DENNIS; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV
To: SWSOFT HOLDINGS LTD.
Reel/Frame 014433/0911 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME, PREVIOUSLY RECORDED AT REEL 012358 FRAME 0377. Recorded Feb 20, 2002
From: TORMASOV, ALEXANDER; PUDGORODSKY, YURI; LUNEV, DENNIS; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV
To: SWSOFT HOLDINGS, INC.
Reel/Frame 012674/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2001
From: TORMASOV, ALEXANDER; PUDGORODSKY, YURI; LUNEV, DENNIS; BELOUSSOV, SERGUEI; PROTASSOV, STANISLAV
To: SWSOFT DELAWARE HOLDINGS, INC.
Reel/Frame 012358/0377 →