RFC: Classes list for FAI/Lenny
The Etch installation scheme with our FAI server used one class for each type of node (NODE_COMPUTE, STORAGE, ...) but this is somehow inflexible when a mixture of classes is needed and also quite error-prone in terms of duplicated package lists. Thus, I propose to move to a modular FAI class concept, where in the end a larger number of dedicated classes compose the final class.
Service Classes
This is a sample list of possible class names:
Class name |
purpose / packages in this class (example) |
ARECA_4DISK_750GB_RAID6 |
perform any necessary actions for creating a 4 disk RAID6 array with 750 GB disks on a ARECA controller |
ATLAS_CONDOR_MASTER |
master node for Condor |
ATLAS_CONDOR_NODE |
Condor compute node |
ATLAS_CONDOR_SUBMIT |
submission only head nodes (remote submission) - if needed |
ATLAS_MAIL_CLIENT |
set-up this machine as a forward only mail client |
ATLAS_MAIL_SERVER |
everything about mail server in the Atlas framework |
ATLAS_NIS_CLIENT |
set-up for Atlas NIS clients |
ATLAS_NIS_SERVER |
set-up for our Atlas NIS server |
DEFAULT |
bare minimum list needed everywhere (vim, emacs, apt-file, htop, sysstat, iostat, ...) |
DEVEL |
install development packages (man pages, compilers, debugging tool, ...) |
EXPOSED |
this host is exposed and needs, iptables, apticron, security.debian.org,... |
hostname |
remember that the class hostname is always available |
LDG |
install LDG related things (ldg-server/client)? |
LSC |
lscsoft related stuff |
MATLAB_BATCH |
install only matalb stuff for compute nodes |
MATLAB_INTERACTIVE |
install interactive matlab environment |
SQL_MYSQL |
install mysql server |
SQL_POSTGRESQL |
install postgresql server |
WEBSERVER |
install and configure basic apache |
I guess many more classes are possible, but you get the idea.
Host Classes
Unless FAI has its own way of creating dependency between classes, we probably need to write a wrapper script which maps a host class to service classes, e.g.
Host Class |
Service classes |
ATLAS_COMPUTENODE |
DEFAULT ATLAS_MAIL_CLIENT ATLAS_NIS_CLIENT ATLAS_CONDOR_NODE LSC MATLAB_BATCH ... |
--
CarstenAulbert - 06 Feb 2009