Yocto
- TODO
Debian Installer
To install the cluster, you need to generate an ISO for each host with this repository here.
To generate the ISO in the repository, you should launch these below commands:
cp srv_fai_config/class/SEAPATH.var.defaults srv_fai_config/class/SEAPATH.var $EDITOR srv_fai_config/class/SEAPATH.var ./build_iso.sh
See the below section for more details on the configuration file.
Configuration
In the configuration file, you must 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 rootSTOP_ON_ERROR
: TODOMAXPACKAGES
: TODOusername
: ID of the user account to be createdUSERPW
: Crypted password for the user account to be createdusernameansible
: ID of the ansible account to be createdmyrootkey
: TODOmyuserkey
: TODOansiblekey
: TODOapt_cdn
: TODOREMOTENIC
: 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.
Prerequisite
When the host is installed, the ansible/playbooks/cluster_setup_prerequisdebian.yaml
need to launch to finish the installation.
The inventory must define these variables to run the playbook:
apply_network_config
: Boolean to apply the network configurationadmin_ip_addr
: IP address for SNMPcpumachinesnort
: Range of allowed CPUs for no RT machinescpumachines
: Range of allowed CPUs for machines (RT and no RT)cpumachinesrt
: Range of allowed CPUs for RT machinescpuovs
: Range of allowed CPUs for OpenVSwitchcpusystem
: Range of allowed CPUs for the systemcpuuser
: Range of allowed CPUs for the userirqmask
: Set theIRQBALANCE_BANNED_CPUS
environment variable, seeirqbalance
manuallogstash_server_ip
: IP address forlogstash-seapath
alias in/etc/hosts
main_disk
: Main disk device to observe his temperatureworkqueuemask
: The negation of theirqmask
(= ~irqmask
)
In this part, the playbook define the scheduling and the prioritization (see the section).
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).
- Root partition in
This can be changed in the build_debian_iso/srv_fai_config/disk_config/
directory. There is always 2 versions (one in Legacy BIOS and an other in UEFI mode with the suffix "_EFI
").
Virtual cluster
On the host, you must set these sysctl settings:
net.bridge.bridge-nf-call-arptables = 0 net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0
You must define 3 network interfaces on each host of your cluster.
- One interface connects to a virtual network in NAT mode
- Two interfaces connect to two virtual networks with a MTU set to 9000 (it's to simulate an ethernet cable between two machines)