> This page is for Data Protection.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.eon.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.eon.io/_mcp/server.

# EC2: Restore a Volume (Instant Restore)

This article explains how to restore an EBS volume using instant restore.

Instant restore makes the volume available in minutes by serving data on demand while the volume hydrates in the background.
For the standard restore method that fully restores the volume before it becomes available, see [EC2: Restore a Volume].

[EC2: Restore a Volume]: /data-protection/restoring/restore-cloud-workloads/aws/ec2/ec2-restore-a-volume

This article walks you through:

1. Restoring the volume in the Eon console
2. Attaching it to a Linux instance in your AWS account
3. Installing Eon's agent software to make the volume usable

## Restore the volume with instant restore

#### Before you start

Before you restore a volume with instant restore, make sure:

* A

  restore account has been connected

  to your Eon account.

* The AWS restore account meets these requirements:
  * The restore account has a KMS key that grants access to `EonRestoreAccountRole` and `EonRestoreNodeRole`.
  * The restore account has a VPC and subnet that meet [restore server connectivity requirements].
    By default, Eon uses the default VPC and subnet, but you can [customize the restore server connectivity] if needed.

* The source EBS volume is partitioned.
  Instant restore doesn't support raw (unpartitioned) volumes.

[restore server connectivity requirements]: /data-protection/cloud-workloads/aws/restore-accounts/aws-restore-server-requirements#ec2-and-s3

[customize the restore server connectivity]: /data-protection/cloud-workloads/aws/restore-accounts/aws-customize-restore-server-configuration

#### Find the snapshot you want to restore

1. In your

   inventory

   , select the EC2 resource you want to restore.
   The **Resource Details** drawer opens.

2. Click the **Eon snapshots** tab.
   You'll see a calendar view with colored dots on the days when snapshots were taken.
   There can be more than one snapshot per day.

   When you click a day, a list of Eon snapshots taken that day is displayed below the calendar.

3. Expand the snapshot you want to restore.
   Click **Specific volume**, select the volume you want to restore, and then click **Restore**.
   The **Restore Volume** wizard opens.

#### Choose the restore account and enable instant restore

In the Restore Volume wizard, you're taken through a two-step process.
The first step is to choose a restore account and configure instant restore.

1. Choose the cloud account you want to restore the volume in.

2. Turn **Use instant restore** on.

   When instant restore is enabled, the volume restores to the same region as your vault.
   Region selection isn't available because instant restore requires the vault and restored volume to be in the same region.

3. Click **Next**.

#### Set the restored volume details

In the **Configuration** step, you'll set the restored volume details.

1. Choose an **Availability zone** to deploy the restored volume to.

2. Choose whether to turn **Keep original settings** on or off.

   * If you leave **Keep original settings** on, the restored volume retains the same settings as the original volume.

   * If you turn it off, you can customize the volume's **Type**, **Size**, and **IOPS**.

3. In **Encrypt this resource**, select a KMS key that grants access to `EonRestoreAccountRole` and `EonRestoreNodeRole`.
   You can either select a key from the **Encryption key** list or enter a **Key ARN**.

4. If you want to retain the tags that were present when the snapshot was taken, turn **Keep original tags** on.
   Otherwise, turn **Keep original tags** off.

   In both cases, the new volume is tagged with `eon:restore=true`.
   Tags with the `eon:` prefix aren't included in the original tags because Eon uses this prefix for internal operations.

#### Start the restore job

Click **Start** to start the asynchronous restore job.

You can monitor the restore job on the

Restore jobs tab

in the Jobs page.

After the job completes, the volume becomes available in your AWS account.

#### Attach the volume to a Linux instance

You'll need an Amazon Linux 2023 or Red Hat Enterprise Linux 8+ instance (x86\_64 architecture) in the same availability zone where you restored the volume.
The instance performs the hydration, so it needs network connectivity to Eon's vault and control plane.
See [restore server connectivity requirements] for details.

[aws-attach-volume]: https\://docs.aws.amazon.com/ebs/latest/userguide/ebs-attaching-volume.html

Find or create a Linux instance that meets these requirements in the same availability zone where you restored the volume, and [attach the volume to it][aws-attach-volume].

#### Install the eon-blockdev agent

The `eon-blockdev` agent exposes the volume as a usable block device while simultaneously hydrating it.
The agent uses the instance's IAM role credentials to access Eon's vault (S3) and report progress to Eon's control plane (DynamoDB).

1. Connect to the Linux instance.

2. Run these commands to download and install the agent:

   ```bash
   BASE=https://assets.public.eon.io/prod/eon-blockdev/latest
   curl -fsSL "$BASE/SHA256SUMS" -o /tmp/SHA256SUMS
   RPM=$(awk '{print $2}' /tmp/SHA256SUMS | head -1)
   curl -fsSL "$BASE/$RPM" -o "/tmp/$RPM"
   ( cd /tmp && sha256sum -c SHA256SUMS )
   sudo dnf install -y "/tmp/$RPM"
   ```

3. After installation, the agent verifies the instance can access Eon's vault and control plane, then detects the restored volume and exposes it as `/dev/nbdN` (for example, `/dev/nbd0`).

4. Confirm the volume is available:

   ```sh
   lsblk
   ```

   Look for an `nbdN` device whose size matches the restored volume, with a partition under it (for example, `nbd0` with `nbd0p1`).
   You can ignore any `nbdN` entries with a size of 0B; they're unused device slots created by the nbd kernel module.

#### Mount the volume

1. Create a directory where you want to mount the volume:

   ```sh
   sudo mkdir /data
   ```

   For these instructions, we'll use `/data`, but you can use any name you want.

2. Mount the volume's partition to the directory you created.
   Replace `$NBD_PARTITION` with the partition name from the `lsblk` output (for example, `nbd0p1`):

   ```sh
   sudo mount /dev/$NBD_PARTITION /data
   ```

3. Confirm the volume is mounted:

   ```sh
   df -h
   ```

   > **Tip**
   >
   > If you want the volume to mount to the instance on every boot, see [Making an Amazon EBS volume available for use](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-using-volumes.html) from AWS.

The volume is now usable and continues hydrating data in the background.
You can access your data immediately while the full restore completes.

## Monitor hydration progress

To monitor the volume's hydration progress, run:

```bash
eon-blockdev status
```

When the output shows `"success": true`, the hydration process is finished.
Confirm the volume is the correct size by comparing reported size from AWS with the snapshot size in Eon.