1 What is an orchestrator?

 

This chapter covers

  • The evolution of application deployments
  • Classifying the components of an orchestration system
  • Introducing the mental model for the orchestrator
  • Defining requirements for our orchestrator
  • Identifying the scope of our work

Kubernetes. Kubernetes. Kubernetes. If you’ve worked in or near the tech industry in the last five years, you’ve at least heard the name. Perhaps you’ve used it in your day job. Or perhaps you’ve used other systems such as Apache Mesos or HashiCorp’s Nomad.

In this book, we’re going to build our own Kubernetes, writing the code ourselves to gain a better understanding of just what Kubernetes is. And what Kubernetes is—like Mesos and Nomad—is an orchestrator.

When you’ve finished the book, you will have learned the following:

  • What components form the foundation of any orchestration system
  • How those components interact
  • How each component maintains its own state and why
  • What tradeoffs are made in designing and implementing an orchestration system

1.1 Why implement an orchestrator from scratch?

1.2 The (not so) good ol’ days

1.3 What is a container, and how is it different from a virtual machine?

1.4 What is an orchestrator?

1.5 The components of an orchestration system

1.5.1 The task

1.5.2 The job

1.5.3 The scheduler

1.5.4 The manager

1.5.5 The worker

sitemap