Packages

Rudder components are distributed as a set of packages.

Figure 12. Rudder packages and their dependencies

packages.png


rudder-webapp
Package for the Rudder Web Application. It is the graphical interface for Rudder.
rudder-inventory-endpoint
Package for the inventory reception service. It has no graphical interface. This service is using HTTP as transport protocol. It receives an parses the files sent by FusionInventory and insert the valuable data into the LDAP database.
rudder-jetty
Application server for rudder-webapp and rudder-inventory-endpoint. Both packages are written in Scala. At compilation time, they are converted into .war files. They need to be run in an application server. Jetty is this application server. It depends on a compatible Java 7 Runtime Environment.
rudder-techniquess
Package for the Techniques. They are installed in /opt/rudder/share/techniques. At runtime, the Techniques are copied into a git repository in /var/rudder/configuration-repository. Therefore, the package depends on the git package.
rudder-inventory-ldap
Package for the database containing the inventory and configuration information for each pending and validated Node. This LDAP database is build upon OpenLDAP server. The OpenLDAP engine is contained in the package.
rudder-reports
Package for the database containing the logs sent by each Node and the reports computed by Rudder. This is a PostgreSQL database using the PostgreSQL engine of the distribution. The package has a dependency on the postgresl package, creates the database named rudder and installs the inialisation scripts for that database in /opt/rudder/etc/postgresql/*.sql.
rudder-server-root

Package to ease installation of all Rudder services. This package depends on all above packages. It also

  • installs the Rudder configuration script:
/opt/rudder/bin/rudder-init
  • installs the initial promises for the Root Server in:
/opt/rudder/share/initial-promises/
  • installs the init scripts (and associated default file):
/etc/init.d/rudder
  • installs the logrotate configuration:
/etc/logrotate.d/rudder-server-root
rudder-agent
One single package integrates everything needed for the Rudder Agent. It contains CFEngine Commmunity, FusionInventory, and the initial promises for a Node. It also contains an init script:
/etc/init.d/rudder

The rudder-agent package depends on a few libraries and utilities:

  • OpenSSL
  • libpcre
  • liblmdb (On platforms where it is available as a package - on others the rudder-agent package bundles it)
  • uuidgen