Download - Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef
![Page 1: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/1.jpg)
Don’t Orchestrate, Choreograph!
Julian DunnProduct Manager, Chef
![Page 2: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/2.jpg)
What is orchestration?
![Page 3: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/3.jpg)
An ordered set of operations
Across a set of independent machines
Connected to an orchestrator only via a network.
![Page 4: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/4.jpg)
![Page 5: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/5.jpg)
Humans acting on Visio acting on machines
Humans acting on code acting on machines
![Page 6: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/6.jpg)
An ordered set of operations
Defined in code
Across a set of independent machines
Connected to an orchestrator only via a network.
![Page 7: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/7.jpg)
![Page 8: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/8.jpg)
tasks: - name: remove host from LB shell: /usr/local/bin/remove_host {{ ansible_hostname }} delegate_to: loadbalancer.example.com
- name: deploy code git: repo=http://github.com/foo/bar.git dest=/var/www/html/ notify: - restart apache
- name: add host to LB shell: /usr/local/bin/add_host {{ ansible_hostname }} delegate_to: loadbalancer.example.com
![Page 9: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/9.jpg)
![Page 10: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/10.jpg)
![Page 11: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/11.jpg)
![Page 12: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/12.jpg)
Failure: Hard to Recover From
![Page 13: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/13.jpg)
Orchestrator is a SPOF
![Page 14: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/14.jpg)
Huge Cognitive Load
![Page 15: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/15.jpg)
Mark Burgess: Promise Theory
![Page 16: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/16.jpg)
![Page 17: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/17.jpg)
“You Will Feed My Cat”
![Page 18: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/18.jpg)
“Do You Promise To Feed My Cat?”
![Page 19: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/19.jpg)
“Obligations are far from being a reliable tool for ensuring compliance. If a law-giver wanted to ensure the compliance of an agent, a better strategy would be to obtain a promise from the agent and to convince it to view the intention as a commitment since the law-giver could never know whether the agent had indeed committed to the body of the obligation.”
- Bergstra & Burgess, “A Static Theory of Promises”
![Page 20: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/20.jpg)
Trying to make promises about the behavior of the other nodes
![Page 21: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/21.jpg)
Autonomous Actors that:
• Make progress towards promised desired state• Expose interfaces to allow others to verify promises• Can promise to take certain behaviors in the face of failure of others
What is Choreography?
![Page 22: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/22.jpg)
![Page 23: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/23.jpg)
Introducing Habitat• Application automation with the app• Portable, immutable packages• Masterless architecture• Built-in runtime configuration• Built-in service discovery• Built-in security• Exports to Docker containers• Fully open-source
https://www.habitat.sh/
![Page 24: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/24.jpg)
Conclusions
Don’t build or choose things requiring orchestrationBuild choreography into systemsMake management systems fleet-aware, not node-aware
![Page 25: Orchestration? You Don't Need Orchestration. What You Want Is Choreography by Julian Dunn, Chef](https://reader038.vdocument.in/reader038/viewer/2022110108/58ce75731a28abdc578b6673/html5/thumbnails/25.jpg)
Thank you!