Install Abiquo reports



This page describes how to install Abiquo reports with Jasper Reports server.

 

Reporting server requirements

You should install Abiquo reports on a separate server that can also run Abiquo billing.

  • Do not install Abiquo Reports on an Abiquo platform server because the Abiquo and Jaspersoft Tomcat installations will clash.

  • You can use a plain CentOS 7 server

  • Abiquo Reports server host name must be resolvable. For testing purposes, add it to /etc/hosts.

 

Set up a database replica

If you are not using a database cluster, set up a replica of the Abiquo database on the Reporting VM. This replica will process reporting database workloads locally instead of adding them to Abiquo API/database modules. See Kinton Database replication.

If you are using a database cluster, check that you have the MySQL client installed on your Reporting server, by typing mysql . If not, install it.

yum update yum install mysql

 

Install JasperReports server community edition

  1. Log in to Abiquo Reports Server as an admin user

  2. Install prequisites for Jasper Reports

    yum update yum install epel-release yum install wget chromium unzip jre

     

  3. Download Jasper Reports (JR) in the 7.8.0 Community release version. Make the file executable.

    wget https://sourceforge.net/projects/jasperserver/files/JasperServer/JasperReports%20Server%20Community%20edition%207.8.0/TIB_js-jrs-cp_7.8.0_linux_x86_64.run chmod 755 TIB_js-jrs-cp_7.8.0_linux_x86_64.run

     

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

     

  5. During JR installation, fill the command-line prompt as below.

     

  6. Start the JR server

     

Change the admin credentials of the JR server

It is important to change the admin credentials in production environments or in publicly visible environments.

For a full security guide to Jasper Reports, search for your version here: https://community.jaspersoft.com/documentation/tibco-jasperreports-server-security-guide

  1. From a browser, log into JR server by going to the URL below and replace REPORTS_SERVER with your server IP.

  2. Log in with the default user jasperadmin.

  3. Go to ManageUsers→ Select jasperadmin user

  4. Edit the user → Enter the new password in the textboxes 

  5. You can also create another internal user with the same administrator profile and a secure password, and then delete the jasperadmin user

  6. We recommend that you delete the anonymousUser, especially in production environments and publicly visible ones

  7. Log out of the JR server.


Create a user for reporting

In the replica or on a cluster database server, create a MySQL user to locally manage reporting data and stored procedures.

In the Abiquo replica or cluster database, for the install process, you will also need super user permissions.


Install the JR integration

To download and install the Abiquo JR integration do these steps.

  1. Get the abiquo-reporting-X.x.x-core.zip file for your version.

  2. Uncompress it and run the install.sh. If your Abiquo database is in the DB cluster, add the optional -h database host and -P port parameters.

    This script will insert Abiquo reports to JR, add DB auth, systemd scripts. It can take some minutes to complete. After it completes, it will restart the JasperServer.

  3. To periodically remove temporary tables from the DB, add the following cron job.

    This job will run at 01:00 so it does not affect user reports.

 


Configure proxypass for JR URI

In order to access directly from Abiquo UI to JR UI:

  1. Add the following connector to /opt/jasperreports-server-cp-7.8.0/apache-tomcat/conf/server.xml.

    If you are configuring a test environment without TLS certificates, then do not include scheme="https" and proxyPort="443"

  2. Restart the JR service

     

  3. Log in to the Abiquo server via SSH, and edit the Abiquo httpd config file

  4. Add the following location

     

  5. Restart the httpd service

     

  6. Log in to the Abiquo UI and go to Configuration and add the URI http://<AbiquoFQDN>/jasperserver for the Reporting button.

  7. Save the configuration

Now you should be able to go from Abiquo to JR and log in there with your Abiquo user.

Activate Abiquo Jasper server theme

  1. Log in to the JR UI using jasperadmin (or your admin 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'



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.

 

Install token authentication

With token authentication we can go from Abiquo to JR without logging in again, by sending the authentication token from the UI. This approach is very useful with external authentication services such as SAML or OpenID.

To install token authentication, do these steps.

  1. Log in to JR server via ssh and run the install_auth.sh script to install token authentication XML and JAR files:

     

  2. Edit the import_cert.sh script and set the HOST variable to your Abiquo FQDN

  3. Run the import_cert.sh script

     

  4. To disable DB authentication, rename its XML config file.

     

  5. Restart the JR service

     

Now you can also log in to the Abiquo UI and go to Configuration and add the Reports logout URL.


Test the reports

If you are using external database authentication, log back into the JR server using the credentials of an Abiquo user. If you are using token authentication, open Reports through the Abiquo Server.

Check if you can now run any of the installed reports, and if you have any problems, see Troubleshoot Abiquo reports.

 


Contents of the reporting package

The reporting package contains the following files and folders.

  • 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.

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