Third Party Integration

Principle

The goal is to provide something very simple to configure. Files used for third party tools sync are all stored in vendor/plugins/redmine_datacenter/data/[identifier_of_the_project]. In this directory, you have to make a subdirectory for each tool you want to synchronize (see next sections / roadmap to know what is / will be supported).

For instance, if you have a project identified by 'my-project' (see URLs generated) :
  • vendor/plugins/redmine_datacenter/data/my-project/nagios/ will store Nagios-related files
  • vendor/plugins/redmine_datacenter/data/my-project/apache/ will store Apache-related files
  • vendor/plugins/redmine_datacenter/data/my-project/storage/ will store Storage-related files
  • etc.

On Linux/BSD systems, you'll have to give at least read access to files and read/execute access to directories for the user who runs your redmine instance.

Nagios Integration

File to synchronize : status.dat

Sample shell script to synchronize it from local server (means your redmine server and your nagios server are the same) :

#!/bin/sh

#replace the next 3 lines with your own values!
STATUS_FILE=/usr/local/nagios/var/status.dat
REDMINE_DIR=/opt/redmine
REDMINE_PROJECT=my-project

dir=$REDMINE_DIR/vendor/plugins/redmine_datacenter/$REDMINE_PROJECT/nagios/
mkdir -p $dir
cp $STATUS_FILE $dir

Sample shell script to synchronize it from a remote server :

#!/bin/sh

#be sure you set ssh keys between redmine server and remote nagios server
#replace the next 4 lines with your own values!
REMOTE_SERVER=monitoring.local
REMOTE_STATUS=/usr/local/nagios/var/status.dat
REDMINE_DIR=/opt/redmine
REDMINE_PROJECT=my-project

dir=$REDMINE_DIR/vendor/plugins/redmine_datacenter/$REDMINE_PROJECT/nagios/
mkdir -p $dir
scp $REMOTE_SERVER:$REMOTE_STATUS $dir

Then you can put this shell script in a crontab :

*/5 * * * * /path/to/this/script.sh

Storage integration

Storage integration only supports IBM DS4000 series for the moment !

Files to synchronize : profile files for each device, named with the name of the device in your "Servers"

Sample shell script to synchronize it from a remote server :

#!/bin/sh

#be sure you set ssh keys between redmine server and remote nagios server
#replace the next 4 lines with your own values!
REMOTE_SERVER=a_server_with_smcli_installed.example.com
SAN_IP=192.168.200.1
SAN_HOST=storage-001
REDMINE_DIR=/opt/redmine
REDMINE_PROJECT=my-project

dir=$REDMINE_DIR/vendor/plugins/redmine_datacenter/data/$REDMINE_PROJECT/storage/
ssh $REMOTE_SERVER "/usr/bin/SMcli $SAN_IP -c 'show storagesubsystem profile;'" > $dir/$SAN_HOST

Also available in: HTML TXT