What onboarding sets up on AWS
| What | What it is for |
|---|---|
The IAM role ZoorikStorageOperator | Created by the script you run in AWS CloudShell. It can read EC2 and Systems Manager, and run commands through Systems Manager. It can also create, modify, attach, detach and delete volumes, and create and delete snapshots. |
The agent on each instance | Amoeba installs it through AWS Systems Manager when you onboard the instance. It tells Zoorik which disks and mounts the instance has, and runs the move and every expand and shrink. |
Pool volumes | The gp3 volumes in the instance’s Availability Zone. After the move they hold your data, and Amoeba adds, grows or removes them as the pool changes size. |
Safety snapshots | An EBS snapshot of each source volume. Taken before Amoeba deletes the volume, and kept for a few days. |
- The role trusts Zoorik’s AWS account only with your organisation’s external ID. Zoorik’s own AWS identity may only assume roles named ZoorikStorageOperator, and read AWS prices.
- New pool volumes take the KMS key of the first encrypted source volume, so encryption at rest carries over.
- Systems Manager keeps each command’s history in your account.
What your VMs need
- A running EC2 instance with at least one EBS data volume. The data must sit on mounted filesystems.
- The instance is managed by AWS Systems Manager, with the SSM agent connected.
- A Nitro instance type that exposes EBS as NVMe.
- Spare volume attachment slots, since the pool’s volumes attach next to the old ones during the move. If there are too few, Amoeba declines the instance and says why.
- Network access out to Zoorik, and to the hosts the agent downloads from.
- On Linux, the instance needs a recent kernel with btrfs support, and every service that holds a data mount open running under systemd. It also needs rsync, btrfs-progs and psmisc installed first: the installer doesn’t add them.
The product guide has the full list.
Questions about Amoeba on AWS
Which EBS volumes does Amoeba work on?
The non-root EBS data volumes of running EC2 instances, on Windows and Linux. Amoeba never touches the root volume. On Azure, it works with managed disks: see Amoeba for Azure.
Which EBS volume type does Amoeba’s pool use?
The pool uses gp3 volumes, in the instance’s Availability Zone. Each instance gets one pool. Each pool volume gets at least the baseline performance gp3 includes, and more when the instance’s own load needs it.
Do my services on EC2 go down during the move?
Only at the switch. Amoeba copies the data while your services run, then switches each mount to the gp3 pool by itself once the copy has caught up. The services using those mounts restart then, and again only if a failed switch is retried, never for an expand or shrink.
Do I pay for both sets of volumes during the move?
Yes, but only while the move runs. The source volumes are deleted once the switch is checked. Then you pay for their snapshots for the few days they’re kept.
How is the saving worked out on AWS?
At list price from the AWS Price List API, measured against the source volumes. AWS charges for EBS per GB-month. A saving can be negative, and Amoeba shows it as it is.
