When not in use, Domino project files are stored and versioned in the Domino blob store. When a Domino execution is started from a project, the project files are copied to a Kubernetes persistent volume (PV) that is attached to the compute node and mounted in the Run.
You can run the following command to see all current PVs, sorted by last-used:
kubectl get pv --sort-by='.metadata.annotations.dominodatalab.com/last-used'
When a user starts a new Job, Domino assigns a new execution pod to the cluster. This pod will have an associated Persistent Volume Claim (PVC) which defines what type of storage it requires from Kubernetes.
If an idle PV exists that matches the PVC, Kubernetes mounts that PV on the node it assigns to host the pod, and the Job or Workspace starts. If an appropriate idle PV does not exist, Kubernetes creates a new PV according to the storage class.
When the user completes their Job or Workspace, the PV data is written to the Domino File System, and the PV unmounts and sits idle until it is either reused for the user’s next Job or until garbage collection. By reusing PVs, users who are actively working in a project do not have to repeatedly copy data from the blob store to a PV.
A Job only matches with a fresh PV or one previously used by that project. PVs are not reused between projects.
Workspace volumes are handled differently than volumes for Jobs. Workspaces are potentially long-lived development environments that users will stop and resume repeatedly without writing data back to the Domino File System each time. As a result, the PV for the Workspace is a similarly long-lived resource that stores the user’s working data.
These workspace PVs are durably associated with the durable Workspace they are initially created for. Each time that Workspace is stopped, the PV is detached and preserved so that it’s available the next time the user starts the Workspace. When the Workspace starts again, it reattaches its PV and the user will see all their working data saved during the last session.
The contents of the project files in the workspace PV will be written back to the Domino File System only when a user chooses to initiate a sync. A durable workspace PV will only be deleted if the user deletes the associated workspace.