This blog as RSS

IT Asset management with ERP5, SlapOS, GLPI, OTRS and OCS/FusionInventory

2013/08/02 |

A common situation in Enterprise IT is to have an ERP application to track hardware and software purchases (fulfilling the needs of the Business Department), and at the same time an inventory/monitoring application (operated by and for the needs of the IT Department).

Often, these software packages are not integrated, and multiple workflows are required to manage the full hardware and software life cycle. Likewise - and even more important for some companies - management of operational costs and usage billing is decoupled from the other procedures.

We thus explored integration between several open source applications related to Cloud Computing, ERP and IT asset management. We can now provide complete solution for the following problems:

  1. purchase/accounting workflow
  2. automatic collection of hardware/software inventory
  3. discovery and inventory of SNMP devices (routers, printers)
  4. management of software licenses
  5. usage and process monitoring
  6. ticket/help desk requests
  7. resource billing
  8. statistics and charts
  9. integration with SlapOS Master for cloud management

ERP5 as IT asset management backend

A first approach to solve all the problems listed above consists of combining ERP5 as a backend platform with FusionInventory agent. ERP5 keeps track of purchase, location, ownership, accounting, etc. while the FusionInventory agent gathers information about IT devices, 

The agent is available for Linux (most distributions), Windows (95 to 8), OSX (10.3 to 10.7), Solaris, Android, Open/Free/NetBSD, HP/UX, AIX. It can detect hardware components, storage devices, network configuration, running processes and users, and installed software packages. The data can be locally saved in XML format or uploaded to an inventory server. Nearby SNMP devices are probed and added to the inventory as well.

The ERP5 backend provides Helpdesk management through tickets, inventory management, purchase, accounting, base data management, etc. with consistent integration.

ERP5 integration with GLPI, OCS and OTRS

In order to leave maximum flexibility to our customers or to benefit from extensive ITIL support, integration with existing IT management open source applications can be considered. Such applications include GLPI, OCS Inventory, OTRS.

The integration approach we have considered is based on the definition of link templates to the third party application: link template for IT inventory or link template for Helpdesk.

This simplicity of the integration even allows multiple IT management applications to be integrated with ERP5. A group of companies may even implement a single ERP5 system yet use different IT management applications in different sites.

SlapOS and IT Inventory

SlapOS cloud platform acts as a registry of computers also known as nodes. Allocation of cloud capacity is achieved by looking up in the node "inventory" which one provides enough capacity. There are obvious similarities between what SlapOS does and what an IT inventory management system does. Would it be possible then to have a single system ?

Answering this question depends on the context.

For a private SlapOS cloud, it makes sense to integrate IT Inventory management with SlapOS. Because SlapOS repository is based on ERP5, this is quite easy: include FusionInventory as a SlapOS software release and follow the same approach as we described in "ERP5 as IT asset management backend".

It can also be desirable for safety, resilience or other reasons that SlapOS does not collect detailed information of cloud nodes. This is the case of a public cloud designed for resiliency that tries not to disclose the location of its nodes. Storing precise hardware details, their physical location, owner, etc. in a separate application rather than inside SlapOS is a better approach in this case. Even better for resilience, we should consider managing inventory with multiple applications in multiple databases by different organizations. The link templates approach for integration provides a very good solution to this case: Every user can define the URL of his or her inventory application independently of other users. This feature could even become standard in future versions of SlapOS.

Demo Video 

We created a demo video on youtube, which shows how the different applications are integrated.


ERP5 -
SlapOS -
OCS Inventory NG -
GLPI - Gestionnaire libre de parc informatique -
FusionInventory agent -
OTRS - Open-source Ticket Request System -

0 comment | Share: Facebook logo Twitter Logo

New SlapOS version: 0.35



I'm pleased to announce the release of SlapOS Node version 0.35.

As I haven't advertised release of SlapOS Node version 0.34, I will include it in this blog post.

Now that SlapOS Node is quite stable (since 0.33), the 0.34 and 0.35 releases basically contains many small improvements and simplifications that you may love to use. It also contains edge cases support in case of something being corrupted in a partition.

Feel free to update your SlapOS Node package in your favorite distribution.

Note: in Debian based distributions, upgrading the package may cause instances to change their IP. If you care about your current IPs, just backup the /opt/slapos/slapos.xml file into your home directory before upgrade, and place it back after upgrade.

Here is the changelog:

0.35 (2012-02-08)


 * slapformat now creates a backup of old slapos.xml containing all IPs in case of future problem.

 * slapformat hopefully doesn't change local IPv4 of partition if IPv6 changed. 

 * SlapOS Node creates and runs a /opt/slapgrid/$MD5/buildout.cfg for each Software Release, for easier hacking/debugging.

 * SlapOS Node no longer crashes if sending an error to the SlapOS Master triggers itself an error.

 * SlapOS Node no longer crashes if partition's certificate does not exist on master.

 * Add a CLI query command for slapproxy (slapproxy-query).

 * Many minor other typo / output fixes.

0.34 (2013-01-23)


 * All the logs are rotated and will be deleted after a few days. No more 500MB logs!

 * Binary cache now properly works with Ubuntu. Ubuntu is no longer recognised as "Debian/unstable".

 * SlapOS Client now correctly detects the default configuration file. It means running "slapos request X Y" works.

 * SlapOS Node no longer crashes if one partition is in bad state when reporting.

 * SlapOS Node no longer tries to force-process a stopped instance.

 * The Watchdog subsystem now correctly reports an error with the correct certificate.

 * SlapOS Node creates a symlink to software_release in each partition to ease debugging.

 * The "slapproxy" system now handle complex cases like resilient Software Releases and Slave instances.

 * Many minor other improvements, see "CHANGES.txt" of slapos.core.git for details.

Happy slapping,

The SlapOS Node Team

0 comment | Share: Facebook logo Twitter Logo

Introducing Watchdog Feature


Let me introduce you the brand new watchdog.

Watchdog is a simple SlapOS Node feature allowing you to watch any process

managed by supervisor. Whenever this process exits, it will trigger an alert

(bang) that is sent to the SlapOS Master.


As a reminder, the "bang" cause tree recalculation. In human language, it means

"forcing buildout run on all instances of the service".


To watch a process, you will need two things:

1/ A recent SlapOS Node (>= 0.32.2)

2/ Populate the ${buildout:directory}/etc/service directory. Of course, scripts

meant to be exited (like erp5-bootstrap) still go to the ${buildout:directory}/etc/run directory.

Here is the related documentation: How to write Instance Profile

Happy watching!

0 comment | Share: Facebook logo Twitter Logo

New SlapOS version : 0.32.2


Hello guys,

It's been a long time since I haven't advertised a new version of SlapOS Node (a.k.a slapgrid, in old naming).

In the last weeks, we published a lot of small incremental releases of slapos.core, always
more polished.

Today we released a new version of SlapOS Node. The whole changelog is here:
(You can know the current version of slapos.core by spotting the latest version of slapos.core in /opt/slapos/eggs.)

Let me highlight the most important changes we made those last 2 months:

* Add a "watchdog" : if a watched process crash, it will trigger immediately a "bang". (I'll write more doc on this later)
* Added "periodicity" feature: if an instance has not been processed by slapgrid after defined time, process it.
* Introduce simpler "slapos" entry point. See here for documentation: It allows to do things like "slapos node software" to replace the looong older commands.

* slapgrid: Introduce --only_sr and --only_cp.
- only_sr filter and force the run of a single SR, and uses url_md5
- only_cp filter which computer patition, will be runned. it can be a
list, splited by comma (slappartX,slappartY ...)
* Add "slave instances" support in slapproxy

* "-c" (--console) option is now useless: we ALWAYS output into stdout, and in file if --logfile is specified.
* Removed the random delay when running slapgrid
* Much less calls to master, and much more type checks compared to older versions. It means, no longer "computer_id=None" errors.

Most of those features are now daily tested.

Of course, in case of bug, you can slap me directly. Or use the forums.

To update, you can read the doc here :

In the very near future, we will continue to improve usability of the different slapos commands, and provide a nicer usage/documentation for it.

Happy upgrade!

0 comment | Share: Facebook logo Twitter Logo


2012/10/12 |


Slapmonitor is a tiny python script located in slapos.toolbox. It is written to monitor CPU and RAM resources usage of Apache and MySQL applications and store this information  to existing logbox server like Wallix LogBox.

Documentation how to setup and configure it can be found here.

0 comment | Share: Facebook logo Twitter Logo