Chapter 7. Volumes

A container’s temporary filesystem is isolated from any other container or Pod and is not persisted beyond a Pod restart. A Pod can define a Volume and mount it to a container.

Ephemeral Volumes exist for the lifespan of a Pod. They are useful if you want to share data between multiple containers running in the Pod. Persistent Volumes preserve data beyond the lifespan of a Pod. They are a good option for applications that require data to exist longer, e.g., in the form of storage for a database-driven application. In this chapter, we’ll exercise the use of different Volumes types in a Pod.

Working with Storage

Applications running in a container can use the temporary filesystem to read and write files. In case of a container crash or a cluster/node restart, the kubelet will restart the container. Any data that had been written to the temporary filesystem is lost and cannot be retrieved. The container effectively starts with a clean slate.

There are many uses cases for wanting to mount a Volume in a container. We’ll see one of the most prominent use cases in Chapter 8: using an ephemeral Volume to exchange data between a main application container and a sidecar. Figure 7-1 illustrates the differences between the temporary filesystem of a container and the use of a Volume.

Figure 7-1. A container using the temporary filesystem ...

Get Certified Kubernetes Application Developer (CKAD) Study Guide, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.