90 likes | 112 Views
AII v2. Michel Jouvin LAL, Orsay jouvin@lal.in2p3.fr http://grif.fr Grid Administration Training Montpellier, February 2009, 4-5. Outline. Why AII v2 ? How to use it AII Configuration New features Disk partitioning Hooks AII v1 to v2 migration. Why AII v2 ?.
E N D
AII v2 • Michel Jouvin • LAL, Orsay • jouvin@lal.in2p3.fr • http://grif.fr • Grid Administration Training • Montpellier, February 2009, 4-5
Outline • Why AII v2 ? • How to use it • AII Configuration • New features • Disk partitioning • Hooks • AII v1 to v2 migration AII v2
Why AII v2 ? • AII v1 had severe limitations • Based on pan-template templating system, very difficult to maintain • Kickstart configuration template • File system configuration was very complex and new device type like SW or HW raid were difficult to describe • Not modular enough with PXE, DHCP… configuration mixed together • AII v2 design principles • Direct access to XML profile in the same way as a component (using the same API) • Distinction between file systems and block devices • A block device can be a JBOD, a HW/SW raid, LVM… • A file system uses a block device • Based on ncm-lib-blockdevices, also used by ncm-filesystem • aii-shellfe is a front-end for various plugins, according to configuration (aii-pxelinux, aii-kernel…) • Extensible through hooks AII v2
How to Use It ? • AII is only one command: aii-shellfe • --configure node: add DHCP and TFTP configuration for PXE, produce a Kickstart configuration file from node profile • --install node: at next PXE boot, start the OS installer • --boot node: at next PXE boot, boot from local disk • --remove node: remove node from DHCP/TFTP config • --rescue node: at next PXE boot, boot a rescue image • Require installation of a rescue image • A node is typically configured (in the BIOS) to always boot PXE • aii-shellfe allows to control what happens at next boot • At the end of initial installation, automatically switch from --install to --boot AII v2
AII Configuration • AII configuration in 2 files under /etc/aii • aii-shellfe.conf: location where to write Kickstart configuration files and URL where to get XML profiles • aii-dhcp.conf: location of DHCP configuration file maintained by Quattor, command to restart DHCPD • Config file may be a dedicated file included in main DHCPD config • Command to restart DHCPD may synchronize config with a remote node and restart DHCPD on a remote machine • Add support for an OS version for PXE • Copy a few files from the OS distribution in the same directory as pxelinux.cfg • Ensure tftpd is started with the appropriate root directory definition (option –s) AII v2
Disk Partionning • New schema based on a distinct configuration of block devices and file systems • Block devices: any combination of HW/SW raid, JBOD, LVM… • File systems: how block devices are used • New schema is very flexible but also more complex… • A generic template to configure file systems and associated block devices: standard/filesystem/config • Operations to do a almost always the same… • Describe a default layout with all possible block devices and file systems • Use variables to enable/disable them, define their size… • Default layout is a site-specific template whose name is passed in FILESYSTEM_LAYOUT_CONFIG_SITE • See examples for a basis AII v2
Hooks • Allow to add every required action at different point in installation • E.g. install machine certificate during machine insall • Several hook point: pre, post… • A hook is a Perl script that uses the component API • See man aii-hooks • Hook declaration example: • type begrids_hook = { • "module" : string • "more_stuf": more_field_types • }; • bind "/system/aii/hooks/post_reboot/0" = begrids_hook; • "/system/aii/hooks/post_reboot" = list ( • nlist ("module", "begrid", ...) • ); AII v2
AII v1 to v2 Migration • v1 and v2 configuration are not compatible • Kickstart template is not use anymore • On the server… • Can be removed (/usr/lib/aii/osinstall) • Templates: AII schema has changed with a real schema defined instead of a schema permitting any key/value pair • Should be transparent when using AII variables introduced at the end of AII v1 • No reason to use direct configuration path anymore • Disk partitioning and file systems use a new schema and must be completely rewritten • Use new generic template to configure partitioning with variables if possible AII v2
Useful Links • Quattor QWG wiki • https://trac.lal.in2p3.fr/LCGQWG • Presentation at Bologna’s Quattor Workshop • http://indico.cern.ch/getFile.py/access?contribId=18&sessionId=2&resId=1&materialId=slides&confId=28976 AII v2