Installation
AlfBI Installation Guide¶
The following guide is for the installation of AlfBI
Requirements¶
Alfresco¶
- Alfresco Version 5.0+
- Alfresco Dynamic Extensions
- AlfStream Version 1.9.0+
- Java Version 8
Apache Karaf¶
- Apache Karaf 4.0+
PostgreSQL¶
- PostgreSQL version 9.5+
Compilation¶
Requires Read access to the Parashift Private Maven Repository
Run gradle amp in repo, share and camel directories
Installation (Alfresco)¶
Install the following amps into Alfresco:
- Alfresco Dynamic Extensions
- Alfstream
- AlfBI (this module)
Installation (Karaf)¶
Installation of this module requires an instance of Apache Karaf to host Apache Camel.
Karaf is normally stored within the /opt/apache-karaf-*/ directory where * is the version number.
- Follow the instructions for installing Karaf from the Quickstart here: Karaf Manual
Installation (PostgreSQL)¶
You will need a PostgreSQL database to store all the indexes. As an
example, you can create a db alfbi with user and password alfbi:
postgres=# create user alfbi password 'alfbi'; CREATE ROLE postgres=# create database alfbi owner alfbi; CREATE DATABASE
By default alfbi will automatically create the necessary tables for you when it starts ingesting.
Configuration (Karaf)¶
-
Create a or update the config file at
/<path_to_karaf_install>/etc/com.parashift.cfgwith the following properties: -
alfresco.url: the Local alfresco instance (normally localhost, but could be a different server) alfresco.username: the Local alfresco admin usernamealfresco.password: the Local alfresco admin passwordalfbi.username: the username for the alfbi PostgreSQL databasealfbi.password: the password for the alfbi PostgreSQL databasealfbi.url: the URL for the alfbi PostgreSQL database
The default configuration uses the following:
alfresco.url=http://localhost:8080/alfresco alfresco.username=admin alfresco.password=admin alfbi.username=alfbi alfbi.password=alfbi alfbi.url=jdbc:postgresql://localhost/alfbi
Configuration (Metabase)¶
After you have successfully pulled down data from Alfresco you should have the tables/databases necessary for creating dashboards.
The dashboard configuration is stored here: metabase_dashboards.yml
Note: If you are not using the default database username/password, make sure you update the yaml file with the correct values
Using mbexport you can import the dashboards like so:
mbexport -i metabase_dashboards.yml
Configuration (Alfresco)¶
The following configuration options are available for Alfresco
Metabase User/Group Synchronisation¶
Note: Requires that Metabase is running using PostgreSQL as a configuration store
The following options control the user/group sync in Alfresco global properties (with defaults):
metabase.db.url=jdbc:postgresql://localhost:5432/metabase_default metabase.db.username=default metabase.db.password=default metabase.enabled=true
The db params specify the metabase configuration database to connect to. If the metabase db is not contactable, or there is an exception, then metabase sync won't be enabled
Metabase Reports SSL Redirect¶
Note: Requires that metabase is accessible via another domain
To configure the reports redirect in Alfresco share, user/group synchronisation must be active as per above.
The metabase.front.url configuration option specifies the metabase
url.
You will need to setup a proxy for metabase via apache like so:
ProxyPass /alfmb http://127.0.0.1:8080/alfresco/s/parashift/alfbi/proxymb ProxyPassReverse /alfmb http://127.0.0.1:8080/alfresco/s/parashift/alfbi/proxymb ProxyPass / http://127.0.0.1:3000/ ProxyPassReverse / http://127.0.0.1:3000/
The method of redirect is as follows:
- Users click on the
Reportsbutton within Alfresco Share - This redirects them to
{{metabase.front.url}}/alfmb?alf_ticket={{user_ticket}} - The proxymb webscript then performs the following:
- Checks if the user is valid
- Creates a session in metabase
- Sets the browser cookies to that session