150 likes | 238 Views
LCFGng configuration examples. Updated 10/2002 German.Cancio@cern.ch. LCFG Configuration examples Component configurations RPM configurations. LCFGng configuration: examples 1. Component configuration files. LCFGng configuration: Components.
E N D
LCFGng configuration examples Updated 10/2002 German.Cancio@cern.ch
LCFG Configuration examples • Component configurations • RPM configurations
LCFGng configuration: examples1. Component configuration files
LCFGng configuration: Components • The components are installed on the client in the following directory: /etc/obj • Each component has a man page describing its functionality and configuration needs. • man edg-lcfg-<Component> for EDG created or modified components • man lcfg-<component> for ‘untouched’ LCFG components. • On the server, a resource definition file exists for each component, which may also contain default values. • The resource definition files (.def) are found on the client under /usr/lib/lcfg/defaults/client • These defaults can be overwritten by the .h template files
LCFGng configuration: components (cont.) • Once the configuration of the node is ready, it has to be validated and compiled into an XML profile, which is then read by the clients. • The compilation/validation is done by mkxprof. • Mkxprof is run like: /usr/sbin/mkxprof –v <client-config-file>, eg. /usr/sbin/mkxprof –v testbed0314 • Mkxprof will inform if there were warnings or errors during the compilation. • Mkxprof generates the XML file into the following directory: /var/obj/conf/server/web/profiles/<dnsdomain>/
LCFGng configuration: components (cont) • Mkxprof can also generate a HTML status page: http://<mylcfgserver>/status/ http://<mylcfgserver>/details • Unfortunately, mkxprof has to be run with the –s option for updating the HTML status page, and no output is produced on the terminal ;-( • /usr/sbin/mkxprof –v –s testbed0314 • Alternatively, mkxprof can be started from an init.d script, and the compilations can be run by running • /sbin/service mkxprofd reload
LCFGng configuration: components (cont) Most commonly checked/modified configuration entries for basic components: Auth component: auth.xxx • The auth component manages the /etc/password file. • Most used resources: • auth.rootpwd encrypted root password • auth.users space separated list of user login names • auth.userpwd_<userX> encrypted password for <userX> • auth.userhome_<userX> home directory for <userX> • auth.usergroup_<userX> group names or numbers for <userX> • auth.usershell_<userX> shell for <userX> • auth.usercomment.<userX> Comment field in passwd file (usually user full name) • auth.groups space separated list of groups
LCFGng configuration: components (cont) Profile component: profile.xxx • The profile component manages the list of components included on the client node. • Most used resource: • profile.components space separated list of components to be included on the client • profile.version_<component> “XML profile version” (usually: 1) Boot component: boot.xxx • The boot component manages the list of components started on boot time on the client node. • Most used resource: • boot.services space separated list of components to be started (in order)
LCFGng configuration: components (cont) Client object: client.xxx • The client component configures the LCFGng client software running on the client. • Most used resources: • client.url URL pointing to where to fetch XML profile from server • client.poll time interval between server configuration polls
LCFGng configuration: components (cont) Network component: network.xxx • The network component configures the network interfaces. • Most used resources: • network.interfaces known interfaces (eg. eth0, lo) • network.ipaddr_<interface> IPv4 address for <interface> • network.hostname_<interface> name associated with <interface> (eg. localhost for lo, myhost for eth0) • network.broadcast_<interface> broadcast address for <interface> • network.netmask_<interface> netmask for <interface> • network.gateway gateway host • network.nameservers space separated list of name servers
LCFGng configuration: components (cont) Nfsmount component: nfsmount.xxx • The nfsmount component configures the NFS client. • Most used resources: • nfsmount.nfsmount list of mount “elements” • nfsmount.nfsdetails_<elementX> mount information (mount point, server, details)
LCFGng configuration: components (cont) Updaterpms component: updaterpms.xxx • The updaterpms component configures the RPM package manager agent, updaterpms. • Most used resources: • updaterpms.mail email address for failure notifications • updaterpms.rpmdir colon-separated list of directories where to search for RPM’s (usually mounted over NFS from server) • updaterpms.rpmcfgdir directory where to find RPM configs (usually mounted over NFS from server) • updaterpms.initrpmcfg first installation time RPM configuration file (contains only minimal set of RPM’s) • updaterpms.rpmcfg final RPM configuration file • updaterpms.localpkgs Accept or not locally installed packages. (By default:no local pkgs)
LCFGng configuration: Components (cont) • The configuration information as known to the client can be checked using the ‘qxprof’ command on the client. Syntax: qxprof component[.resource] # qxprof auth.rootpwd rootpwd=HjkdoejW443yZ # qxprof updaterpms.rpmcfg Rpmcfg=ngclient # qxprof client.url url=http://lxshare434.cern.ch/profiles/cern.ch • Qxprof can be called also only with the name of the component. Then it dumps all component configuration. • Last but not least: LCFGng components keep a log file on the client: /var/obj/log
LCFGng configuration: RPM config files • The RPM configuration files are stored under /opt/local/linux/6.2/rpmcfg. • Template configurations can be downloaded from the EDG CVS. • They include two types of files: header files (.h) and template configurations. • The ‘ngclient-static’ file contains the minimal configuration for a simple LCFGng client node running RH62 (no EDG services) • More sophisticated testbed RPM config files are used for advanced testbed nodes (UI-rpm, CE-rpm…) • The configuration resource updaterpms.rpmcfg should contain the name of the RPM configuration file, eg. • updaterpms.rpmcfg ngclient-static, OR • updaterpms.rpmcfg UI-rpm • RPM configuration files are not compiled on the server (this is done at the client)