Introduction
Application snapshots enable you to capture and save the complete state of an edge application instance on a Virtual Machine (not a Container) at a specific point in time. Each snapshot includes both the application instance's configuration settings and all associated volume data, providing you with a comprehensive backup that you can use to quickly restore your application instance to a previous working state.
Prerequisites
Before working with application snapshots, you should be familiar with:
- Edge applications and edge application instances
- Application Volume Instance Overview
- Basic application instance deployment concepts
System requirements
- EVE-OS version 10.8.0 or greater on your edge nodes
- Application volumes using ext4 and ZFS format
- SysAdmin, SysManager and SysOperator roles in ZEDEDA Cloud
Key Benefits
Application snapshots provide important advantages for managing edge application instances:
- Rapid recovery from updates: Quickly revert to a known-good application instance state if an update causes problems or unexpected behavior
- Reduced downtime: Fast rollback capability minimizes service interruption during incidents
- Safe testing environment: Test new configurations or updates with confidence, knowing you can revert in seconds if issues occur
- Configuration and data consistency: Snapshots capture both settings and data together, ensuring complete state restoration
- Storage efficiency: Copy-on-write technology minimizes storage impact for most volumes, with space usage growing only as changes accumulate
- Per-application control: Manage snapshots independently for each application instance without affecting other application instances on the same edge node
How It Works
Application Snapshot is a feature of ZEDEDA Cloud that enables you to save the current state (take a snapshot) of an application instance and then to rollback that instance to that state. Snapshots and rollbacks will help you recover from problems your application instance might encounter during upgrade, data migration, or normal operation.
When you take a snapshot of an application instance, EVE-OS saves the instance’s current configuration and volume instance data. While rolling back, the app instance will be shut down, restored to its snapshot's state and rebooted. You can take separate snapshots for each application instance running on an edge node, giving you the flexibility to roll each instance back to a specific point in time.
An application snapshot captures two essential components of your edge application instance:
Configuration snapshot: This includes all application settings such as CPU and memory allocations, network configurations, resource assignments, volume mappings, and cloud-init configurations. ZEDEDA Cloud stores this configuration on both the cloud side and on the edge node, ensuring you can restore the exact application setup.
Volume snapshot: This captures the complete state of all disk volumes attached to your application instance at the moment the snapshot is taken. The volume snapshot ensures that your application instance's data corresponds exactly to the configuration snapshot, providing a complete point-in-time backup. Note that snapshots always capture all volumes associated with the application instance—you cannot create snapshots of individual volumes.
Volume instance names
Volume instance names are post-fixed with a version number: “_0”, for example. The Purge and Update operation automatically increments this number when it creates new volume instances, indicating that the application instance is using the new volume instances. Normally, the Purge and Update process will delete the older versions. When you create a new snapshot, however, the Purge and Update process will leave the older versions. When you rollback to a volume instance’s snapshot, the Purge and Update process will delete the newer volume instance version and reactivate the older instance version.
Operational considerations
Before you begin using snapshots in your enterprise, there are a few important things to consider.
- Each application instance can only have a single snapshot.
- Each snapshot can only be used for a rollback a single time.
- Snapshots always apply to all volume instances associated with the application instance.
- Snapshots of entire edge nodes are not supported.
- When you create a snapshot, the Purge and Update process will delete an existing snapshot to make room for the new one.
- After you delete a snapshot, the associated files are not immediately deleted from your device's drives. These files will not be deleted until the application instance reboots.
Snapshot scope
Snapshots are created on a per-application instance basis, not per edge node. This means each application instance on your edge node can have its own snapshot, giving you fine-grained control over which application instances you back up and restore. You can manage snapshots for individual application instances without affecting other application instances running on the same edge node.
When snapshots are created
Snapshots are created in two ways:
- If your edge device has the capability, you can take backups of your edge app instance even if it is air-gapped or offline for long periods of time, as described in Manage an Edge Application Instance.
- Or you can take a snapshot of VM data volumes during the process of purging and upgrading, as described in Manage Application Snapshots.
Storage efficiency
EVE-OS uses a copy-on-write approach for efficient snapshot management. When you first create a snapshot, it consumes minimal storage space, typically only 1-2% of your volume size for metadata. As you make changes to your application, the snapshot grows incrementally to store only the differences between the current state and the snapshot.
For example:
- Initial snapshot: ~1% storage overhead
- After 1 day: ~5-10% additional storage
- After 1 week: ~20-30% additional storage
- After 1 month: ~50-70% additional storage
Purgeable volumes require different handling. These volumes can be completely replaced during purge operations, so EVE-OS must retain the entire volume as a backup. A snapshot of a 100GB purgeable volume requires 200GB total storage (the original 100GB plus the 100GB snapshot).
Snapshot limitations
Maximum snapshots: ZEDEDA Cloud currently supports one snapshot per application instance. When you create a new snapshot while one already exists, EVE-OS automatically deletes the older snapshot to make room for the new one. This ensures you always have the most recent snapshot available for rollback.
Single-use rollback: Each snapshot can only be used for a rollback operation one time. After you roll back to a snapshot, you cannot use that same snapshot again. If you need another rollback point, you must create a new snapshot.
Supported volume types: Snapshots work with ext4-based and ZFS-based volumes. Container volumes and CSI volumes are not currently supported for snapshots.
All volumes included: Snapshots always capture all volumes associated with your application instance. You cannot create selective snapshots of individual volumes.
Resource availability: While snapshots provide powerful rollback capabilities, restoration may not be possible if the edge node's state has changed significantly. For example, if hardware resources like network interfaces have been removed from the edge node or allocated to another application instance, you won't be able to restore a configuration that depends on those resources. Always verify that required resources are available before relying on snapshots for rollback.
Edge node snapshots not supported: You cannot create snapshots of entire edge nodes. Snapshots work only at the individual application instance level.
Important considerations for disaster recovery
Application snapshots are designed to help you recover from problems during upgrades, configuration changes, or normal operations. However, they are not meant to replace your existing disaster recovery strategies. ZEDEDA strongly recommends that you continue to use the disaster recovery strategies provided by your underlying infrastructure.
For example, if your application instance uses a database, your database provider likely offers more comprehensive backup and recovery capabilities than what snapshots can provide. Use application snapshots to supplement your existing disaster recovery strategies, not to replace them. This layered approach gives you the best protection for your edge application instances and data.
Next Steps
Learn how to work with application snapshots: