This topic shows example hardware/software configurations for different LabKey Server installations. These are intended as starting guidelines only. Your own configuration should be adjusted to suit your particular requirements.
Small Laboratory Installation
The following configuration is appropriate for 10-20 users with small file and table sizes. We assume that the server and database are located on the same machine.
CPUs | 2+ CPUs or Virtual CPUs |
---|
RAM | 8GB (minimum) - 16GB (recommended) |
Disk Storage | 64GB for OS and LabKey binaries, 64GB for user file storage, 64GB for database storage |
Software | • OS: Linux • Java • PostgreSQL Database • See Supported Technologies for the specific versions to use. |
As usage increases, increase the amount of RAM memory to 16GB (and also increase the memory allocated to Java and the database accordingly).
Large Multi-project Installation
The following configuration is a starting place for a larger installation of many users working on multiple projects with large files and data tables. Note that as any organization scales, needs will grow and additional resources will need to be added.
We recommend placing the web server and the database server on different machines in order to optimize maintenance, update, and backup cadences.
Machine #1: Web Server
CPUs | 4+ CPUs or Virtual CPUs |
---|
RAM | 8GB (minimum) - 16GB (recommended) |
Disk Storage | 64GB for OS and LabKey binaries, 512GB for user file storage |
Software | • OS: Linux • Java • See Supported Technologies for the specific versions to use. |
Network | 1 GB/s |
Machine #2: Database Server
CPUs | 4+ CPUs or Virtual CPUs |
---|
RAM | 8GB (minimum) - 16GB (recommended) |
Disk Storage | 128GB for database storage |
Software | • OS: Linux • PostgreSQL Database • See Supported Technologies for the specific versions to use. |
|
Network | 1 GB/s |
Example Large Scale Installation
This topic provides an example of a large-scale installation that can be used as a model for designing your own server infrastructure. Testing your site by using a near-copy staging and/or test environment is good practice for confirming your production environment will continue to run trouble free.
Atlas Overview
The
Atlas installation of LabKey Server at the Fred Hutch Cancer Research Center provides a good example of how staging, test and production servers can provide a stable experience for end-users while facilitating the rapid, secure development and deployment of new features. Atlas serves a large number of collaborating research organizations and is administered by SCHARP, the Statistical Center for HIV/AIDS Research and Prevention at the Fred Hutch. The staging server and test server for Atlas are located behind the SCHARP firewall, limiting any inadvertent data exposure to SCHARP itself and providing a safer environment for application development and testing.
Reference:
LabKey Server: An open source platform for scientific data integration, analysis and collaboration. BMC Bioinformatics 2011, 12:71.
Staging, Production and Test Servers
The SCHARP team runs three nearly-identical Atlas servers to provide separate areas for usage, application development and testing:
- Production. Atlas users interact with this server. It runs the most recent, official, stable release of LabKey Server and is updated to the latest version of LabKey every 3-4 months.
- Staging. SCHARP developers use this server to develop custom applications and content that can be moved atomically to the production server. Staging typically runs the same version of LabKey Server as production and contains most of the same content and data. This mimics production as closely as possible. This server is upgraded to the latest version of LabKey just before the production server is upgraded, allowing a full test of the upgrade and new functionality in a similar environment. This server is located behind the SCHARP firewall, providing a safer environment for application development by limiting any inadvertent data exposure to SCHARP itself.
- Test. SCHARP developers use this server for testing new LabKey Server features while these features are still under development and developing applications on new APIs. This server is updated on an as-needed basis to the latest build of LabKey Server. Just like the staging server, the test server is located behind the SCHARP firewall, enhancing security during testing.
All Atlas servers run on commodity hardware (Intel/Unix) and store data in the open source PostgreSQL database server. They are deployed using virtual hardware to allow administrators to flexibly scale up and add hardware or move to new hardware without rebuilding the system from scratch.
Related Topics