# Presentation: 208638

## Software Packages Management System for the EU DataGrid

- G. Cancio Melia, L. Cons, Ph. Defert.
- CERN/IT

- October 2002

- October 2002

## Software Distribution Architecture

-  A **packaging tool** takes care of installing/deinstalling/upgrading packages on a computer node and keeps an inventory of currently installed packages.
-  The packages themselves are stored on a managed **Software Repository** accessible via multiple protocols (eg. HTTP, FTP, shared file system,..)
-  Information on which packages are to be deployed on which nodes, and which packages are available on which repositories, is kept in the fabric-wide **Configuration Database.**
-  A **'glue' application** (running on the target nodes) computes the necessary package upgrade operations and invokes the **packaging tool.**
*(The SW generation and packaging process is outside the scope.)*

## Software Packages Manager (SPM)

- The SPM is the *glue application. *Functionality:
- Compares the packages currently installed on the local node with the packages  listed in the configuration
- Computes the necessary install/deinstall/upgrade operations
- Invokes the packager with the right operations set to be executed as a transaction (if possible)
- The SPM is driven via a local configuration file
- For batch/servers: A *component* generates/maintains this cf file out of CDB information
- For desktops: Possible to write a GUI for locally editing the cf file
- The SPM core is independent of which packaging format is used.

## Software Packages Manager (II)

*Packager: *the standard system packaging format is used (rpm for Linux, pkg for Solaris)
- rpmt (for rpm ‘transactional’) used for transactions handling
- Packager (rpmt) functionality:
- Read operations (transaction)
- downloads new packages from Repository
- orders the transaction operations taking into account dependency information
- Executes the operations (installs/removes/upgrades)

## SPM Architecture

**GUI**

- Packages (RPM, pkg)

**RPM**
** ****db**

**Local**
**Config**
- file

- Transaction set

- HTTP(S), NFS, FTP

- Central Config DB

- Installed
-  packages

- “desired ”
- configuration

- Desktops

## SPM and the CDB

- SW packages are modelised in the Global Schema as follows:
- Repository configuration: List of available repositories, repository directories, and packages
- Node configuration: list of used repositories, and list of selected packages.
- The CDB template inclusion mechanism allows to define multiple default profiles which can then be refined
- Production-packages-rh72.tpl -> lxplus7.tpl -> lxplus043
- More flexibility than current ASIS profiles (Certified, InProduction)
- Package config flags:
- Local exception list, or backup of previous configuration (for personal WS)
- Reboot when package is upgrade (.glibc updates)
- Do not upgrade package when node is in production (eg. runlevel X)
- Standard RPM flags (no dependencies, force, no pre/post installs, etc..)

## SPM and the packager

- Packager Object (rpm, pkg, deb, tar, ...)
- Reads installed packages
- Operation (install, deinstall, update, etc..)
- Generates operations list
- Executes operations transaction
- Package Object
- Needed abstraction
- Naming
- Attributes
- Package Objects List

## SPM and ASISwsmp (ASIS workstation manager 'plus')  

- ASIS now
- ASIS products available in rpm format
- New updater already uses rpm and rpmt (on RedHat systems)
- ASIS should
- incorporate use of pkg for Solaris, thus
- Be re-designed to include a packager abstraction
- ASIS will
- Use the SPM design
- Share the code of the packager object and more with SPM prototype (planned Q2 2003)
- Be used as a proof of concept for SPM (planned for January 2003)

## ASISwsmp status and conclusion

- ASIS with rpm or not **(3800 clients, any type)**
- Uses rpm, with a private or the system database
- Can be used on RH 6.1 but is not by default
- Default private data base on all RH 7.2 nodes **(940 clients)**
**Default system data base on all RH 7.3 nodes ****(33 clients)**
**ASIS removes more and more differences between system and applications**
**SPM will handle system and application installation without segregation**
**SPM is planned to replace ASIS in 2003 with better functionality and compatibility**

## ASISwsmp status and conclusion

***This is a GRID system and software environment***
*** ******manager: can it be used on many other clusters ?***