Yaim

Yaim

YAIM - YAIM Ain't an Installation Manager, is a tool to configure the middleware of the EGEE project namely the LCG and gLite software packages.

YAIM's official logo - The Yak

Description

Yaim is a software to configure Grid services, but YAIM also can be used as a general purpose configuration tool completely independent from the Grid middleware. The aim of YAIM is to provide simple configuration methods that can be used to set up uniform Grid sites but can also be easily adapted to meet the needs of larger sites. To ensure that all system administrator can adapt YAIM to the local requirements, it has been implemented as a set of bash scripts. To support EGEE's component based release model YAIM 4 has been modularized and a YAIM core is supplemented by component specific scripts, distributed as separate rpms.

tructure

YAIM's modular structure allows a distributed and asynchronous development which is essential in implementing the quickly changing configuration requirements of the Grid Middleware.

The hierarchical configuration storage - which is to reflect the architecture of a Grid Site - and the configurable function behavior make it easy to implement the local settings along with YAIM's default configuration.

Multi-level logging messages could provide detailed information on the ongoing configuration process.

YAIM's directory structure

When a YAIM 4 module is installed the following directory structure is created under /opt/glite/yaim:

* /functions/: Contains the functions the configure each node types. They are all bash scripts.
* /functions/local/: Site administrators can put here their own function definition files. Those will overwrite the default ones coming with the YAIM rpms. The file name has to be the same as the function name defined inside it.
* /functions/pre/: Function definition files having the same name as the original YAIM function but the defined function has the '_pre' suffix. This function - if exists - will be executed before the main function.
* /functions/post/: Function definition files having the same name as the original YAIM function but the defined function has the '_post' suffix. This function - if exists - will be executed after the main function.
* /node-info.d/: Contains a set of files coming with different YAIM modules and they contain the list of functions to be executed during the configuration the that given nodeype. Their name should be the lower-case variant of the node type.
* /defaults/:The filenames in this directory are having the same format as they have in node-info.d with a .pre and/or .post suffix. They are sourced correspondingly before and after the main site-info.def and their purpose is to give meaningful default - if possible - values to the variables used by the given module.
* /bin/: Contains the main yaim executable.
* /log/: The location of YAIM's logfile, yaimlog.
* /examples/: This directory contains an example configuration storage. It's structure is explained in the next section.

YAIM's configuration storage

The /examples/ directory in /opt/glite/yaim is just a guideline and serious site admins should not store their configuration files in that location. YAIM allows having the site's configuration in a well separated and protected place. The configuration files of a site are to be stored in a directory structure having a fixed layout relative to the site's main site-info.def file. The site-info.def file has to sit in a directory (ex.: /root/siteinfodir/ ) which could contain the followings:
* /site-info.def: This is the main configuration file of the site, to be sourced first and other optional configuration files will overwrite the values defined here.

* /services/: Site administrators can place files into this directory with their names having the same format as in /opt/glite/yaim/defaults. These files are sourced only when the given service is configured, thus enabling service-specific configuration settings.
* /nodes/: Each file in this directory should be the fully qualified name of a host. Only when that host is to be configured, the corresponding file will be sourced which allows host-specific configuration steps to be performed.
* /vo.d/: The entries in this directory are to be named as the lower-case version of a VO to be supported. The file can contain VO specific variables and will overwrite the ones defined in the main site-info.def file.
* /users.conf/, groups.conf: Usually they reside on the same level in the directory hierarchy where the main site-info.def does, but their location is configurable via the USERS_CONF and GROUPS_CONF variables.

The bin/yaim executable

Usage: /opt/glite/yaim/bin/yaim

Actions:

-i | --install : Install one or several meta package. Compulsory parameters: -s, -m

-c | --configure : Configure already installed services. Compulsory parameters: -s, -n

-r | --runfunction : Execute a configuration function. Compulsory parameters: -s, -f Optional parameters : -n

-v | --verify : Goes through on all the functions and checks that the necessary variables required for a given configuration target are all defined in site-info.def. Compulsory parameters: -s -n

-d | --debug : Turns "set -x" on, rude debug information for development. Probably you don't want to use it.

-e | --explain : Doesn't perform configuration but explains what the functions are doing by printing out the comments found inside them. Compulsory parameters: -s -n

-h | --help : Prints out this help.

Parameters:

-s | --siteinfo: : Location of the site-info.def file-m | --metapackage : Name of the metapackage(s) to install-n | --nodetype : Name of the node type(s) to configure-f | --function : Name of the functions(s) to execute

Examples:

Installation: /opt/glite/yaim/bin/yaim -i -s /root/siteinfo/site-info.def -m glite-SE_dpm_mysql

Configuration: /opt/glite/yaim/bin/yaim -c -s /root/siteinfo/site-info.def -n SE_dpm_mysql

Running a function: /opt/glite/yaim/bin/yaim -r -s /root/siteinfo/site-info.def -n SE_dpm_mysql -f config_mkgridmap

Verify your site-info.def: /opt/glite/yaim/bin/yaim -v -s /root/siteinfo/site-info.def -n SE_dpm_mysql

The configuration flow

When launching the configuration the different configuration files will be sourced and will overwrite each other in the following order (supposing that we store the site configuration in /root/siteinfo/ directory and configuring service myservice on host myhost and supporting VO myvo):

# /opt/glite/yaim/defaults/site-info.pre
# /opt/glite/yaim/defaults/myservice.pre
# /root/siteinfo/site-info.def
# /opt/glite/yaim/defaults/site-info.post
# /opt/glite/yaim/defaults/myservice.post
# /root/siteinfo/nodes/mynode
# /root/siteinfo/vo.d/myvo
# /opt/glite/yaim/node-info.d/myservice

Then for each function myfunc defined in /opt/glite/yaim/node-info.d/myservice it executes the followings if they are defined:

# /opt/glite/yaim/functions/pre/myfunc.pre
# /opt/glite/yaim/functions/local/myfunc or /opt/glite/yaim/functions/local/myfunc
# /opt/glite/yaim/functions/post/myfunc

YAIM's logo - The Yak

The Yak (Bos grunniens) is a long-haired humped domestic bovine found in Tibet and throughout the Himalayan region of south Central Asia, as well as in Mongolia. The yak is not a gnu.

The author of the logo is David O'Callaghan. When he was asked why he has chosen the yak to be the logo of YAIM, he said:

"The Jargon File defines " as "Any seemingly pointless activity which is actually necessary to solve a problem which solves a problem which, several levels of recursion later, solves the real problem you're working on. I think this describes the process of installing and configuring grid systems quite well!"

"YAIM aims to take the pain out of grid system administration. So, I thought a yak would make a good logo for YAIM as we no longer have to spend so much time shaving the yak!"

Download

* EGEE APT repository:
** rpm http://glitesoft.cern.ch/EGEE/gLite/APT/R3.0/ rhel30 externals Release3.0 updates
** [http://glitesoft.cern.ch/EGEE/gLite/APT/R3.0/rhel30/ Browse]
* CVS repository:
** Anonymous CVSROOT: :ext:afs_login@glite.cvs.cern.ch:/cvs/glite
** [http://glite.cvs.cern.ch/cgi-bin/glite.cgi/ Browse]

See also

* EGEE
* LHC Computing Grid
* CERN

External links

* [http://yaim.info YAIM main page]
* [https://twiki.cern.ch/twiki/bin/view/EGEE/YaimDevelopersGuide YAIM Developer's Guide]
* [https://twiki.cern.ch/twiki/bin/view/LCG/LcgDocs YAIM User (Sysadmin) Guide]
* [http://glite.web.cern.ch/glite/ The gLite middleware]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • AIM-152 AAAM — The AIM 152 AAAM is an air to air missile developed by the United States of America.OverviewThe AIM 152 originated in a U.S. Navy requirement for an advanced air to air missile to replace the AIM 54 Phoenix. By the mid 1980s the Phoenix was… …   Wikipedia

  • AIM-120 — AMRAAM AIM 120C 5 AMRAAM Mission Missile air air à moyenne portée …   Wikipédia en Français

  • AIM-120 AMRAAM — AIM 120C 5 AMRAAM Présentation Fonction Missile air air à moyenne portée Constructeur Hughes/Raytheon …   Wikipédia en Français

  • AIM120 — AIM 120 AMRAAM AIM 120C 5 AMRAAM Mission Missile air air à moyenne portée …   Wikipédia en Français

  • AMRAAM — AIM 120 AMRAAM AIM 120C 5 AMRAAM Mission Missile air air à moyenne portée …   Wikipédia en Français

  • Enabling Grids for E-sciencE — (EGEE) is a project funded by the European Commission s Sixth Framework Programme through Directorate F: Emerging Technologies and Infrastructures, of the Directorate General for Information Society and Media. It connects more than 70… …   Wikipedia

  • Angelo Traina — (also known as A. B. Traina ) (January 22, 1889 November 4, 1971) was a Biblical scholar, best known for his emphasis on restoring Semitic proper names to their Aramaic and Hebrew forms . Traina was born in Sicily, into a Catholic family. They… …   Wikipedia

  • AIM-152 AAAM — Oben der Entwurf von Hughes/Raytheon/McDonnell Douglas, unten von GD/Westinghouse …   Deutsch Wikipedia

  • Тохарские языки — Деревянная табличка с тохарским текстом, Кучэ, Китай, V VIII века Тохарские языки (агнео кучанские языки)  группа индоевропейских языков, состоящая из мёртвых «тохарского А» («восточно тохарский») и «тохарского Б» …   Википедия

  • AIM-120 AMRAAM — Ракета AIM 120 Тип ракета класса «воздух воздух» …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”