This disclosure relates generally to an enterprise method, a technical field of software and/or hardware technology and, in one example embodiment, to network administration in a virtual machine environment through a temporary pool.
When a desktop source (e.g., a virtual machine, a blade server, or a physical system associated with a user and an operating system) is corrupted and/or needs maintenance, a third-party (e.g., a support professional) may need to access the desktop source. The third-party may provide technical support in a virtual machine environment. The virtual machine environment may include a number of groupings of desktop sources called pools.
The desktop source that is corrupted and/or needs maintenance may be included in a pool that comprises of other desktop sources which are not corrupted. The third-party may need to access the desktop source that is corrupted and/or needs maintenance to rectify a problem with the desktop source that is corrupted and/or needs maintenance. A technology limitation may require that the third-party be granted access to all desktop sources in the pool (e.g., including the desktop source that is corrupted and/or needs maintenance and the other desktop sources which are not corrupted) to rectify the problem. As a result, confidential information on the other desktop sources which are not corrupted may be exposed to the third party. Therefore, security of the virtual machine environment may be compromised.
In one aspect, a machine-readable medium embodying a set of instructions that, when executed by a machine, causes the machine to perform a method includes determining that a desktop source requires maintenance. In addition, the machine-readable medium may include creating a temporary pool. The machine-readable medium may also include accessing the desktop source requiring maintenance. The machine-readable medium may include automatically transferring the desktop source requiring maintenance from a source pool to the temporary pool. In addition, the machine-readable medium may include determining that an issue with the desktop source transferred to the temporary pool is rectified. The machine-readable medium may also include automatically transferring the desktop source from the temporary pool to the source pool when the issue is rectified.
In another aspect, a system includes a virtual machine server of a data center that hosts a desktop source requiring maintenance. In addition, the system includes a connection server to create a temporary pool, to automatically transfer the desktop source requiring maintenance from a source pool on the connection server to the temporary pool, and to automatically transfer the desktop source from the temporary pool to the source pool when an issue in the desktop source requiring maintenance is rectified. The system may also include a set of client devices to access the rectified desktop source through the connection server.
In yet another aspect, a machine-readable medium embodying a set of instructions that, when executed by a machine, causes the machine to perform a method includes forming a temporary pool having a plurality of desktop sources requiring maintenance provided to the temporary pool from different source pools. In addition, the machine-readable medium may include permitting a support professional to access to the temporary pool. The machine-readable medium may also include restricting access by the support professional to the different source pools having desktop sources that do not require maintenance. The machine-readable medium may yet include automatically transferring the desktop sources in the temporary pool to the different source pools which provided the desktop sources to the temporary pool when the support professional rectifies an issue of the desktop sources in the temporary pool.
In one embodiment, a machine-readable medium embodying a set of instructions that, when executed by a machine, causes the machine to perform a method includes determining a desktop source (e.g., the desktop source 200A-B, 202B of
In another embodiment, a system includes a virtual machine server of a data center that hosts a desktop source (e.g., the desktop source 200A-B, 202B of
In yet another embodiment, a machine-readable medium embodying a set of instructions that, when executed by a machine, causes the machine to perform a method includes forming a temporary pool (e.g., the temporary pool 100 of
In a virtual environment, a data center may have a virtual machine server. The data center may host a pool that includes desktop sources. Pools 102A-N may be a group of desktop sources which may be assigned to the end user (e.g., the client device 108A-N). There may be several kinds of management of the pools based on enterprise requirements, some of them are individual desktop, manual desktop pool, automated desktop pool, terminal server pool, etc. There may be chances that a desktop source200A-B, 202B in the pool may require maintenance due to various reasons (e.g., resource sharing, conflicts, software problems, etc.). The desktop source 200A-B, 202B that requires maintenance may be moved to the temporary pool. The desktop source requiring maintenance may be restored by an administrator 104. The administrator 104 may be a professional who manages the restoration, troubleshooting, resource management, etc. of the desktop sources in the data center.
In one embodiment, the desktop sources may be transferred from different source pools 102A-N to the temporary pool 100. The desktop sources may have resided on different virtual machine servers prior to being transferred to the temporary pool 100. The issue may be common to the desktop sources residing in the temporary pool 100. The issue may be of an operating system issue, a configuration issue, an application issue, a patch update issue, a system crash issue, a software installation issue, and/or a technical support issue. The source pool 102A-N may be a grouping of virtual machines sharing a common attribute. The common attribute may be an organization, a functional role, an application configuration, and/or the operating system. The connection server 106 may create the temporary pool 100, to automatically transfer the desktop source requiring maintenance from a source pool 102A-N on the connection server 106 to the temporary pool 100, and to automatically transfer the desktop source from the temporary pool 100 to the source pool 102A-N when an issue in the desktop source requiring maintenance is rectified. The set of client devices 110A-N may access the rectified desktop source through the connection server 106.
The issue may be an operating system issue, a configuration issue, an application issue, a patch update issue, a system crash issue, a software installation issue, and/or a technical support issue. The temporary pool 100 may be formed having desktop sources requiring maintenance provided to the temporary pool 100 from different source pools 102A-N. A support professional may be permitted to access to the temporary pool 100. Access may be restricted by the support professional to the different source pools 102A-N having desktop sources that do not require maintenance. The desktop sources may be automatically transferred in the temporary pool 100 to the different source pools 102A-N which provided the desktop sources to the temporary pool 100 when the support professional rectifies an issue of the desktop sources in the temporary pool 100.
The administrator 104 may be accessible from a remote location through a web browser and can perform various activities like pool management, configuration changes, manage entitlements, rights and policies, etc. A client device 108A-N may be a windows client, a linux web access, a MAC web access, a thin client that may access the desktop source in the data center of the virtual environment. The client devices 110A-N may access the desktop resources based on requirements from the connection server 106. The connection server 106 may enable the authorized end-users (e.g., the client device 108A-N) to securely connect to the centralized virtual desktop, back-end physical systems and/or the terminal servers in the datacenter. The client devices 110A-N may access the connection server 106 through the network 108.
In one embodiment, the desktop source 200A-B, 202B that requires maintenance may be determined. The temporary pool 100 may be created. The desktop source 200A-B, 202B may be accessed that requires maintenance. The desktop source 200A-B, 202B requiring maintenance may be automatically transferred from a source pool 102A-N to the temporary pool 100. It may be determined that an issue with the desktop source 200A-B, 202B transferred to the temporary pool 100 is rectified. The desktop source 200A-B, 202B may be automatically transferred from the temporary pool 100 to the source pool 102A-N when the issue is rectified.
A heterogeneous temporary pool may be formed from the temporary pool 100. The heterogeneous temporary pool may include desktop sources 200A-B, 202B requiring maintenance having different operating systems. Access may be provided to a support professional to the desktop sources 200A-B, 202B requiring maintenance in the temporary pool 100 while restricting access of the source pool 102A-N by the support professional. The source pool 102A-N may include desktop sources that do not require maintenance. The desktop source 200A-N, 202A-N may be a virtual machine, a physical system, and a blade server associated with a user and an operating system. A virtual machine server of a data center that may host the desktop source 200A-B, 202B requiring maintenance.
Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments. For example, the various devices, modules, analyzers, generators, etc. described herein may be enabled and operated using hardware circuitry (e.g., CMOS based logic circuitry), firmware, software and/or any combination of hardware, firmware, and/or software (e.g., embodied in a machine readable medium). For example, the various electrical structure and methods may be embodied using transistors, logic gates, and electrical circuits (e.g., application specific integrated (ASIC) circuitry and/or in Digital Signal Processor (DSP) circuitry).
Particularly, the connection server 106, and the network 108 of
In one or more embodiments, programming instructions for executing above described methods and systems are provided. The programming instructions are stored in a computer readable media.
With the above embodiments in mind, it should be understood that one or more embodiments of the invention may employ various computer-implemented operations involving data stored in computer systems. These operations are those requiring physical manipulation of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. Further, the manipulations performed are often referred to in terms, such as producing, identifying, determining, or comparing.
Any of the operations described herein that form part of one or more embodiments of the invention are useful machine operations. One or more embodiments of the invention also relates to a device or an apparatus for performing these operations. The apparatus may be specially constructed for the required purposes, such as the carrier network discussed above, or it may be a general purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general purpose machines may be used with computer programs written in accordance with the teachings herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.
The programming modules and software subsystems described herein can be implemented using programming languages such as Flash, JAVA™, C++, C, C#, Visual Basic, JavaScript, PHP, XML, HTML etc., or a combination of programming languages. Commonly available protocols such as SOAP/HTTP may be used in implementing interfaces between programming modules. As would be known to those skilled in the art the components and functionality described above and elsewhere herein may be implemented on any desktop operating system such as different versions of Microsoft Windows, Apple Mac, Unix/X-Windows, Linux, etc., executing in a virtualized or non-virtualized environment, using any programming language suitable for desktop software development.
The programming modules and ancillary software components, including configuration file or files, along with setup files required for providing the method and apparatus for troubleshooting subscribers on a telecommunications network and related functionality as described herein may be stored on a computer readable medium. Any computer medium such as a flash drive, a CD-ROM disk, an optical disk, a floppy disk, a hard drive, a shared drive, and storage suitable for providing downloads from connected computers, could be used for storing the programming modules and ancillary software components. It would be known to a person skilled in the art that any storage medium could be used for storing these software components so long as the storage medium can be read by a computer system.
One or more embodiments of the invention may be practiced with other computer system configurations including hand-held devices, microprocessor systems, microprocessor-based or programmable consumer electronics, minicomputers, mainframe computers and the like. The invention may also be practiced in distributing computing environments where tasks are performed by remote processing devices that are linked through a network.
One or more embodiments of the invention can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of the computer readable medium include hard drives, network attached storage (NAS), read-only memory, random-access memory, CD-ROMs, CD-Rs, CD-RWs, DVDs, Flash, magnetic tapes, and other optical and non-optical data storage devices. The computer readable medium can also be distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
While one or more embodiments of the present invention have been described, it will be appreciated that those skilled in the art upon reading the specification and studying the drawings will realize various alterations, additions, permutations and equivalents thereof. It is therefore intended that embodiments of the present invention include all such alterations, additions, permutations, and equivalents as fall within the true spirit and scope of the invention as defined in the following claims. Thus, the scope of the invention should be defined by the claims, including the full scope of equivalents thereof.
This application is related to U.S. application Ser. No. ______ (Docket No. A307), entitled “Policy Management to Initiate an Automated Action on a Desktop Source” and U.S. application Ser. No. ______ (Docket No. A301), entitled “Desktop Source Transfer Between Different Pools.”