Optimizing ephemeral storage

    You are viewing documentation for a release that is no longer supported. The latest supported version of version 3 is [3.11]. For the most recent version 4, see

    Pods use ephemeral storage for their internal operation such as saving temporary files. The lifetime of this ephemeral storage does not extend beyond the life of the individual pod, and this ephemeral storage cannot be shared across pods.

    Prior to OKD 3.10, ephemeral local storage was exposed to pods through the container’s writable layer, logs directory, and EmptyDir volumes. Issues related to the lack of local storage accounting and isolation include the following:

    • Pods cannot request guaranteed local storage.

    • Local storage is a best effort resource.

    Ephemeral storage is still exposed to pods in the same way, but there are new methods for implementing requests and limits on pods’ consumption of ephemeral storage.

    General storage guidelines

    A node’s local storage can be broken into primary and secondary partitions. Primary partitions are the only ones you can use for ephemeral local storage. There are two supported primary partitions, root and runtime.

    • Root

      Root partitions hold the kubelet’s root directory, by default, and directory. You can share this partition among pods, the operating system, and OKD system daemons. Pods can access this partition by using EmptyDir volumes, container logs, image layers, and container writable layers. OKD manages shared access and isolation of this partition.

    • Runtime

      Runtime partitions are optional partitions you can use for overlay file systems. OKD attempts to identify and provide shared access along with isolation to this partition. This partition contains container image layers and writable layers. If the runtime partition exists, the partition does not hold any image layer or writable layers.