Abiquo 5.2

Skip to end of metadata
Go to start of metadata

A guide to install Abiquo Reports for Abiquo.

  • Do not install Abiquo Reports on any Abiquo platform server because the Abiquo and Jaspersoft Tomcat installations will clash.
  • Abiquo Reports server host name must be resolvable. For testing purposes, add it to /etc/hosts.

1. Get Abiquo Reporting module

Obtain the abiquo-reporting-core.zip file for your version.

Unzip it into a reporting folder on Abiquo Reports server.

It contains the following files:

  • install_auth.sh: Installs and configures Jasper Server authentication components.

  • auth/: Contains authentication components and XML authentication template used by install_auth.sh
  • install.sh: Installs reports packs in Jasper and Maria DB servers and upgrades them.
  • reports/: Contains all report packs and Jasper Server and DB report objects.

2. Install JasperReports Server Community Edition

Download Jasper Reports 6.2.0 Community release from http://community.jaspersoft.com/download to Abiquo Reports server.

Run the installer as root to perform a custom install. You can use the default settings:

./jasperreports-server-cp-6.2.0-linux-x64-installer.run --jasperLicenseAccepted yes --jasperserver_install_sampledata 0

Start the Jasper Server

/opt/jasperreports-server-cp-6.2.0/ctlscript.sh start

3. Create admin user in the DB server

Go to the mysql prompt in the DB server and create an admin user with access from Abiquo Reports server. Replace ADMIN_USER, ADMIN_PASS and REPORTS_SERVER accordingly:

use mysql
create user 'reporter'@'%' identified by 'PASSWORD';
flush privileges;

4. Install Abiquo Jasper Server integration

From the reporting folder, run the Abiquo Reports install script.

By default the script will try to install on localhost with user root and no password. If you would like to install it on another server, use the appropriate options, replacing variables such as DATABASEHOST, with values for your environment:


The install script will install the JasperServer service and restart the JasperServer.

5. Create reports user in the DB server

Create a reports user in the secondary DB server. Go to mysql prompt and create the user manually as an admin user:

use mysql
create user 'REPORTS_USER'@'REPORTS_SERVER' identified by 'REPORTS_PASS';
grant execute on kinton_reports.* to 'REPORTS_USER'@'REPORTS_SERVER';
flush privileges;

6. Log into Jasper Reports server UI

From a browser, log into Jasper Reports server by going to the URL below. Replace REPORTS_SERVER accordingly. Default credentials are jasperadmin / jasperadmin

6.1. Activate Abiquo Jasper Server theme
  1. In left side folder browser, right click on 'root -> Themes -> abiquo' and select 'Set as Active Theme'

6.2. Configure Abiquo Data Source in Jasper Reports Server
  1. In the left-hand side folder browser, go to 'abiquo Reports -> Common -> Data Sources'.
  2. Right-click on Abiquo Database and select Edit.
  3. Enter DB server hostname or IP address in the URL field.
  4. Replace User Name and Password with REPORTS_USER and REPORTS_PASS from previous step.
  5. Test Connection to verify the configuration
    1. If the connection is okay, save the changes.
    2. Otherwise, review your DB settings and ensure Maria DB is as expected.

6.3. Test the Reports

Log back into Jasper Reports server using the credentials of an Abiquo user and check if you can now run any of the installed reports. If you have any problems, see Troubleshoot Abiquo Reports

7. Configure Reports Button in the Abiquo GUI

  1. Log into Abiquo UI using cloud administrator credentials.
  2. Go to "Configuration -> System Properties -> General" and edit it.
  3. Enter Abiquo Reports server URL from step 8 in "Display Report button linked to this URL" field and save changes.

Now you should be able to access the Jasper Server reporting portal directly from the Abiquo UI.

8. Create Cron job to clean up temporary tables

The reporting schema contains temporary tables, which should be deleted periodically by running kinton_reporting.TruncateRLSTables stored procedure. Run this job during low traffic hours so you do not affect reports generated by cloud users. For example, to delete the tables every day at 01:00, use the cron entry below. Replace ADMIN_USER, ADMIN_PASS and DB_SERVER according to your installation.

0 1 * * * mysql -uREPORTS_USER -pREPORTS_PASS -hDB_SERVER -P3306 -e "CALL kinton_reporting.TruncateRLSTables ();"