Deploy On-Premise Infra on an offline server¶
This tutorial explains how to setup OctoPerf's On-Premise Infra on an offline server.
Prerequisites¶
This tutorial requires:
- A computer with docker installed and an Internet access preferably with the same OS than the offline server (for compatibility purposes),
- A possibility to transfer files to the offline server:
- you have access remotely to the offline server from your local machine:
scp
or any alternative can be used to transfer files to the remote server - you have no connection at all to the offline server: you need to transfer files physically - for example using a USB key
- you have access remotely to the offline server from your local machine:
If one of these elements is missing it will not be possible to perform an offline installation of OctoPerf's On-Premise Infra.
Overview¶
The tutorials will teach you how to deploy an OctoPerf's On-Premise Infra offline. This involves:
- Docker offline installation,
- docker-compose offline installation,
- Download OctoPerf's HTTP Offline version,
- Download OctoPerf's docker images as a file.
For each one of these files, we will proceed to transfer the package to the offline server and then run the installation process as usual.
The next sections of this tutorial will be divided between the On-Premise Infra installation and the On-Premise Agents installation, both have similar prerequisites, but the agent machines will require less files to be transferred so we handle them in a different section.
On-Premise Infra installation¶
Docker¶
Docker provides an installation procedure that relies on downloading a package.
Just make sure to transfer the package to the offline server before you unpack it. Docker will be required for the next steps of this procedure so make sure to install it first.
Docker compose¶
Make sure you have the docker compose plugin installed:
ubuntu@pop-os:~$ docker compose version
Docker Compose version v2.16.0
if the plugin is not installed, please follow the instructions here.
On-Premise Infra config files¶
The Zip containing all the required configuration files is available here. This file will be used by docker-compose to execute and configure all the required components.
On-Premise Infra docker images¶
We are going to use docker save to download the required images into a .tar file. The command lines below are for version 13.2.2 of OctoPerf.
Warning
To get the latest version of these images check our changelog or the docker-compose.yml file inside the enterprise-edition.zip. The nginx image version is located inside the dockerfile of the nginx folder. Do not use the tag "latest" as it may cause some inconsistencies.
If you haven't pulled the images locally, make sure to do so first:
docker pull octoperf/enterprise-edition:13.2.2 octoperf/enterprise-ui:13.2.2 octoperf/octoperf-ui:13.2.2 octoperf/enterprise-documentation:13.2.2 octoperf/utility-server:13.2.2 docker.elastic.co/elasticsearch/elasticsearch:7.17.11 nginx:latest
Alternatively you can simply launch the makefile in order to get all the images downloaded and use docker images -a
to list them.
Then use docker save to make a tar file out of all of them:
docker save -o enterprise.tar octoperf/enterprise-edition:13.2.2 octoperf/enterprise-ui:13.2.2 octoperf/octoperf-ui:13.2.2 octoperf/enterprise-documentation:13.2.2 octoperf/utility-server:13.2.2 docker.elastic.co/elasticsearch/elasticsearch:7.17.11 nginx:latest
Now we must transfer the enterprise.tar
file to the offline host and execute the docker load command:
docker load -i enterprise.tar octoperf/enterprise-edition:13.2.2 octoperf/enterprise-ui:13.2.2 octoperf/octoperf-ui:13.2.2 octoperf/enterprise-documentation:13.2.2 octoperf/utility-server:13.2.2 docker.elastic.co/elasticsearch/elasticsearch:7.17.11 nginx:latest
Installation¶
Now that all the prerequisites are in place, you can proceed with the usual installation procedure.
Agent installation¶
Docker¶
Docker provides an installation procedure that relies on downloading a package.
Just make sure to transfer the package to the offline server before you unpack it. Docker will be required for the next steps of this procedure so make sure to install it first.
Agent docker images¶
We are going to use docker save to download the required images into a .tar file. Here's the command line for version 13.2.2 of OctoPerf.
Warning
Make sure to check our changelog to get the latest version of these images. Do not use the tag "latest" as it may cause some inconsistencies in case we have released a preview of our next version.
If you haven't first pulled the images locally, make sure to do so first:
docker pull octoperf/docker-agent:13.2.0 octoperf/jmeter-standard:13.2.0 octoperf/jmeter-webdriver:13.2.0
Then use docker save to make a tar file out of all of them:
docker save -o agent.tar octoperf/docker-agent:13.2.0 octoperf/jmeter-standard:13.2.0 octoperf/jmeter-webdriver:13.2.0
Now we must transfer the agent.tar
file to the offline host and execute the docker load command:
docker load -i agent.tar octoperf/docker-agent:13.2.0 octoperf/jmeter-standard:13.2.0 octoperf/jmeter-webdriver:13.2.0
Installation¶
Now that all the prerequisites are in place, you can proceed with the usual installation procedure.