Chapter 10. Kubernetes Engine: managed Kubernetes clusters
This chapter covers
- What containers, Docker, and Kubernetes do
- How Kubernetes Engine works and when it’s a good fit
- Setting up a managed Kubernetes cluster using Kubernetes Engine
- Upgrading cluster nodes and resizing a cluster
A common problem in software development is the final packaging of all your hard work into something that’s easy to work with in a production setting. This problem is often neglected until the last minute because we tend to keep our focus on building and designing the software itself. But the final packaging and deployment are often as difficult and complex as the original development. Luckily many tools are available to address this problem, one of which relies on the concept of a container for your software.
A container is an infrastructural tool aimed at solving the software deployment problem by making it easy to package your application, its configuration, and any dependencies into a standard format. By relying on containers, it becomes easy to share and replicate a computing environment across many different platforms. Containers also act as a unit of isolation, so you don’t have to worry about competing for limited computing resources—each container is isolated from the others.