For the complete documentation index, see llms.txt. This page is also available as Markdown.

Install Pentaho Server

Installation of Pentaho Server components ..

Pentaho Server

This section guides you through installing and starting the Pentaho Server on Ubuntu.

You will:

  • Create installation directories

  • Prepare the Pentaho Repository databases

  • Configure JDBC/JNDI connections

  • Start the Pentaho Server (and optionally set up systemd)

  • Configure the License Manager

Prerequisites

  • Ubuntu 24.04 LTS server

  • Java 21 installed and PENTAHO_JAVA_HOME set

  • PostgreSQL 17 installed and running

  • A non‑root pentaho user with sudo

  • unzip package installed

  • Archive ZIPs and JDBC drivers downloaded

Pentaho Pro Suite overview image
Pentaho Pro Suite

Pentaho Server Directories

The Pentaho Server is a web application running in a Apache Tomcat servlet container.

  1. Create base directories under /opt/pentaho.

  1. Create sub-directories in /opt/pentaho/software.


Unpack Pentaho Server Package (ZIP)

Use unzip to extract the server ZIP into the runtime directory. This avoids requiring the full JDK (the JRE does not include the jar tool).

  • pentaho-server-ee-11.0.0.0-2xx.zip - Pentaho Server (Archive - incl Tomcat 10)

  1. Ensure unzip is available and copy the server ZIPs into staging.

  1. Extract the Pentaho Server ZIP into $PENTAHO_BASE/server.

Unzip Pentaho Server
  1. Make all .sh files executable.

  1. Set ownership and sensible permissions to run 'pentaho' as a non-root user.

755 means you can do anything with the file or directory, and other users can read and execute it but not alter it. Suitable for programs and directories you want to make publicly available.

644 means you can read and write the file or directory and other users can only read it.

  1. Verify the server directory structure.

/opt/pentaho/

Server plugins are installed into the pentaho-solutions/system folder.

Pentaho Repository components

The Pentaho Repository (on PostgreSQL by default) consists of:

  • Jackrabbit: solution repository, security and content metadata

  • Quartz: scheduler data

  • Hibernate: audit logging

  • Pentaho Operations Mart: usage and performance reporting

1

Review default passwords in SQL scripts

  1. Inspect the PostgreSQL scripts shipped with the server.

You should see files similar to:

  1. Open a script to review default users/passwords (change for production).

2

Run SQL scripts to create Repository databases

  1. Confirm PostgreSQL is running and locate the scripts.

  1. Connect as a pentaho superuser.

Password: SecurePassword123

  1. Execute the commands step-by-step - not as a single script block. Provide passwords if prompted - see below.

User
Password

postgres

SecurePassword123

pentaho

SecurePassword123

jcr_user

password

pentaho_user

password

hibuser

password

  1. Quick validation (CLI) - list created databases and connect - hit q to scroll through list.

  1. Optional: verify in pgAdmin (GUI).

Pentaho databases
3

Configure Pentaho to use PostgreSQL

PostgreSQL is the default. If you kept the default passwords and port (5432), only verify the settings below; otherwise, adjust host/port/user/password to match your environment.


Quartz - set PostgreSQL delegate and JNDI data source.

  1. Open the Quartz configuration.

  1. Check these values (line numbers may differ):


Hibernate — point to the PostgreSQL configuration file.

  1. Open Hibernate settings.

  1. Confirm the config file reference:

  1. Optionally review postgresql.hibernate.cfg.xml for datasource name and dialect.

Ensure:


Jackrabbit — verify PostgreSQL storage in repository.xml.

  1. Open Jackrabbit configuration.

  1. Check that PostgreSQL sections are active (others commented out), for example:

  • Filesystem schema: postgresql

  • Datastore databaseType="postgresql"

  • PersistenceManager schema: postgresql

  • Database Journal: postgresql

Tomcat

After configuring the Repository, configure the web application server (Tomcat 10) to connect to the Repository using JDBC/JNDI.

JDBC Drivers

  1. Verify the PostgreSQL JDBC driver is present in Tomcat lib (required for the Repository):

If not found, download the PostgreSQL JDBC driver (e.g., postgresql-42.7.8.jar) and distribute it using the helper script:

  1. Copy any additional JDBC drivers to the staging folder and distribute.

  1. Distribute the drivers to Tomcat.

  1. Verify the JARs are present in Tomcat lib.

context.xml

Database connection information for JNDI resources used by Pentaho is stored in context.xml.

  1. Open the file and review JNDI resources and credentials.

Start Pentaho Server

Run the server as the pentaho user to avoid permission issues.

  1. Start the server.

  1. Tail the Tomcat log (robust pattern).

Expected messages include:


Pentaho User Console (PUC)

The Pentaho User Console (PUC) is the web UI for creating and viewing content.

Link to Pentaho Server

Default credentials (change immediately after first login):

Pentaho User Console
  1. You also have the option to switch to the new login screen.

NEW - Pentaho User Console

If you have already entered your licensing details, then you will be redirected to the new User Console.


  • Check HTTP is responding:

  • Optional (remote access): open firewall and test from a client machine (adjust to your network policy):


Validate Repository after first run (click to expand)

Systemd (optional)

Create a systemd service to manage Pentaho at boot and on failure.

  1. Save the unit file as /etc/systemd/system/pentaho-server.service.

  1. Reload and start.

Manage the service:


Troubleshooting (click to expand)
  • HTTP 404 on /pentaho after startup: confirm "$TOMCAT_HOME/webapps/pentaho" exists, check catalina.*.log for deployment errors, and verify file permissions under $PENTAHO_SERVER.

  • Port 8080 already in use: change Tomcat port in server.xml or stop the conflicting service.

  • JDBC driver not found: verify the driver JARs (e.g., postgresql-*.jar, mysql-*.jar) exist in "$TOMCAT_HOME/lib".

  • Authentication to PostgreSQL fails: prefer scram-sha-256; review pg_hba.conf, restart PostgreSQL, and test psql -h 127.0.0.1 with the target user.

  • Jackrabbit schema issues: re-check repository.xml sections are set to postgresql.

  • License activation errors: check Tomcat logs in tomcat/logs/ for license/elm messages.


Licensing Manager

Pentaho Pro Suite 11.x uses a License Manager (cloud or local) to manage PDI & BA entitlements and verify EE plugins.

Licenses

Trial license

A 30-day trial license is included if you have downloaded from: Pentaho 30-day Trial

If you have dowwnloaded the GA binaries from: Pentaho Customer Portal, then you will require an Activation ID or your LIcensing URL.

If you have installed in an air-gapped envirnoment, you will need to request an offline license.

  1. Launch Pentaho Server > Administration > Licenses to open the Add License dialog.

  2. Click the + sign.

Add license
  1. Enter Activation code or your licensing URL:

Add License dialog
License Manager

Set license path environment variable

Create a PENTAHO_LICENSE_INFORMATION_PATH environment variable so the Pentaho Server consistently finds your license file.

  1. Ensure the target directory exists and is secured.

  1. Edit /etc/environment and add the line below (no export).

Append (or update) the following:

  1. Log out/log in or reload the environment and verify.

The PENTAHO_LICENSE_INFORMATION_PATH variable is now set.

Last updated

Was this helpful?