MAnaging Multiple Projects On Kubernetes

MaMPOK

MaMPOK is an offline Kubernetes management tool. It is intented to use Kubernetes cloud computing at de.NBi. It provides methods to deploy e.g. web apps as containers automatically. It automates file transfers via a S3 object storage, takes care of container images, and keep track of a large number of projects.

Main features

  • Local kubernetes cluster management tool
  • Support the management of multi- project/omics/webApps environments
  • Adds a higher level of container organisation
  • Automation of cluster deployment processes, if needed directly attached to analysis pipelines

MaMPOK data organization

MaMPOK’s functionality is based on a local folder structure containing the projects intented for management (e.g. RNAseq projects and WiLSON as webApp). Files required for each project as well as a project JSON files, optionally derived from an analysis pipeline, classify the project and what webservices has to be provided. This JSON file, called MaMPlan (MaMPOK-project-plan) holds information about the project name, the necessary files and the tool/container to be used as web application. Needed information can be divided into single JSON files, called or derived from MaMplates (MaMPOK-templates). From this locally stored information, MaMPOK creates all necessary Kubernetes objects to provide a online web application.

Managing webApps via MaMPOK

MaMPOK is intended to keep track of multiple webApps linked to locally stored projects on a Kubernetes cluster. The typical environment is a large scale bioinformatics facility dealing with multiple types of omics data and large cluster environments. It provides a set of functions that are crucial to manage numerous Apps. For instance, it allows to list all projects having a distinct webApp on the cluster, to re-deploy or to renew individual deployments for e.g. applications (e.g. WiLSON), type of projects (e.g. RNAseq) or container image versions.