Capturing and Importing Images#
You can modify the files on a booted compute node and use the
scyld-modimg --capture
command to capture those changes into the image.
You can capture the node into an existing image or into a new image. First,
confirm that the node being captured is idle to reduce the chance of capturing
an image in some intermediate state, then run the capture command.
For example, to capture node n0, run the following command:
scyld-modimg --capture n0 --set-name NewImage
This process may take several minutes. During that time the
scyld-pack-node
tool is executed on the compute node via the
scyld-nodectl exec
mechanism. The result is streamed back to
the scyld-modimg
command that then uploads it to the head node,
potentially replacing an existing NewImage contents.
The scyld-pack-node
tool
captures all files on the node's /
mount, but does not walk other
mounted file systems to ensure that any shared storage is not accidentally
captured.
You also need to create a boot config for this captured image. For example:
scyld-add-boot-config --image NewImg --boot-config NewBoot
Manual work is likely required to generalize the captured image as the process may capture details specific to the compute node. Due to this hazard, future ICE ClusterWare™ releases may expand what files are excluded during image capture.
RHEL 7 clones use a version of RPM too old to properly
interpret RHEL 9 packages, so if you are trying to create
an image, you may want to kickstart a diskful node and then use
scyld-modimg --capture
to create the image. You must comment out or delete
the node-specific lines in /etc/fstab created during the kickstarted
installation.