Persistent Data

Modified on Wed, 06 Sep 2023 at 10:50 AM

Labforward’s platform requires multiple data storage depending on which product is installed.


By default, all required storage for each specific installation is provided inside the Kubernetes cluster:

  • Platform - required by every installation
    • Rqlite 7.10.0
    • Postgres 13.41
    • RabbitMQ 11.9.3
    • MinIO (Configuration & Backup) 
    • MinIO (Business data)2
    • Redis 17.7.5
  • Labfolder & Labregister
    • MySQL 5.71
    • Elasticsearch  7.17.0
  • Laboperator
    • Postgres 14.2 & TimescaleDB 2.6.11
    • Connector manager
      • MongoDB 4.4.151
    • Workflow Editor
      • Postgres 14.01
Footnotes:
1 Can be replaced by external storage of the same type and version.
2 Can be replaced by any S3-compatible storage. Labforward recommends MinIO or AWS S3 Buckets. Features specific to other S3 storage may not be available.



Embedded & External

Any storage deployed inside the Kubernetes cluster in Labforward’s namespace is considered an embedded resource. Other storage is considered external.


By default, Labforward’s platform provides an embedded installation of all the data storage.


The client can use the admin dashboard to change to external data storage during or after installation. 


There is no automated data migration between storages. After changing to new storage, manual data migration may be required.


Trade-offs

  External Storage:

  • Optimizable based on the client’s specific scenario;
  • Can be deployed in a different location;
  • More flexibility to manage accesses outside the applications - for example, for debugging reasons;
  • Does not require data migration or downtime to move to the Kubernetes cluster;
  • The client will be asked and required to make some changes independently, such as database upgrades. Labforward will provide all the guidelines necessary to do it;
  • The client is responsible for the following:
    • Network connection with the Kubernetes cluster
    • Security of the data regarding external accesses;
    • Version updates;
    • Configuration and version compatibility with Labforward;

Embedded Storage:

  • Managed by Labforward using the standard release procedure;
  • Fewer management actions are required for the client’s admin;
  • Ensured to have compatible versions with the applications;
  • Client-specific customizations are limited and harder;
  • Deployed in the same disk location as the applications;
  • Out-of-the-box backup and restore solutions are included in the platform;
  • If you already have a Labforward installation without Kubernetes, migrating the data to the embedded storage will require downtime.




Kubernetes Storage

Kubernetes has different mechanisms to store the application's data depending on the cluster's storage options. The admin must provide a valid storage class. The cluster installed by Labforward uses openebs.io. For more details, check kubernetes storage classes.


Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article