This project defines a containerized deployment of the perfSONAR archive using Docker Compose. It includes:
-
A one-time downloader for perfSONAR components
-
OpenSearch node for data storage and search
-
Logstash for data processing
-
OpenSearch Dashboards for visualization
This container is responsible for preparing the installation environment for other components. It runs only once, clones the perfSONAR Git repositories at the specified PERFSONAR_VERSION and makes them available for subsequent containers.
Main OpenSearch container, running with custom configuration and required security setup.
Ingests and transforms perfSONAR metrics, sending data to OpenSearch.
Web-based dashboard frontend for visualizing data in OpenSearch.
Each container (opensearch-node, logstash, opensearch-dashboards) is built with a custom image that includes a custom entrypoint script. On the first run, the entrypoint executes perfSONAR setup scripts stored in the shared volume.
git clone https://github.com/perfsonar/perfsonar-archive-docker
cd perfsonar-archive-docker
OPENSEARCH_VERSION=2.18.0
LOGSTASH_VERSION=8.11.0
PERFSONAR_VERSION=5.2.0
docker compose up --build
The first time you run, the perfsonar-downloader will populate the shared volumes. After that, the OpenSearch stack will start using those resources.
Once the containers are up and running, the dashboard UI should be available at:
Use this interface to explore data indexed by Logstash and visualize it through OpenSearch Dashboards.
To log into the dashboard, you'll need the admin credentials generated during the archive setup process.
🔐 You can retrieve the admin password by running the command below:
docker compose exec opensearch-node grep -w admin /usr/lib/perfsonar/archive/auth_setup.out
To stop and remove containers:
docker compose down
To remove all volumes (
docker compose down -v