/
Install SEAPATH

Install SEAPATH

Yocto Installer

The compilation and installation of the Yocto version of SEAPATH is entirely described on the GitHub repository seapath/yocto-bsp.

 

The build of Yocto based SEAPATH require significant ressources because the entire Linux distribution is built from the source code.

In order to build efficiently the SEAPATH project, we recommend not to use Virtual Machine. The Yocto project will ensure to multi-thread your build, so try to use a build machine with many CPU cores.

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 stable (v12 = bookworm at the time being), for each host with this repository here.

To generate the ISO in the repository, you should launch this command from the directory where you want the .iso file stored:

<path_to_build_debian_iso>/build_iso.sh

A lot of customization can be done, following the documentation on github: GitHub - seapath/build_debian_iso: Code to build a SEAPATH Debian ISO file using FAI Project

Configuration

In the usercustomization class file, you 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 choose

  • KEYMAP: Keyboard translation to choose

  • ROOTPW: Crypted password for root

  • STOP_ON_ERROR: FAI 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 created

  • USERPW: Crypted password for the user account to be created

  • usernameansible: ID of the ansible account to be created

  • myrootkey: SSH root user public key. If not set SSH root user connexion will be disabled.

  • myuserkey: SSH admin user public key.

  • ansiblekey: SSH ansible user public key.

  • apt_cdn: Debian registry to use. Change this if you have a local Debian registry mirror.

  • REMOTENIC: Network interface to be set

  • REMOTEADDR: IP address to be set on REMOTENIC with the mask

  • REMOTEGW: IP address for the gateway to be set on REMOTENIC

However, all host will be with the same IP address.

Disks

The disk is composed:

  1. (If the installation is in UEFI) EFI partition in /boot/efi with VFAT filesystem (512 MB).

  2. Boot partition in /boot with ext4 filesystem (500 B).

  3. Main partition with LVM configuration (30 GB). This partition is divided into 3 parts:

    1. Root partition in / with ext4 filesystem (7 GB).

    2. Log partition in /var/log with ext4 filesystem (1 GB).

    3. Swap partition (500 B).

This can be overriden in the build_debian_iso/usercustomization/disk_config/USERCUSTOMIZATION file.

 

More information is available on github: build_debian_iso/README.md at main · seapath/build_debian_iso

Related content

Deploy your application on SEAPATH
Deploy your application on SEAPATH
More like this
SEAPATH-Debian or SEAPATH-Yocto
SEAPATH-Debian or SEAPATH-Yocto
More like this
How to manage VM in SEAPATH
How to manage VM in SEAPATH
More like this
Update and Rollback
Update and Rollback
More like this
Maintainers
Maintainers
Read with this
Ansible configuration
Ansible configuration
More like this