nodes.conf) becomes an expressive metadata store for arbitrary cluster node configuration.
System overlays vs. runtime overlays
A node or profile can configure overlays in two ways:- System overlays are applied only during boot, alongside the node image. Use them for configuration that is baked in at provisioning time.
- Runtime overlays are also applied periodically while the node is running. Use them for configuration that must stay current without a reboot (for example, SSH authorized keys or
/etc/hosts).
Distribution overlays vs. site overlays
Warewulf distinguishes between two kinds of overlays:- Distribution overlays are shipped with Warewulf and stored at
/usr/share/warewulf/overlays/(path may vary by distribution and configuration). - Site overlays are created or added locally and stored at
/var/lib/warewulf/overlays/. A site overlay always takes precedence over a distribution overlay with the same name.
Any modification to a distribution overlay using
wwctl automatically creates a site overlay cloned from the distribution overlay. Distribution overlays themselves are never modified.Overlay directory structure
An overlay is a directory containing a singlerootfs/ subdirectory that represents the root of the cluster node’s file system.
.ww are Go templates. When an overlay is built, template files are rendered per-node and the .ww suffix is dropped — so etc/issue.ww becomes /etc/issue on the node.
Listing overlays
Adding overlays to nodes and profiles
Assign overlays to a profile or node using the--system-overlays and --runtime-overlays flags:
Building overlays
Overlays are compiled into compressed images for distribution to cluster nodes. Each node typically has two overlay images — one for system overlays and one for runtime overlays.--workers to control parallelism:
Overlay autobuild
Warewulf can automatically rebuild overlays when changes are detected. This is controlled by theautobuild overlays setting in warewulf.conf:
Autobuild is not 100% reliable. Manual overlay builds are often necessary, particularly after changes to overlay templates or node configuration.
Creating and modifying overlays
Creating a new overlay
Importing files
Import files from the Warewulf server into an overlay:/etc/issue from the server into the issue overlay, recreating its parent directory structure.
Editing files
Edit an overlay file interactively:Showing overlay contents
Inspect the raw content of an overlay file:.ww), render the output as it would appear for a specific node:
It is not possible to delete files using an overlay. Overlay files can only be added or modified.