Method and system for simplifying distributed server management
First Claim
1. A method for receiving and executing, on one of a plurality of servers, a system command from a software application program, the method comprising:
- receiving a system command from a command-line interface of a server management system, the server management system including the command-line interface, a virtual server client, and virtual server agents, each virtual server agent running on a respective server;
translating the system command to an abstract system command, the abstract system command being indifferent to operating systems used by the servers running the virtual server agents;
receiving, at the virtual server client, the abstract system command; and
instantiating the abstract system command by;
identifying, by the virtual server client, a target server to receive the abstract system command and a corresponding virtual server agent associated with the target server,transmitting the abstract system command to the corresponding virtual agent for translation of the abstract system command into an operating system-specific system command for execution on the target server,executing the operating system-specific system command under permissions determined as a function of the target server, an identity of a user of the command-line interface, and a role assigned to the identity, andreceiving execution results from the corresponding virtual server agent.
10 Assignments
0 Petitions
Accused Products
Abstract
A method and system for managing a large number of servers and their server components distributed throughout a heterogeneous computing environment is provided. In one embodiment, an authenticated user, such as a IT system administrator, can securely and simultaneously control and configure multiple servers, supporting different operating systems, through a “virtual server.” A virtual server is an abstract model representing a collection of actual target servers. To represent multiple physical servers as one virtual server, abstract system calls that extend execution of operating-system-specific system calls to multiple servers, regardless of their supported operating systems, are used. A virtual server is implemented by a virtual server client and a collection of virtual server agents associated with a collection of actual servers.
239 Citations
22 Claims
-
1. A method for receiving and executing, on one of a plurality of servers, a system command from a software application program, the method comprising:
-
receiving a system command from a command-line interface of a server management system, the server management system including the command-line interface, a virtual server client, and virtual server agents, each virtual server agent running on a respective server; translating the system command to an abstract system command, the abstract system command being indifferent to operating systems used by the servers running the virtual server agents; receiving, at the virtual server client, the abstract system command; and instantiating the abstract system command by; identifying, by the virtual server client, a target server to receive the abstract system command and a corresponding virtual server agent associated with the target server, transmitting the abstract system command to the corresponding virtual agent for translation of the abstract system command into an operating system-specific system command for execution on the target server, executing the operating system-specific system command under permissions determined as a function of the target server, an identity of a user of the command-line interface, and a role assigned to the identity, and receiving execution results from the corresponding virtual server agent. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A system comprising:
-
a first server running a server management system, the server management system including a command-line interface and a virtual server client, and a plurality of servers communicatively connected with the first server, each server running a respective virtual server agent, wherein the first server includes instructions that, when executed by the first server, cause the first server to perform operations including; receiving a system command from the command-line interface of the server management system, translating the system command to an abstract system command, the abstract system command being indifferent to operating systems used by the plurality of servers running the virtual server agents, receiving, at the virtual server client, the abstract system command, and instantiating the abstract system command by; identifying, by the virtual server client, a target server of the plurality of servers to receive the abstract system command and a corresponding virtual server agent associated with the target server, transmitting the abstract system command to the corresponding virtual agent for translation of the abstract system command into an operating system-specific system command for execution on the target server, executing the operating system-specific system command under permissions determined as a function of the target server, an identity of a user of the command-line interface, and a role assigned to the identity, and receiving execution results from the corresponding virtual server agent. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification