Skip to main content

Overview

A datastore is the storage location where Ironcore Backup Solution (IBS) writes chunks and snapshots. Each datastore has its own deduplication pool, retention policy, access control, and verification schedule. This page describes the supported backends, how to provision a new datastore, and how to organise data with namespaces.
Prerequisites
  • Administrator role on the Polystack platform
  • At least one of: local mount, networked filesystem, S3-compatible bucket, or LTO tape library
  • Network reachability from the backup server to the backend

Backend Types

Local Filesystem

XFS, ext4, or ZFS on directly-attached storage. Highest write throughput and lowest latency for the Primary DC site.

Replicated Filesystem

ZFS send/receive, GlusterFS, or a clustered POSIX filesystem. Survives single-disk or single-node failure within the same site.

S3-Compatible Object Storage

Native S3 API. Use on-premises object stores or cloud providers for elastic capacity and geographic redundancy.

LTO Tape Library

LTO-5 and newer for offline, compliance-grade archival. Managed by the Tape Worker — see Tape and Object Storage.

Create a Local Datastore

Open Backup Solution Configuration

Navigate to Backup Solution > Datastores > Add Datastore.

Enter datastore details

Set:
  • Name: ibs-primary
  • Type: Local Filesystem
  • Path: /mnt/backup/ibs-primary (must be empty)

Configure scheduled tasks

Define schedules for:
  • Garbage Collection: weekly
  • Verification: weekly
  • Prune: daily

Set notification group

Attach the operational notification group so alerts dispatch to the right channel.

Save

Click Create.
The datastore is created. Initial chunks directory and atime tracking are set up automatically.
Do not host two datastores on the same filesystem. Each datastore is the authoritative owner of chunks under its path. Sharing a path leads to chunk collision and silent data loss during garbage collection.

Create an S3-Backed Datastore

S3-compatible datastores are ideal for the Backup site or for elastic archival.

Open Datastores

Navigate to Backup Solution > Datastores > Add Datastore.

Choose S3 type

Set:
  • Name: ibs-archival
  • Type: S3-compatible
  • Endpoint: https://s3.<your-domain> (or your provider’s endpoint)
  • Bucket: polystack-backup-archival
  • Region: default

Provide credentials

Enter the access key and secret key. The credentials are stored encrypted in the backup server configuration.

Set throughput and request monitoring

Optionally set:
  • Request count threshold — alert if requests exceed N per minute
  • Bandwidth limit — cap egress in MiB/s

Configure schedules

Set garbage collection, verification, and prune schedules. S3 datastores typically verify less often than local datastores due to cost considerations.

Save

Click Create.
The datastore status transitions to online once a probe write/read succeeds.
For very large archival datasets, enable the S3 datastore’s request-rate-threshold with a notification destination. This alerts you to runaway sync jobs that could incur unexpected egress costs.

Namespaces

Namespaces partition a datastore into logical scopes while preserving cross-namespace deduplication. Use namespaces to separate environments, teams, or compliance scopes.

Open the datastore

Open Backup Solution > Datastores > (select datastore) > Namespaces.

Create a namespace

Click Add Namespace and enter a name (for example, production).

Assign access

From the namespace detail panel, click Permissions and grant the appropriate roles to users and tokens.

Save

Click Save.
The namespace appears in the datastore detail view and is selectable in backup creation dialogs.

Move Backup Groups Between Namespaces

Backup groups can be relocated between namespaces in the same datastore without re-uploading chunks. The move is atomic with per-group locking for data consistency.

Find the group

Open the group in Backup Solution > Snapshots.

Click Move

Click Move and pick the target namespace.

Confirm

Confirm the move. The operation is online — chunks are not transferred.
The group appears under the destination namespace.

Datastore Lifecycle Tasks

TaskDefault FrequencyPurpose
Garbage CollectionWeeklyReclaims chunks no snapshot references
VerificationWeeklyRe-reads chunks and validates SHA-256
PruneDailyApplies retention policy, removes outdated snapshots
SyncPer-job scheduleReplicates to remote datastores
Garbage collection runs in two phases: mark and sweep. The mark phase enumerates referenced chunks; the sweep phase removes unreferenced chunks older than a grace period (default 24 hours) to allow concurrent backup jobs to complete without race conditions.

Capacity Monitoring

Usage Telemetry

The Dashboard exposes used bytes, deduplication ratio, projected fill date, and write throughput per datastore.

Threshold Alerts

Configure free-space alerts at 80%, 90%, and 95% utilisation. Alerts dispatch via the configured notification group.

S3 Cost Telemetry

For S3 datastores, request count and egress bandwidth are exposed for cost monitoring.

Capacity Forecasting

The Statistics panel projects fill date based on a rolling 14-day growth rate. Use this to plan expansion.

Troubleshooting

The backup server cannot reach the backend. For local datastores, check the mount status. For S3 datastores, check credentials and endpoint reachability.
Force a re-probe
ironcore-backup datastore probe ibs-primary
Large datastores with many snapshots can take significant time to GC. Run GC during off-hours. If unacceptable, partition the datastore by creating a second datastore for new data.
Confirm the underlying filesystem reports correct free space. A failed prune job may have left expired manifests in place — check Tasks for prune failures.
Sync jobs that re-upload existing chunks generate excess S3 requests. Check the deduplication hit rate on sync tasks. Consider increasing the chunk cache size on the source datastore.

Next Steps

Retention Policies

Define retention windows applied to each datastore

Replication and Sync

Mirror datastores between Primary and Backup sites

Access Control

Grant per-datastore and per-namespace permissions

Infrastructure Sizing

Plan datastore capacity for incremental, full, and archival retention