Skip to content

Customize Kraken Installation

This page describes the configuration files included in the Kraken .zip archive.

It provides a guide in case you need to customize your installation.

Shell Script

The kraken.sh (and kraken-vagrant.sh on Windows) exports several environment variables:

  • KRAKEN_VERSION: The kraken version, checkout the download page to list all available version,
  • KRAKEN_HOST_UID and KRAKEN_HOST_UNAME: The host user id and name, used to run Docker containers using the same user that started Kraken,
  • KRAKEN_HOST_GID and KRAKEN_HOST_GNAME: The host group id and name, used to run Docker containers using the same group that started Kraken,
  • KRAKEN_HOST_DATA and KRAKEN_DATA: Used to map the data folder inside the started Docker containers to the host machine data folder.

These variables are used when starting the Kraken stack using docker-compose. The backend also transfers these variables to all load test command executions. Please check out the documentation regarding the configuration of these commands.

Docker Compose File

The docker-compose.yml configuration file defines the whole Docker stack for Kraken:

It contains a network named kraken, used for cross-container communication, and defines several containers:

The following diagram explains the whole stack:

Kraken Architecture

Note

Communication between Docker containers is often done using their names. For example, the kraken-analysis calls the Grafana API using the http://kraken-granfa:3000 hostname and the Storage backend using http://kraken-storage:8080.

The frontend applications always use HAProxy to make API calls.

Grafana Configuration

The grafana folder contains the Grafana Docker container configuration:

Note

The default admin password for Grafana is kraken. You can change it in the env.grafana file, key GF_SECURITY_ADMIN_PASSWORD.

InfluxDB Configuration

The influxdb folder contains the InfluxDB Docker container configuration:

Note

The default admin and user credentials are defined in the env.influxdb file:

  • INFLUXDB_ADMIN_USER=admin
  • INFLUXDB_ADMIN_PASSWORD=kraken
  • INFLUXDB_USER=user
  • INFLUXDB_USER_PASSWORD=kraken

HAProxy Configuration

The haproxy.cfg defines the configuration for HAProxy, used to serve the Kraken stack on port 80.

It redirects the following paths for the backend servers:

  • /api/storage to kraken-storage:8080
  • /api/command to kraken-executor:8081
  • /api/docker to kraken-executor:8082
  • /api/analysis to kraken-storage:8083
  • /api/static to kraken-static:80

It also redirects path for the frontend applications:

  • /administration to kraken-administration-ui:80
  • /gatling to kraken-gatling-ui:80
  • /grafana to kraken-grafana:3000

License File

To use a custom license file, copy your license.l4j to the root of the data folder.

Please contact sales@octoperf.com if you need a paid license.