Kubernetes Background
Kubernetes is an orchestrator. For the most part, it orchestrates containerized cloud-native apps. However, there are projects that enable it to orchestrate things such as virtual machines and functions (serverless workloads). All of this adds up to Kubernetes being the de facto orchestrator for cloud-native applications.
That's great, but what do we mean when use terms like orchestrator and cloud-native?
An orchestrator is a backend system that deploys and manages applications. This means it helps you deploy your application, scale it up and down, perform updates and rollbacks, and more. If it's a good orchestrator, it does this without you having to supervise.
A cloud-native application is a business application that is made from a set of small independent services that communicate and form a useful application. As the name suggests, this design allows it to cope with cloud-like demands and run natively on cloud platforms. As an example, cloud...