Legal claims defining the scope of protection, as filed with the USPTO.
1. A method, implemented on at least one machine, each of the at least one machine having at least one processor, storage, and a communication platform connected to a network for automatically deploying a plurality of distributed application stacks on a target machine, the method comprising the steps of: in each of a plurality of clusters, deploying at least one cluster-side software artifact of one of the plurality of distributed application stacks, wherein the at least one cluster-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one cluster-side software artifact belongs to; creating a plurality of virtual environments on the target machine through which a user has access to the plurality of clusters remotely, wherein the plurality of virtual environments are isolated from each other; in each of the plurality of virtual environments, deploying at least one target-side software artifact of one of the plurality of distributed application stacks, wherein the at least one target-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one target-side software artifact belongs to; and associating each of the plurality of virtual environments with one of the plurality of clusters by matching the version of the at least one target-side software artifact deployed in the virtual environment with the version of the at least one cluster-side software artifact deployed in the cluster, wherein deploying at least one target-side software artifact comprises: receiving an instruction to be used to direct the target machine to deploy the at least one target-side software artifact in the virtual environment; identifying the at least one target-side software artifact from the plurality of target-side software artifacts for the virtual environment based on the instruction; determining the version of the at least one target-side software artifact for the virtual environment based on the instruction; fetching the at least one target-side software artifact in the determined version to the target machine; and installing the at least one target-side software artifact in the determined version in the virtual environment of the target machine.
2. The method of claim 1 , further comprising: receiving a request from a user to access one of the plurality of clusters through the target machine; identifying one of the plurality of virtual environments created on the target machine that is associated with the cluster in accordance with the request; and invoking at least some of the target-side software artifacts in the distributed application stack deployed in the identified virtual environment.
3. The method of claim 1 , wherein at least one resource associated with the target machine is allocated to each of the virtual environments; and the at least one target-side software artifact deployed in each virtual environment is capable of accessing the at least one resource allocated to the virtual environment.
4. The method of claim 1 , wherein the instruction includes an identifier for the virtual environment.
5. The method of claim 1 , wherein each of the target-side software artifacts and cluster-side software artifacts is in a version controlled package format.
6. A system having at least one processor, storage, and a communication platform connected to a network for automatically deploying a plurality of distributed application stacks on a target machine, comprising: a deployment module implemented on the at least one processor and configured to in each of a plurality of clusters, deploy at least one cluster-side software artifact of one of the plurality of distributed application stacks, wherein the at least one cluster-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one cluster-side software artifact belongs to, and in each of a plurality of virtual environments created on the target machine, at least one target-side software artifact of one of the plurality of distributed application stacks, wherein the at least one target-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one target-side software artifact belongs to; and a virtual environment manager implemented on the at least one processor and configured to: create a plurality of virtual environments on the target machine through which a user has access to the plurality of clusters remotely, wherein the plurality of virtual environments are isolated from each other, and associate each of the plurality of virtual environments with one of the plurality of clusters by matching the version of the at least one target-side software artifact deployed in the virtual environment with the version of the at least one cluster-side software artifact deployed in the cluster, wherein the deployment module comprises: a node deployment unit configured to receive an instruction to be used to direct the target machine to deploy the at least one target-side software artifact in the virtual environment, identify the at least one target-side software artifact from the plurality of target-side software artifacts for the virtual environment based on the instruction, and determine the version of the at least one target-side software artifact for the virtual environment based on the instruction, a fetching unit configured to fetch the at least one target-side software artifact in the determined version to the target machine, and an installation unit configured to install the at least one target-side software artifact in the determined version in the virtual environment of the target machine.
7. The system of claim 6 , wherein the virtual environment manager is further configured to: receive a request from a user to access one of the plurality of clusters through the target machine; identify one of the plurality of virtual environments created on the target machine that is associated with the cluster in accordance with the request; and invoking at least some of the target-side software artifacts in the distributed application stack deployed in the identified virtual environment.
8. The system of claim 6 , wherein at least one resource associated with the target machine is allocated to each of the virtual environments; and the at least one target-side software artifact deployed in each virtual environment is capable of accessing the at least one resource allocated to the virtual environment.
9. The system of claim 6 , wherein the instruction includes an identifier for the virtual environment.
10. The system of claim 6 , wherein each of the target-side software artifacts and cluster-side software artifacts is in a version controlled package format.
11. A machine-readable tangible and non-transitory medium having information recorded thereon for automatically deploying a plurality of distributed application stacks on a target machine, wherein the information, when read by the machine, causes the machine to perform the following: in each of a plurality of clusters, deploying at least one cluster-side software artifact of one of the plurality of distributed application stacks, wherein the at least one cluster-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one cluster-side software artifact belongs to; creating a plurality of virtual environments on the target machine through which a user has access to the plurality of clusters remotely, wherein the plurality of virtual environments are isolated from each other; in each of the plurality of virtual environments, deploying at least one target-side software artifact of one of the plurality of distributed application stacks, wherein the at least one target-side software artifact is associated with a version that uniquely identifies the distributed application stack which the at least one target-side software artifact belongs to; and associating each of the plurality of virtual environments with one of the plurality of clusters by matching the version of the at least one target-side software artifact deployed in the virtual environment with the version of the at least one cluster-side software artifact deployed in the cluster, wherein deploying at least one target-side software artifact comprises: receiving an instruction to be used to direct the target machine to deploy the at least one target-side software artifact in the virtual environment; identifying the at least one target-side software artifact from the plurality of target-side software artifacts for the virtual environment based on the instruction; determining the version of the at least one target-side software artifact for the virtual environment based on the instruction; fetching the at least one target-side software artifact in the determined version to the target machine; and installing the at least one target-side software artifact in the determined version in the virtual environment of the target machine.
12. The medium of claim 11 , further comprising: receiving a request from a user to access one of the plurality of clusters through the target machine; identifying one of the plurality of virtual environments created on the target machine that is associated with the cluster in accordance with the request; and invoking at least some of the target-side software artifacts in the distributed application stack deployed in the identified virtual environment.
13. The medium of claim 11 , wherein at least one resource associated with the target machine is allocated to each of the virtual environments; and the at least one target-side software artifact deployed in each virtual environment is capable of accessing the at least one resource allocated to the virtual environment.
14. The medium of claim 11 , wherein the instruction includes an identifier for the virtual environment.
15. The medium of claim 11 , wherein each of the target-side software artifacts and cluster-side software artifacts is in a version controlled package format.
Unknown
February 23, 2016
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.