wiki:node_images

Version 6 (modified by msherman, 3 months ago) (diff)

--

Node Images

Summary

The imaging process is executed by the commands 'omf load' and 'omf save'

These provision a full disk image onto a set of nodes, and should work for any ext2/3/4 filesystem.

After saving an image from one node, and loading it onto another, it will appear to the user that a copy of the hard disk has been made. Specifically, this is a block based copy, not a file based one.

The baseline image is a recommended starting point, as this provisioning tool does not currently work with standard .iso or similar files, instead using a custom compressed .ndz format.

Security and Access

Images

Images you save are saved to the directory "/export/omf-images-5.4/"

They have permissions to be writable by your user, and readable by your group, and all logged in users. You can customize this via the chmod and chown commands. For example, you may want to restrict the ablility to load your images to only members of a specific group.

SSH

WARNING: For nodes that may be accessible externally, [mobile nodes, tunnels to an external subnet, etc] it is YOUR responsibility to set credentials to prevent remote login.

This can be done via the passwd command, and / or editing the file /etc/ssh/sshd_config The default baseline image allows passwordless based access as the user native, from RFC1918 private ip space: 10/8 172.16/12 192.168/16 Root login is disabled

Passwordless Sudo is enabled for the user native.

You should set up your own accounts, or customize your image's ssh config if you need something different.

List of pre-defined images

Image name Description username
baseline.ndz ubuntu18.04 + omf tools native
baseline_uhd.ndz baseline + uhd native
baseline_sdr.ndz baseline + uhd + gnuradio native
baseline_cuda.ndz baseline + cuda + drivers native
baseline_tensorflow.ndz baseline + cuda + drivers + tensorflow native
baseline_pytorch.ndz baseline + cuda + drivers + pytorch native

Baseline Image

The baseline image is a very bare install of Ubuntu 18.04 Bionic

You should customize it to you needs, and use that as a base for your experiments.

After saving an image, it will NOT track changes to the baseline, it is a copy, not a delta.

You may periodically want to re-create your experimental images when a new baseline has been relased, to support new hardware, or newer drivers, etc.

Baseline UHD

Baseline UHD has UHD images downloaded, and uhd3.14 installed from source.

Building a baseline image

  1. Use pxe or usb to install ubuntu netinstall iso
  2. Start it up, run update and dist-upgrade
  3. set netplan.io to dhcp on all physical ethernet interfaces
  4. add dhclient-exit-hook/hostname to dynamically set hostname based on DHCP
  5. add prepare.sh script to generalize prior to saving images