...
Here is a discussion on the Yocto Project mailing list: https://lists.yoctoproject.org/g/yocto/topic/72047879#48815
Tips for building
About 250GB is needed for building SEAPATH.
A USB attached storage may be too slow to be practical for a successful build.
Ensure you use an ext 2/ ext3 / ext4 filesystem for the build directory. NTFS will not work.
Watch out with only manually deleting the /tmp/work directory. Instead delete the whole tmp directory.
When deleting the tmp, it may take a very long time, and might cause
rm -rf
to fail with an error.find . -delete
will work better, as it will not try to index all files before deleting them.
Debian Installer
To install the cluster, you need to generate an ISO, based on Debian 11stable (v12 = bookworm at the time being), for each host with this repository here.
To generate the ISO in the repository, you should launch these below commandsthis command from the directory where you want the .iso file stored:
Code Block | ||
---|---|---|
| ||
cp srv<path_fai_config/class/SEAPATH.var.defaults srv_fai_config/class/SEAPATH.var $EDITOR srv_fai_config/class/SEAPATH.var .to_build_debian_iso>/build_iso.sh |
See the below section for more details on the configuration file.A lot of customization can be done, following the documentation on github: https://github.com/seapath/build_debian_iso#customization
Configuration
In the configuration usercustomization class file, you must can define these variables:
FAI_ALLOW_UNSIGNED
: Boolean to allow installation of packages from unsigned repositories (0 => true)UTC
: Boolean to set the system clock to UTC (possible values: yes or no)TIMEZONE
: Time to chooseKEYMAP
: Keyboard translation to chooseROOTPW
: Crypted password for root
TODOSTOP_ON_ERROR
:MAXPACKAGES
: TODOFAI error threshold. In FAI each error has a score. If the error is greater than
STOP_ON_ERROR
then the installation will fail. The default is 700.MAXPACKAGES
: Max packages installed at a time. If you have a small /var partition and you encounter error, try a reduce this variable number.username
: ID of the user account to be createdUSERPW
: Crypted password for the user account to be createdusernameansible
: ID of the ansible account to be created
TODOmyrootkey
:SSH root user public key. If not set SSH root user connexion will be disabled.
TODOmyuserkey
:SSH admin user public key.
TODOansiblekey
:SSH ansible user public key.
TODOapt_cdn
:Debian registry to use. Change this if you have a local Debian registry mirror.
REMOTENIC
: Network interface to be setREMOTEADDR
: IP address to be set onREMOTENIC
with the maskREMOTEGW
: IP address for the gateway to be set onREMOTENIC
However, all host will be with the same IP address.
Disks
The disk is composed:
(If the installation is in UEFI) EFI partition in
/boot/efi
with VFAT filesystem (512 MB).Boot partition in
/boot
with ext4 filesystem (500 B).Main partition with LVM configuration (30 GB). This partition is divided into 3 parts:
Root partition in
/
with ext4 filesystem (7 GB).Log partition in
/var/log
with ext4 filesystem (1 GB).Swap partition (500 B).
This can be changed overriden in the build_debian_iso/srv_fai_configusercustomization/disk_config/
directory. There is always 2 versions (one in Legacy BIOS and an other in UEFI mode with the suffix "_EFI
").USERCUSTOMIZATION
file.
More information is available on github: https://github.com/seapath/build_debian_iso/blob/main/README.md