GridKa School, 20-23 September 2004 www.eu-egee.org LCG Installation LCFGng Peer Hasselmeyer GridKa, FZK EGEE is a project funded by the European Union under contract IST-2003-508833
What is LCFGng? LCFGng Objects Configurations RPM Configuration Node Installation Process LCFGng Server Installation EGEE/LCG Administrative Procedures Outline GridKa School, 21 September 2004-2
Manual Installation Methods useful for small sites (~ 5-10 nodes) Automated Quattor, Rocks, LCFGng,... requires dedicated hardware for installation server fast installation of nodes, work required to install/maintain installation server GridKa School, 21 September 2004-3
LCFGng Local Configuration system next generation Developed by University of Edinburgh later on by the EDG (European Data Grid) project does two things: installation (RPMs) configuration Client/server architecture: LCFGng server configures an arbitrary number of clients each client node can have different set up GridKa School, 21 September 2004-4
LCFGng Objects Configuration is split into so-called objects not like objects in object-oriented programming languages rather: components e.g. network object: configures IP addresses etc. Objects are distributed among LCFGng server and clients Objects consist of three parts definitions values script GridKa School, 21 September 2004-5
Object definitions LCFGng Objects define possible configuration parameter names e.g. servers (object: ntp) Parameter values assign concrete values to parameters e.g. timehost.fzk.de Object script enacts actual configuration, e.g. creates files from parameters (/var/obj/conf/ntp.conf) starts external components (/usr/sbin/ntpd) located in /etc/obj/ GridKa School, 21 September 2004-6
LCFGng Objects Definition http Values validate XML XML mkxprof DB Script Actions Usually, you change only these OS configuration files LCFGng Server Client GridKa School, 21 September 2004-7
Configurations Based on C preprocessor uses #include, #ifdef directives etc. componentize configurations with includes machine A machine B HW X CE Batch System M Globus Monitoring GridKa School, 21 September 2004-8
Configurations Basic building block: assignment Object parameter a parameter b parameter c value x value y value z notation: object.parameter value e.g. ntp.servers timehost.fzk.de Usually assignment once, reconfiguration: +ntp.servers lcfg.fzk.de GridKa School, 21 September 2004-9
Lists possible Configurations network.interfaces eth0 eth1 network.ipaddress_eth0 192.108.45.38 network.ipaddress_eth1 10.33.1.138 List operators EXTRA(network.interfaces) eth2 PREPEND(network.interfaces,eth2) DELETE(network.interfaces,eth2) GridKa School, 21 September 2004-10
Configurations Human readable configurations are validated and translated to XML by mkxprof XML is transferred from LCFGng server to client via HTTP Default configurations for all LCG node types can be downloaded from CERN deployment repository just customize the example configurations GridKa School, 21 September 2004-11
RPM Configuration Software packages to be installed defined by list of RPMs RPM lists handled by C preprocessor #include allows componentization CE System Globus Monitoring GridIce Ganglia GridKa School, 21 September 2004-12
RPM Configuration Basic building block: RPM name e.g. kernel-smp-2.4.20-30.7.legacy/i686 Modeled as LCFGng object (updaterpms) points to master list, e.g. CE actual RPM lists outside the scope of regular LCFGng methods! RPMs and RPM lists distributed via NFS from LCFGng server Lists also downloadable from CERN deployment repository GridKa School, 21 September 2004-13
Node Configuration Get default configuration files Customize them Call mkxprof Installation: boot client node Reconfiguration: wait client node notified about configuration changes (rdxprof daemon on client node, log file / var/obj/log/client) changes are automatically enacted by LCFGng objects GridKa School, 21 September 2004-14
Node Installation Process Boot a kernel (PXE, DHCP, TFTP) Mount root file system ( LiveOS, NFS: / opt/local/linux/nginstallroot/7.3) Start /etc/rc_install Get network configuration (DHCP) Call /etc/obj/client install Get LCFGng configuration (XML via HTTP) Synchronize clock (NTP) Mount RPMs and RPM lists (NFS: /opt/local/linux/7.3) Call /etc/obj/install install Format harddisk Install base RPMs Write configuration (LCFG objects) GridKa School, 21 September 2004-15
Node Installation Process Reboot (from harddisk) Call /etc/obj/boot start /etc/obj/nfsmount: mount RPMs and RPM lists (NFS) /etc/obj/updaterpms: install node specific RPMs Write configuration (LCFG objects) Reboot (from harddisk) Don t forget the manual configuration steps (from the installation guide)! GridKa School, 21 September 2004-16
LCFGng Server Services DHCP server (PXE, profile URL) TFTP server (PXE) NFS server (RPMs and RPM lists) HTTP server (XML profiles) NTP server (clock synchronization) GridKa School, 21 September 2004-17
LCFGng Server Requirements LiveOS: root file system for first boot LCFGng object definitions LCFGng configurations configurations in XML format How is all this set up? GridKa School, 21 September 2004-18
Traditional LCFGng Server Installation Take a machine with installed OS (RH7.3) Install LCFGng setup packages Check out an LCG tag, e.g. LCG2_2_0 contains default configuration files and RPM lists Download RPMs (updaterep) Install LCFGng server packages (lcfgng_server_update.pl) Build LiveOS (lcfgng_installroot.pl) Configure network services GridKa School, 21 September 2004-19
Joining LCG Nice cluster installed what now? Subscribe to the LCG rollout mailing list hopefully done before Contact your local ROC (EGEE) maybe your P-site / tier (x-1) center works as well (LCG) send them your registration form (see install notes, appendix G), copy to support-lcg-deployment@cern.ch Get access to the GOC-DB to enter your resources for monitoring GridKa School, 21 September 2004-20
GOC Monitoring GridKa School, 21 September 2004-21
GOC Database GridKa School, 21 September 2004-22
Join a VO, probably dteam Joining LCG dteam: system administrators, supported by all LCG sites Have ROC test your system no agreed certification procedure yet Announce availability of resources to rollout list and to CERN deployment support will put you into test zone run additional certification tests on your site GridKa School, 21 September 2004-23
LCFGng Server Installation Take a machine with installed OS (RH7.3) Check out an LCG tag, e.g. LCG2_2_0 contains default configuration files and RPM lists Install cg-lcfg-go RPM Download RPMs (updaterpmcache.pl) called from cg-lcfg-go -d Install LCFGng server packages (cg-lcfg-go -l) Build LiveOS (create-nginstallroot-rh73) Configure network services GridKa School, 21 September 2004-24
Links LCFGng server installation guide: http://lcgdeploy.cvs.cern.ch/cgi-bin/lcgdeploy.cgi/ lcg2/docs/lcfgng_server_install.txt LCG Releases: http://grid-deployment.web.cern.ch/ grid-deployment/cgi-bin/index.cgi?var=releases LCG configuration repository: http://lcgdeploy.cvs.cern.ch/cgi-bin/lcgdeploy.cgi/ LCG User Guide: http://lcgdeploy.cvs.cern.ch/cgi-bin/lcgdeploy.cgi/ lcg-docs/lcg2userguide/lcg-2-userguide.pdf This presentation: http://savannah.fzk.de/websites/fzk/gridkaschool/ admin-course/slides/ GridKa School, 21 September 2004-25
Links Rollout list: http://www.listserv.rl.ac.uk/archives/lcg-rollout.html GOC Monitoring: http://goc.grid-support.ac.uk/gridsite/gocmain/monitoring/ GOC trouble shooting wiki: http://goc.grid.sinica.edu.tw/gocwiki/troubleshootinghistory GridPP support FAQ: http://www.gridpp.ac.uk/tb-support/faq/ All these and more can be found at http://lcg.fzk.de/ GridKa School, 21 September 2004-26
Organization Build 6 teams with ~4 people each red, orange, yellow, brown, blue, green top level domain:.grid 6 * 5 machines + rainbow.grid all machines are labeled on the back 2 rooms upstairs for 3 teams each GridKa School, 21 September 2004-27