Skip to content
Pieter Verschaffelt edited this page Oct 30, 2025 · 47 revisions

Welcome to the Unipept wiki! This wiki serves as a source of information not present in the code base. The software pages contain information about best practices and some style guidelines, the hardware pages are mostly about how to install servers.

These wiki pages are spread over the different Unipept repositories in such a way that each deals with the responsibilities of the associated repository. An overview with links to all installation and deployment guides, however, is also presented here.

Deploying Unipept (Fully Automated)

In order to speed up the update and deployment process of Unipept, we have developed a fully automatic update script. This script is part of the unipept-utilities repository and can be found in the scripts/update-uniprot folder. Updating and deploying Unipept through this script is the easiest and recommended way. Follow this guide for more information.

Note that the Unipept API server will not automatically be started by this script, this is the only step that still needs to be performed manually. If you are, however, interested to see how the individual components of the Unipept ecosystem are set up, you can follow the steps and guides below.

Deploying Unipept (Step-by-Step)

Unipept Database

Unipept Index

Unipept API

Unipept Web Application

Unipept CLI

Server configurations

This section provides an overview of all the different server configurations that are active for the Unipept infrastructure.

Unipept implementation

Some Unipept data structures have been heavily customized and adapted for our use case. Since these implementations are typically non-trivial, we present some guides here that explain how these are structured.

Database

Infrastructure

A lot of different machines are required in order to power the Unipept platform and all things that are associated with it. We have a few physical machines and a few virtual machines (either powered by these physical machines, or the infrastructure provided by Ghent University). What follows is a summary of all the different machines that are part of our backend infrastructure.

Matt

  • Hostname: matt.ugent.be
  • Type: Physical machine
  • CPU: 2 x Intel Xeon 4410Y (12 cores / 24 threads, 2 - 3.9GhZ, 30MiB cache)
  • RAM: 768GiB
  • Storage: 6 * 16TiB HDD 7.2K SATA (3.5 inch), 4 * 3.84TiB SSD SATA (2.5 inch)
  • OS: Debian 12 (with Proxmox)
  • Installed in: June, 2023
  • Description: Matt is a physcial machine, located in S10 (self-managed) which hosts some virtual machines.

Patty

  • Hostname: patty.ugent.be
  • Type: VM, managed by matt.ugent.be
  • CPU: 12 threads
  • RAM: 300GiB
  • Storage: 4TiB SSD
  • Seq read benchmark speed: 1.2GB/s
  • Seq write benchmark speed: 733MB/s
  • OS: Ubuntu 22.04 LTS
  • Description: Patty is a VM that runs one of the Unipept API instances.

Selma

  • Hostname: selma.ugent.be
  • Type: VM, managed by matt.ugent.be
  • CPU: 12 threads
  • RAM: 300GiB
  • Storage: 4TiB SSD
  • OS: Ubuntu 22.04 LTS
  • Description: Selma is a staging VM that can be used to built new versions of the Unipept database and test new versions of the Unipept API.

Barney

  • Hostname: barney.ugent.be
  • Type: VM, managed by matt.ugent.be
  • CPU: 2 threads
  • RAM: 4GiB
  • Storage: 4TiB HDD
  • OS: TrueNAS
  • Description: Barney is a VM that is used for TimeMachine backups for the devices of Bart, Pieter and Tibo.

Krusty

  • Hostname: krusty.ugent.be
  • Type: VM, managed by matt.ugent.be
  • CPU: 12 threads
  • RAM: 128GiB
  • Storage: 2TiB SSD, 4TiB HDD
  • OS: Ubuntu 22.04 LTS
  • Description: Krusty is a general purpose VM that is intended for computationally heavy tasks and research.

Snowball

  • Hostname: snowball.ugent.be
  • Type: VM, managed by matt.ugent.be
  • CPU: 12 threads
  • RAM: 128GiB
  • Storage: 1TiB SSD, 4TiB HDD
  • OS: Ubuntu 22.04 LTS
  • Description: Snowball is a general purpose VM that is intended for computationally heavy tasks and research.

Meeseeks

  • Hostname: meeseeks.ugent.be
  • Type: Physical machine
  • CPU: 2 x Intel Xeon E5 - 2643 v4 (6 cores / 12 threads, 3.4GHz, 20MiB cache)
  • RAM: 512GiB
  • Storage: 8 x 1.2TiB 10K SAS HDD, 2 x 480GiB SSD
  • OS: Ubuntu 20.04 LTS (with Xen Hypervisor)
  • Installed in: June, 2016
  • Description: Meeseeks is a physical machine, located in S10 (self-managed) which hosts some virtual machines.

Rick

  • Hostname: rick.ugent.be
  • Type: VM, managed by meeseeks.ugent.be
  • CPU: 1 x Intel Xeon E5 - 2643 v4 (6 cores / 12 threads, 3.4GHz, 20MiB cache)
  • RAM: 150GiB
  • Storage: 2.5TiB HDD
  • OS: Ubuntu 20.04 LTS
  • Description: Rick is a virtual machine and is one of Unipept's API-servers

Morty

  • Hostname: morty.ugent.be
  • Type: VM, managed by meeseeks.ugent.be
  • CPU: 1 x Intel Xeon E5 - 2643 v4 (6 cores / 12 threads, 3.4GHz, 20MiB cache)
  • RAM: 150GiB
  • Storage: 1.5TiB HDD
  • OS: Ubuntu 20.04 LTS
  • Description: Morty is a virtual machine and is being used as our staging server. It provides a nearly-identical setup to Rick and can be used to thoroughly test new features before deploying them to the public.

Mycroft

  • Hostname: mycroft.ugent.be
  • Type: Physical machine
  • CPU: 2 x Intel Xeon E5 - 2650 v2 (8 cores / 16 threads, 2.6GHz, 20MiB cache)
  • RAM: 320GiB
  • Storage: 8 x 900GiB 10K SAS HDD (6.3TiB directly useable), 2 * 160GiB SSD, 5 * 300GiB 10K SAS HDD (1.2TiB directly useable)
  • OS: Debian 12 (with Proxmox)
  • Installed in: September, 2014
  • Description: Mycroft is a physical machine, located in S10 (self-managed) which hosts some virtual machines.

Sherlock

  • Hostname: sherlock.ugent.be
  • Type: VM, managed by mycroft.ugent.be
  • CPU: 8 threads
  • RAM: 160GiB
  • Storage: 4TiB HDD
  • OS: Ubuntu 22.04 LTS
  • Description: Sherlock is a VM that runs one of the Unipept API instances.

Aldridge

  • Hostname: aldridge.ugent.be
  • Type: VM, managed by mycroft.ugent.be
  • CPU: 4 threads
  • RAM: 64GiB
  • Storage: 1TiB HDD
  • OS: Windows 11
  • Description: Aldridge is a Windows VM that can be used for general purpose testing of Windows software.

VM's managed by DICT

Some of the virtual machines that are being used by Unipept are hosted by the central UGent infrastructure.

UnipeptWeb

  • Hostname: unipeptweb.ugent.be
  • Type: VM, managed by DICT (Ghent University)
  • CPU: 2 cores
  • RAM: 4GiB
  • Storage: 100GiB
  • OS: Ubuntu 20.04 LTS
  • Description: Hosts the Unipept web application frontend (see: https://unipept.ugent.be)

UnipeptAPI

  • Hostname: unipeptapi.ugent.be
  • Type: VM, managed by DICT (Ghent University)
  • CPU: 2 cores
  • RAM: 4GiB
  • Storage: 60GiB
  • OS: Ubuntu 22.04 LTS
  • Description: Load balancer that redirects requests for the Unipept API (https://api.unipept.ugent.be).

Unipept internals

Clone this wiki locally