Skip to content

OctoPerf On Premise Infra

Architecture

OctoPerf On Premise Infra is a standalone application running as a few Docker containers. It is the same as OctoPerf Saas, but runs on your own computers.

Being based on Docker has numerous advantages:

  • Easy to setup: easily run the application within minutes using docker-compose,
  • Clean: Remove the Docker containers and you're done. Your system is kept clean,
  • Flexible configuration: Docker gives you the full control over configuration, ranging from Single Machine setup to High Availability clustered environments.

OctoPerf On Premise Infra Setup takes only a few minutes.

Architecture

OctoPerf On Premise Infra is made of 4 components:

  • OctoPerf Enterprise-Edition: Backend server exposing the Rest Api consumed by the User-Interface,
  • OctoPerf UI: Frontend server which serves the User-Interface,
  • OctoPerf Documentation: small nginx server serving the documentation,
  • and Elasticsearch: Database used to persist all your datas.

In addition to this, an Nginx Load Balancer exposes the whole application on a single port. All those components are publicly available as Docker images on Docker HUB.

Prerequisites

OctoPerf On Premise Infra has the following installation requirements:

  • CPU: At least 4 cores, Intel Core I7 or Xeon recommended,
  • RAM: At least 8GB RAM, 16GB recommended,
  • Disk: At least 10GB on a modern SSD, 100GB recommended (to have enough space for test results),
  • Operating system: Linux, Ubuntu (most recent LTS). With latest Docker version,
  • Server: both physical and virtual machines are supported, however physical servers are recommended,
  • Software: Latest version of Docker CE.

For stability reasons, we recommend to use separate machines for running OctoPerf On Premise Infra and execute load tests.

Quick Setup

This installation guide setups OctoPerf On Premise Infra on a single machine. The installation can be completed within 5 minutes by unexperienced users.

Info

This setup using Docker Compose is provided as an example. OctoPerf On Prem Infra can be indifferently setup in various docker-compatible environments like Kubernetes or Rancher. Those two last options require knowledge of the mentioned technological stacks which is not covered in the present guide.

Docker

To install Docker, run the following command on a Terminal and follow the instructions:

curl -sSL https://get.docker.com/ | sh

Configuration

Download the HTTP version of the configuration files. If you are looking to install an HTTPS server, follow our dedicated HTTPS guide after this one.

Unzip the previously downloaded file in any location and open the enterprise-edition folder. You will see the following:

  • config: configuration files for OctoPerf
  • license: folder for the license file,
  • nginx: contains the files related to the nginx configuration, (Dockerfile and config.json),
  • docker-compose.yml: defines the services to start via docker compose,
  • Makefile: provides convenient commands like make to run OctoPerf EE.

The only configuration change we recommend you to make is to edit config/application.yml to define the server.hostname property with the IP / Hostname of the machine running OctoPerf:

server:
  hostname: YOUR_HOSTNAME

By Default, the web-server runs with http protocol on port 80. Replace YOUR_HOSTNAME by the hostname of your machine. It must be a hostname reachable publicly or at least from the perspective of your users and OctoPerf agents.

Start the Application

To start your OctoPerf server:

  • Run make,
  • Browse to http://<YOUR_HOSTNAME> you should see OctoPerf's UI, after a minute you should be able to login:

OctoPerf EE Login

Warning

In case the UI doesn't show up or the server takes more than a minute to start, check our troublehooting guide to investigate further.

Getting started

OctoPerf EE comes completely empty. We've listed a few key steps to follow in order to get stated quickly.

Login

You can either:

Warning

These two options being mutually exclusive, we recommend to choose one or the other quickly, otherwise you may not be able to salvage all your previous work.

Administration

After you have been able to login for the first time, it is time to configure a superadmin account.

Simply restart the OctoPerf server and login again to see the administration menu.

Note

This is an important step because the administrator will be able to manage every aspect of the OctoPerf server from within the UI.

Emails

In order to receive activation email links, reset passwords or simply configure notifications inside OctoPerf you need to configure your SMTP server.

Warning

If you no SMTP server defined, only the superadmin will be able to recover accounts, make sure to appoint a few of them in order to be able to do so.

OctoPerf agent

In order to generate load during your tests, an OctoPerf On Prem Agent is required. This can be done by:

Learn and share

Congratulations! The setup is now complete. Using the workspace features, you can share your load generator and projects with other OctoPerf user.

We invite you to follow our self training guide in order to get started with OctoPerf.