Install Abiquo Reports

A guide to install Abiquo Reports for Abiquo.

This guide is an overview only. Abiquo Support will install Abiquo Reports appropriately for your environment.


  • 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_xml/: 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 (recommended version 7.8.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, for example:

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

Start the Jasper Server,

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

3. Log into Jasper Reports server UI

From a browser, log into Jasper Reports server by going to the URL below.

Replace REPORTS_SERVER accordingly.

http://REPORTS_SERVER:8080/jasperserver

Log in with the default user jasperadmin.

Change the password to a secure password and store it in your password security system.

Log out of the Jasper Report server

4. Create admin user on the DB server

Go to the mysql prompt on the secondary 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;

5. 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:

./reporting/install.sh -hDATABASEHOST -uDATABASEUSER -pDATABASEPASSWORD -PDATABASEPORT

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

6. Create reports user on 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;

7. Activate Abiquo Jasper Server theme

  1. Log in to the JasperServer UI using the jasperadmin user and the secure password you set earlier.
  2. In left side folder browser, right click on 'root -> Themes -> abiquo' and select 'Set as Active Theme'

8. 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 running as expected.

9. Optionally install token authentication

To install token authentication:

  1. Edit the file for token auth

    applicationContext-externalAuth-abiquo-token.xml
  2. Set the value of the abiquo host address (to replace "abiquodomain")

                    <property name="abiquoHost" value="https://abiquodomain"/>
  3. Move the token auth file to the appropriate folder, either using install_auth.sh or manually. This would usually be the WEB-INF folder of the jasperserver application.

10. Test the Reports

If you are using external database authentication, 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. If you are using token authentication, you will need to open reports through the Abiquo Server.

11. Configure Reports Button in the Abiquo UI

  1. Log into Abiquo UI using cloud administrator credentials.
  2. Go to Configuration -> System Properties -> General and edit
  3. Enter Abiquo Reports server URL in "Display Report button linked to this URL" field
  4. If you are using token authentication, optionally enter the Reports logout URL
  5. Save changes

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

12. 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 ();"

Copyright © 2006-2022, Abiquo Holdings SL. All rights reserved