PMD Deployment Guide

Preface

The PMD-Mesh is envisioned as a network of PMD instances acting as IDS Data Providers and Data Consumers. Every PMD instance has the same underlying base - A PMD Server (PMD-S). While the architecture of the PMD-mesh is still work in progress, core functionalities of a PMD-S instance can already be deployed. The usage of docker and docker-compose for that purpose, ensures an easy transition of an initial standalone server into the PMD-Mesh.

Note: firewalls and restrictive environments can cause various issues with the docker setup, which we are unable to foresee/test/cover. While we will try to help troubleshoot such issues, try to consult other online ressources as well. If you manage to find a solution without our help - Let us know and we can add it to the Troubleshooting/FAQ section

System Requirements

Required:

  • A Linux x86-64 system (bare metal or virtualised) with at least 2 CPU Cores allocated
  • At least 1GB of available disk space with additional space for applications
  • Admin (root) privileges
  • Docker Runtime >= 19.03.13
  • Docker compose >= 1.27.41
  • Git
  • RAM >= 4 GB
  • Activated Container support in the Kernel must be available

Recommended:

  • Python >= 3.5
    • if not part of your system, python 3 can be installed via Miniconda or run in a docker container

For a subsequent incorporation into the PMD mesh (WIP) it is advisable to fulfil the following requirement as well:

  • Linux Kernel >= 5.6 or WireGuard kernel module (DKMS)

Setup your environment

  • make sure to install all the requirements
  • if you haven’t done so, ensure the user is in the docker group (otherwise prefix all docker commands with sudo):
    1
    2
    3
    
    # Add user to docker group
    # NOTE: this is equivalent to granting admin privileges
    usermod -a -G docker $(whoami)
    
tags: PMD Deployment guide

Back to top

Copyright © BMBF Plattform MaterialDigital, 2021.