A Distribution and System Compiler for Handling Heterogeneous Computer Site
Résumé
This document describes YaKa, a complete solution for deploying
operating systems on large computer site. Unlike most existing
tools Yaka is based on a compiled approach.
It provides a language allowing to describe a computer site as a whole
and at all levels: host hardware, systems to install on the hosts,
links between host systems, software generation.
Using this description a compiler generates automatically the systems
to be installed for each host and generates the network installation
servers. All generated systems are ready to use and fully operational
on their first run. All systems are generated in a single operation
so every component is generated with a complete knowledge
of all the other components of the system and a complete knowledge
of the network relationship between the hosts.
This ensures the coherence of each piece of software with the other
softwares of the system and with the environment of the host.
By reducing the amount of components needing to be installed and the
complexity of the startup scripts, this drastically decreases the
duration of system installation and the duration of the boot.
This allows to do statically a lot of verifications.
This allows to group tools together to provide abstract services.
The power of the language is also demonstrated by describing a
complete source based Linux distribution. The efficiency and
reliability have been demonstrated by its use for several years to
manage the teaching network our postgraduate school.(10 servers, 100
clients with heterogeneous hardware, different operating systems and
software).