Orchestration (computing): Difference between revisions
defluff |
|||
Line 1: | Line 1: | ||
'''Orchestration''' is the automated [[Configuration management|configuration]], coordination, and management of computer systems and [[software deployment|software]].<ref name="Erl">''Thomas Erl''. Service-Oriented Architecture: Concepts, Technology & Design. ''Prentice Hall'', {{ISBN|0-13-185858-0}}.</ref> |
|||
{{multiple issues| |
|||
{{refimprove|date=September 2016}} |
|||
A [[:Category:Orchestration software|number of tools exist]] for automation of server configuration and management, including [[Ansible (software)|Ansible]], [[Puppet (software)|Puppet]], [[Salt (software)|Salt]] and [[Terraform (software)|Terraform]].<ref>{{cite web|url=https://blog.gruntwork.io/why-we-use-terraform-and-not-chef-puppet-ansible-saltstack-or-cloudformation-7989dad2865c|title=Why we use Terraform and not Chef, Puppet, Ansible, SaltStack, or CloudFormation|author=Yevgeniy Brikman|date=2016-09-26}}</ref> |
|||
{{expert needed|date=September 2016}} |
|||
}} |
|||
'''Orchestration''' is the automated arrangement, coordination, and management of computer systems, [[Middleware (distributed applications)|middleware]], and services.{{citation needed|date=September 2016}} |
|||
==Usage== |
==Usage== |
||
Orchestration is often discussed as having an inherent [[intelligence (trait)|intelligence]] or even implicitly [[Autonomic Computing|autonomic]] control, but those are largely aspirations or analogies rather than technical descriptions. In reality, ''orchestration'' is largely the effect of [[automation]] or systems deploying elements of [[control theory]].<ref name="Erl">''Thomas Erl''. Service-Oriented Architecture: Concepts, Technology & Design. ''Prentice Hall'', {{ISBN|0-13-185858-0}}.</ref> |
|||
Orchestration is often discussed in the context of [[service-oriented architecture]], [[Platform virtualization|virtualization]], [[provisioning]], [[Converged Infrastructure|converged infrastructure]] and '''dynamic datacenter''' topics. Orchestration in this sense is about aligning the business request with the applications, data, and infrastructure.<ref>{{Citation | title = A Business Resolution Engine for Cloud Marketplaces | series = IEEE Third International Conference on Cloud Computing Technology and Science (CloudCom) | year = 2011 | pages = 462–469 | publisher = [[IEEE]] | url = https://dx.doi.org/10.1109/CloudCom.2011.68 | doi = 10.1109/CloudCom.2011.68}}</ref> |
|||
A somewhat different usage relates to the process of coordinating an exchange of information through [[web service]] interactions. (See also [[service-oriented architecture]], and [[Web Service Choreography|web service choreography]].) Applications that decouple the orchestration layer from the service layer are sometimes called [[agile application]]s.{{citation needed|date=September 2016}} |
|||
A [[Business Process Execution Language#The BPEL language|distinction]] is often made between orchestration (a local view from the perspective of one participant) and [[Web Service Choreography|choreography]] (coordination from a global multi-participant perspective, albeit without a central controller).{{citation needed|date=September 2016}} |
|||
==Cloud computing== |
|||
[[Cloud computing]] introduces more-granular and specific meanings of the terms "workflows" and "processes" as used in different domains. Processes can be identified at both the level of inter-company business and the level of wide area network ("the cloud") operations. An "orchestrator" is understood to be the entity which manages complex cross-domain (system, enterprise, firewall) processes and handles exceptions. Since an orchestrator is valuable in fulfillment, assurance, and billing processes,<ref>{{cite web|title=What is Billing?|url=http://www.flexiant.com/2012/03/13/a-few-moments-on-cloud-billing/|accessdate=2012-09-12|date=2012-03-13|author=Bligh, Alex}}</ref> service-aware incarnations of an orchestrator should be capable of adjustments based on feedback from monitoring tools. At the most basic level, an orchestrator is a human.{{citation needed|date=September 2016}} |
|||
The main difference between a workflow "automation" and an "orchestration" (in the context of cloud computing) is that workflows are processed and completed as processes within a single domain for ''automation'' purposes, whereas ''orchestration'' includes a workflow and provides a directed action towards larger goals and objectives.<ref name="Erl" /> |
The main difference between a workflow "automation" and an "orchestration" (in the context of cloud computing) is that workflows are processed and completed as processes within a single domain for ''automation'' purposes, whereas ''orchestration'' includes a workflow and provides a directed action towards larger goals and objectives.<ref name="Erl" /> |
||
Line 21: | Line 11: | ||
In this context, and with the overall aim to achieve specific goals and objectives (described through quality of service parameters), for example, meet application performance goals using minimized cost<ref name="sc2011workflow">{{cite journal|last=Mao|first=Ming|author2=M. Humphrey|title=Auto-scaling to minimize cost and meet application deadlines in cloud workflows|journal=Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC2011)|year=2011|url=http://dl.acm.org/citation.cfm?doid=2063384.2063449|doi=10.1145/2063384.2063449|isbn=978-1-4503-0771-0}}</ref> and maximize application performance within budget constraints,<ref name="ipdps2013scaling">{{cite journal|last=Mao|first=Ming|author2=M. Humphrey|title=Scaling and Scheduling to Maximize Application Performance within Budget Constraints in Cloud Workflows|journal=Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing(IPDPS2013)|year=2013|url=http://dl.acm.org/citation.cfm?id=2511429|doi=10.1109/IPDPS.2013.61|isbn=978-0-7695-4971-2|pages=67–78}}</ref> |
In this context, and with the overall aim to achieve specific goals and objectives (described through quality of service parameters), for example, meet application performance goals using minimized cost<ref name="sc2011workflow">{{cite journal|last=Mao|first=Ming|author2=M. Humphrey|title=Auto-scaling to minimize cost and meet application deadlines in cloud workflows|journal=Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC2011)|year=2011|url=http://dl.acm.org/citation.cfm?doid=2063384.2063449|doi=10.1145/2063384.2063449|isbn=978-1-4503-0771-0}}</ref> and maximize application performance within budget constraints,<ref name="ipdps2013scaling">{{cite journal|last=Mao|first=Ming|author2=M. Humphrey|title=Scaling and Scheduling to Maximize Application Performance within Budget Constraints in Cloud Workflows|journal=Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing(IPDPS2013)|year=2013|url=http://dl.acm.org/citation.cfm?id=2511429|doi=10.1109/IPDPS.2013.61|isbn=978-0-7695-4971-2|pages=67–78}}</ref> |
||
==See also== |
|||
Cloud service orchestration consists of these elements:{{citation needed|date=September 2016}} |
|||
* [[Web Service Choreography|Choreography]] |
|||
* [[Configuration management]] |
|||
* ''Composing'' of architecture, tools, and processes used by humans to deliver a defined Service. |
|||
* [[Infrastructure as code]] |
|||
* ''Stitching'' of software and hardware components together to deliver a defined Service. |
|||
* [[Server provisioning]] |
|||
* ''Connecting'' and ''Automating'' of workflows when applicable to deliver a defined Service. |
|||
* [[Service-oriented architecture]] |
|||
Orchestration is critical in the delivery of cloud services for these reasons:{{citation needed|date=September 2016}} |
|||
* Cloud services are intended to scale-up arbitrarily and dynamically, without requiring direct human intervention to do so. |
|||
* Cloud service delivery includes fulfillment assurance and billing. |
|||
* Cloud services delivery entails workflows in various technical and business domains. |
|||
Examples of orchestration software include among others [[Kubernetes]] container orchestration software or [[HP operation orchestration]] software. |
|||
== References == |
== References == |
||
Line 41: | Line 24: | ||
[[Category:Business terms]] |
[[Category:Business terms]] |
||
[[Category:Computing terminology]] |
[[Category:Computing terminology]] |
||
[[Category:Orchestration software]] |
Revision as of 10:13, 17 December 2018
Orchestration is the automated configuration, coordination, and management of computer systems and software.[1]
A number of tools exist for automation of server configuration and management, including Ansible, Puppet, Salt and Terraform.[2]
Usage
Orchestration is often discussed in the context of service-oriented architecture, virtualization, provisioning, converged infrastructure and dynamic datacenter topics. Orchestration in this sense is about aligning the business request with the applications, data, and infrastructure.[3]
The main difference between a workflow "automation" and an "orchestration" (in the context of cloud computing) is that workflows are processed and completed as processes within a single domain for automation purposes, whereas orchestration includes a workflow and provides a directed action towards larger goals and objectives.[1]
In this context, and with the overall aim to achieve specific goals and objectives (described through quality of service parameters), for example, meet application performance goals using minimized cost[4] and maximize application performance within budget constraints,[5]
See also
- Choreography
- Configuration management
- Infrastructure as code
- Server provisioning
- Service-oriented architecture
References
- ^ a b Thomas Erl. Service-Oriented Architecture: Concepts, Technology & Design. Prentice Hall, ISBN 0-13-185858-0.
- ^ Yevgeniy Brikman (2016-09-26). "Why we use Terraform and not Chef, Puppet, Ansible, SaltStack, or CloudFormation".
- ^ A Business Resolution Engine for Cloud Marketplaces, IEEE Third International Conference on Cloud Computing Technology and Science (CloudCom), IEEE, 2011, pp. 462–469, doi:10.1109/CloudCom.2011.68
- ^ Mao, Ming; M. Humphrey (2011). "Auto-scaling to minimize cost and meet application deadlines in cloud workflows". Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC2011). doi:10.1145/2063384.2063449. ISBN 978-1-4503-0771-0.
- ^ Mao, Ming; M. Humphrey (2013). "Scaling and Scheduling to Maximize Application Performance within Budget Constraints in Cloud Workflows". Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing(IPDPS2013): 67–78. doi:10.1109/IPDPS.2013.61. ISBN 978-0-7695-4971-2.