Creating a GlusterFS snapshot captures a point-in-time copy of a volume so upgrades, configuration changes, and recovery tests can proceed with a known rollback point. Snapshots reduce risk during maintenance windows but do not replace off-cluster backups.

The gluster snapshot create command coordinates snapshot creation across the cluster and records the snapshot in GlusterFS metadata, making it available for listing, inspection, restore, or clone workflows. Snapshot creation is managed as a single cluster operation, even though it is taken per-brick under the hood.

Snapshot support must be enabled on the cluster and each brick needs enough free space to store snapshot metadata and copy-on-write changes. Heavy write workloads can consume snapshot space quickly and may degrade I/O performance; if an underlying snapshot runs out of space, the snapshot can become unusable for restore.

Steps to create a GlusterFS snapshot:

  1. List volumes to confirm the target name.
    $ sudo gluster volume list
    volume1
  2. Check that all bricks for the volume report Online as Y.
    $ sudo gluster volume status volume1
    Status of volume: volume1
    Gluster process                             TCP Port  RDMA Port  Online  Pid
    ------------------------------------------------------------------------------
    Brick 192.0.2.11:/bricks/brick1/volume1      49152     0          Y       2314
    Brick 192.0.2.12:/bricks/brick1/volume1      49152     0          Y       2197
    Self-heal Daemon on 192.0.2.11               N/A       N/A        Y       2055
    Self-heal Daemon on 192.0.2.12               N/A       N/A        Y       1988

    Creating snapshots while bricks are offline can produce incomplete snapshots, which may fail to restore cleanly.

  3. Review snapshot limits and activation behavior before creating new snapshots.
    $ sudo gluster snapshot config
    Snapshot System Configuration:
    snap-max-hard-limit 256
    snap-max-soft-limit 90%
    auto-delete disable
    activate-on-create enable

    snap-max-hard-limit blocks new snapshots once reached; activate-on-create controls whether new snapshots start in Activated state.

  4. Create a snapshot with a descriptive, unique name.
    $ sudo gluster snapshot create snap-volume1-2025-01-10 volume1 no-timestamp
    snapshot create: success: Snap snap-volume1-2025-01-10 created successfully

    Omit no-timestamp to let GlusterFS append a timestamp automatically.

  5. List snapshots for the volume to confirm it exists.
    $ sudo gluster snapshot list volume1
    snap-volume1-2025-01-10
  6. Review snapshot details when documenting snapshot rotation and change windows.
    $ sudo gluster snapshot info snap-volume1-2025-01-10
    Snapshot                Volume Name  Snap UUID                             Created At
    --------                -----------  ---------                             ----------
    snap-volume1-2025-01-10  volume1     3c1a9d8a-92b1-46d0-9e2f-2e90103a2e8c    2025-01-10 12:05:14

    When activate-on-create is set to disable, activate new snapshots with gluster snapshot activate SNAPSHOT_NAME before clone/restore workflows.