Claims
- 1. A method comprising:
using a system definition model to design a system; subsequently using the system definition model to deploy the system on one or more computing devices; and after deployment of the system, using the system definition model to manage the system deployed on the one or more computing devices.
- 2. A method as recited in claim 1, wherein the system comprises an application.
- 3. A method as recited in claim 1, wherein the system comprises an environment.
- 4. A method as recited in claim 1, further comprising:
using knowledge obtained during management of the system to design a subsequent version of the system.
- 5. A method as recited in claim 1, wherein the system definition model includes knowledge describing how to deploy the system on the one or more computing devices.
- 6. A method as recited in claim 1, wherein the system definition model includes knowledge describing how to deploy the system on multiple different computing devices, and wherein the knowledge includes different knowledge describing how to deploy the system on each of the multiple different computing devices.
- 7. A method as recited in claim 1, wherein the system definition model includes constraints that must be satisfied by the one or more computing devices in order for the system to be run on the one or more computing devices.
- 8. A method as recited in claim 7, wherein the system definition model can be used to check whether the constraints are satisfied by the one or more computing devices during design of the system.
- 9. A method as recited in claim 7, wherein the system definition model can be used to check whether the constraints are satisfied by the one or more computing devices during design of the system and during management of the system.
- 10. A method as recited in claim 1, wherein the system definition model includes knowledge describing how to manage the system after deployment of the system.
- 11. A method as recited in claim 1, further comprising:
during management of the system, using a flow to automatically propagate a configuration change to the system.
- 12. A method as recited in claim 1, wherein the system is deployed to an environment on the one or more computing devices, the method further comprising, prior to the design, deployment, and management of the system:
using another system definition model to design the environment; subsequently using the other system definition model to deploy the environment on the one or more computing devices; and after deployment of the environment, using the other system definition model to manage the environment deployed on the one or more computing devices.
- 13. A method as recited in claim 12, wherein the system definition model for the environment is derived through examination of the configuration of one or more computing devices.
- 14. A method as recited in claim 12, wherein the system definition model includes constraints that must be satisfied by the environment in order for the system to be run on the one or more computing devices, and wherein the other system definition model includes other constraints that must be satisfied by the system in order for the system to be run on the one or more computing devices.
- 15. A method as recited in claim 1, wherein a plurality of environments are deployed on the one or more computing devices, the method further comprising:
using a plurality of different system definition models to design each of the plurality of environments, wherein each of the plurality of environments is associated with one of the plurality of different system definition models; using, for each environment, the associated one of the plurality of different system definition models to deploy the environment; and after deployment, using, for each environment, the associated one of the plurality of different system definition models to manage the environment.
- 16. A method as recited in claim 15, wherein each of the plurality of environments is layered, and wherein each of the plurality of environments serves as environment to one other of the plurality of environments or to the system.
- 17. One or more computer readable media having stored thereon a plurality of instructions that implement a schema, wherein the plurality of instructions, when executed by a processor, cause the processor to:
facilitate design of a system; facilitate deployment of the system; and facilitate management of the system.
- 18. One or more computer readable media as recited in claim 17, wherein the system comprises an application.
- 19. One or more computer readable media as recited in claim 17, wherein the system comprises an environment.
- 20. One or more computer readable media as recited in claim 17, wherein to facilitate deployment of the system is to include, in a system definition model, knowledge describing how to deploy the system.
- 21. One or more computer readable media as recited in claim 17, wherein to facilitate deployment of the system is to include, in a system definition model, knowledge describing how to deploy the system in multiple different environments, and wherein the knowledge includes different knowledge describing how to deploy the system in each of the multiple different environments.
- 22. One or more computer readable media as recited in claim 17, wherein to facilitate design of the system is to include, in a system definition model, constraints that must be satisfied by an environment in order for the system to be run in the environment.
- 23. One or more computer readable media as recited in claim 22, wherein to facilitate design of the system is to use the system definition model to check whether the constraints are satisfied by the environment during design of the system.
- 24. One or more computer readable media as recited in claim 17, wherein to facilitate management of the system is to include, in a system definition model, knowledge describing how to manage the system.
- 25. An apparatus that implements a schema comprising:
means for facilitating design of a system; means for facilitating deployment of the system; and means for facilitating management of the system.
- 26. An apparatus as recited in claim 25, wherein the means for facilitating deployment of the system comprises means for including, in a system definition model, knowledge describing how to deploy the system.
- 27. An apparatus as recited in claim 25, wherein the means for facilitating deployment of the system comprises means for including, in a system definition model, knowledge describing how to deploy the system in multiple different environments, and wherein the knowledge includes different knowledge describing how to deploy the system in each of the multiple different environments.
- 28. An apparatus as recited in claim 25, wherein the means for facilitating design of the system comprises means for including, in a system definition model, constraints that must be satisfied by an environment in order for the system to be run in the environment.
- 29. An apparatus as recited in claim 28, wherein the means for facilitating design of the system comprises means for using the system definition model to check whether the constraints are satisfied by the environment during design of the system.
- 30. An apparatus as recited in claim 25, wherein the means for facilitating management of the system comprises means for including, in a system definition model, knowledge describing how to manage the system.
- 31. A system comprising:
a system definition model applicable across a lifecycle of an application, wherein the lifecycle of the application includes design of the application, deployment of the application, and management of the application; and a schema to dictate how functional operations within the system definition model are to be specified.
- 32. A system as recited in claim 31, wherein the system definition model includes information describing how to deploy the application.
- 33. A system as recited in claim 31, wherein the system definition model includes information describing how to deploy the application in multiple different environments, and wherein the information includes different information describing how to deploy the application in each of the multiple different environments.
- 34. A system as recited in claim 31, wherein the system definition model includes constraints that must be satisfied by an environment in order for the application to be run in the environment.
- 35. A system as recited in claim 34, wherein the system definition model can be used to check whether the constraints are satisfied by one or more computing devices in the system during design of the application and during management of the application.
- 36. A system as recited in claim 34, wherein the system definition model can be used to check whether the constraints are satisfied by the environment during design of the application.
- 37. A system as recited in claim 31, wherein the system definition model includes information describing how to manage the application.
- 38. A system as recited in claim 31, wherein the system further comprises:
another system definition model applicable across a lifecycle of an environment, wherein the lifecycle of the environment includes design of the environment, deployment of the environment, and management of the environment; and wherein the schema is further to dictate how functional operations within the other system definition model are to be specified.
- 39. A system as recited in claim 38, wherein the system definition model for the environment is derived through examination of the configuration of one or more computing devices
- 40. A system as recited in claim 38, wherein the system definition model includes constraints that must be satisfied by the environment in order for the application to be run on the environment, and wherein the other system definition model includes other constraints that must be satisfied by the application in order for the application to be run on the environment.
- 41. A system as recited in claim 38, wherein the system further comprises:
an additional system definition model applicable across a lifecycle of an additional environment, wherein the lifecycle of the additional environment includes design of the additional environment, deployment of the additional environment, and management of the additional environment; wherein the additional environment is layered below the environment; and wherein the schema is further to dictate how functional operations within the additional system definition model are to be specified.
- 42. A method comprising:
defining an instance of a system definition model that is used during design of a system, as well as in conjunction with a system definition model runtime during deployment and management of the system.
- 43. A method as recited in claim 42, wherein the system definition model includes information describing how to deploy the system.
- 44. A method as recited in claim 42, wherein the system definition model includes information describing how to deploy the system in multiple different runtimes, and wherein the information includes different information describing how to deploy the system in each of the multiple different runtimes.
- 45. A method as recited in claim 42, wherein the system definition model includes constraints that must be satisfied by the runtime in order for the system to be run in the runtime.
- 46. A method as recited in claim 45, wherein the system definition model can be used to check whether the constraints are satisfied by the runtime during design of the system.
- 47. A method as recited in claim 42, wherein the system definition model includes information describing how to manage the system in the runtime.
RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Application No. 60/452,736, filed Mar. 6, 2003, entitled “Architecture for Distributed Computing System and Automated Design, Deployment, and Management of Distributed Applications”, which is hereby incorporated herein by reference.
[0002] This application is related to the following US patent applications (all of which are incorporated by reference herein):
[0003] U.S. patent application Ser. No. 10/382,942, filed on Mar. 6, 2003, titled “Virtual Network Topology Generation”, which is hereby incorporated herein by reference.
[0004] U.S. patent application Ser. No. 09/695,812, filed on Oct. 24, 2000, titled “System and Method for Distributed Management of Shared Computers”, which is hereby incorporated herein by reference.
[0005] U.S. patent application Ser. No. 09/695,813, filed on Oct. 24, 2000, titled “System and Method for Logical Modeling of Distributed Computer Systems”, which is hereby incorporated herein by reference.
[0006] U.S. patent application Ser. No. 09/695,820, filed on Oct. 24, 2000, titled “System and Method for Restricting Data Transfers and Managing Software Components of Distributed Computers”, which is hereby incorporated herein by reference.
[0007] U.S. patent application Ser. No. 09/695,821, filed on Oct. 24, 2000, titled “Using Packet Filters and Network Virtualization to Restrict Network Communications”, which is hereby incorporated herein by reference.
[0008] U.S. patent application Ser. No. 09/696,707, filed on Oct. 24, 2000, titled “System and Method for Designing a Logical Model of Distributed Computer System and Deploying Physical Resources According to the Logical Model”, which is hereby incorporated herein by reference.
[0009] U.S. patent application Ser. No. 09/696,752, filed on Oct. 24, 2000, titled “System and Method Providing Automatic Policy Enforcement in a Multi-Computer Service Application”, which is hereby incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60452736 |
Mar 2003 |
US |