OctoPerf On Premise Infra¶
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
- config/application.yml: main configuration file for the OctoPerf server,
- 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 port80
. ReplaceYOUR_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:
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:
- Creating an On-Premise Provider: providers are groups of load generators,
- Registering an On-Premise Agent within the previously created On-Premise Provider.
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.