Skip to content
This repository has been archived by the owner on Oct 5, 2018. It is now read-only.
Mattieu Puel edited this page Jul 25, 2013 · 27 revisions

You will find here basic documentation about how to install, configure and run osssm service.

APEL/SSM Openstack documentation

1- About

osssm extracts usage records of monitored tenants and forwards them to APEL/SSM accounting system. It interacts with Openstack only through Nova API (you will have to provide a valid user/password/auth_url in the configuration file). Two services are involved:

  • osssm.extract : extract and caches usage records. It is launched as a cron task and should be scheduled as often as reasonable on your configuration.
  • osssm.push : push the spooled usage records to APEL/SSM. It may be scheduled less often as all information is in the spool. It impacts how APEL/SSM centralised information will be up to date.

2- Prerequisites

  • valid APEL/SSM configuration : You first need to install and configure APEL SSM client whose role is to send the accounting usage records to the apropriate accounting database. Please follow the SSMclient-setup.pdf documentation, available on the accounting workgroup page of the FCTF wiki..
  • user/tenant allowed to query usage records : you have to set a proper user/role/tenant in order this user is allowed by nova-api to query for the target usages.
  • VO/tenant mapping : you need to set the osssmrc parameter "voms_tenants_mapping" to point to the file that contains the mapping configuring VOMS auth for Keystone. If the apel-ssm-openstack client is installed on keystone host, it likely is /etc/keystone/voms.json. Otherwise, you have to sync this file.

For instance, you could add to your /etc/nova/policy.json the following snippet:

"monitoring_access": ["role:egi.fctf.accounting"]]
"compute_extension:simple_tenant_usage:list": ["rule:monitoring_access"]],

3- Installation

Debian based systems

# download and install the package
$ wget ftp://ftp.in2p3.fr/ccin2p3/egi-acct-osdriver/apel-ssm-openstack/apel-ssm-openstack_latest.deb
$ dpkg -i apel-ssm-openstack_latest.deb

# configure it
$ man osssmrc
$ vim /etc/osssmrc

# check/edit crons scheduling
$ vim /var/lib/osssm/cron

# start the service
$ service osssm start

RHEL based systems

# download the package and install it
$ wget ftp://ftp.in2p3.fr/ccin2p3/egi-acct-osdriver/apel-ssm-openstack/apel-ssm-openstack-latest.noarch.rpm
$ yum localinstall -y apel-ssm-openstack-current.noarch.rpm

# configure it
$ man osssmrc
$ vim /etc/osssmrc

# check crons scheduling
$ vim /var/lib/osssm/cron

# enable and start the service
$ chkconfig osssm on
$ service osssm start

4- Configuration

Please refer to osssmrc (5) to get all configuration options details.

5- Known limitations

  • Does not report network rx/tx bandwith.
  • Does not handle paused Vms.
  • Does not implement "SuspendDuration".
  • Does not report "VOGroup", nor "VORole" fields
  • cron timings should be configuration parameters.
  • the accounted disk space should be the addition of the image size and the ephemeral storage. It only accounts the ephemeral for now.

6- Compatibility notes

Starting from version 1.15, latest Nova API code is required (Folsom/Grizzly). There is a patch for Essex, if needed feel free to add a request.

7- Upgrade notes

When upgrading from version <1.16, you should void the spool file before launching osssm.extract.