This topic provides guidelines for determining hardware and software requirements for a LabKey Server installation. Note that the configurations described here can be applied to both physical machines (such as laptops and desktops) or to virtual environments (such as Amazon AWS and VirtualBox).

General Considerations

One Machine or Two? Should you install the web server (i.e., LabKey Server) and the database server on the same machine, or should you install each on their own machines? For small installations where you don't anticipate much growth in the future, you can install both servers on the same machine. But in cases where you anticipate increased traffic, users, or data storage, we recommend splitting up the web and database servers onto different machines, which makes it easier to scale up individual factors, whether it be file storage, database storage, etc. Separating the web and database servers also has the advantage of allowing different update and backup cadences for each machine. Also each machine can be independently secured, providing two barriers, instead of one.

How Big Should the Machine(s) Be? There are three basic metrics to consider for each machine:

  • number of processors (CPUs or virtual CPUs)
  • memory size (RAM)
  • file storage size
These metrics apply to both the web server and the database server. Your decisions about these metrics should be based on the number of anticipated users, the type of work and processing to be performed, and the amount of data to be processed. The following examples may apply to your case:
  • Projects that involve extensive export/import of database data (such as ETLs), may require more CPUs and RAM memory on both the web and database servers.
  • Projects that involve extensive file storage, such as Flow or gene sequences, may require increased file storage on the web server, or an off-server storage solution such as S3 storage or a file share.
  • Projects that involve many users and extensive processing jobs, may require more CPUs and memory on the web server.
  • Projects where you anticipate to grow over time, either in the number of users, the amount of data stored, or the amount of processing required should plan accordingly for the future demands on the servers.

Example Systems

Small Laboratory Installation

For detailed metrics see Example Hardware/Software Configurations

Large Multi-Project Installation

For detailed metrics see Example Hardware/Software Configurations.

File Storage

LabKey Server requires storage space for files (for example, the file repository and pipeline root).

  • 256GB storage is sufficient for most purposes, but the specific requirements vary widely depending on the size of the file data.
  • Heavy users of flow assays require 512GB storage. This storage can either be attached to the LabKey Web Server or you can utilize a network attached storage system managed by your institution.
In addition, file storage for the full-text search index is required. NEVER use an NFS filesystem or AWS EFS for the full-text search index.

TLS/SSL Configuration

LabKey Server supports TLS 1.2 and 1.3. Earlier versions of TLS are not supported. Learn more in this topic:

Database User Permissions

What permissions should LabKey Server have on the database server? If your organization provides you a database server on a cluster, you are generally not allowed full super-user or sysadmin permissions. At a minimum, LabKey Server should have "CRUD" (Create-Read-Update-Delete) permissions on the database server. Permissions to create and drop schemas are required for initial install and upgrade work afterwards. Sysadmin / super-user permissions may be necessary in some cases for initial install of some components.

Related Topics

Was this content helpful?

Log in or register an account to provide feedback


previousnext
 
expand allcollapse all