Before You Begin
Please note the following before starting the install process:
- V203 virtual devices support single and two-disk (separate OS and data disks) configurations. Disks can be expanded after deployment.
- The shipped VHD file is unique, so it cannot be used to deploy multiple virtual CacheDrives. For example, if you wish to deploy two virtual CacheDrives, two unique VHD files would be needed.
- We do not include an Amazon agent, so some of the Amazon Virtual Machine console functionality is not available.
Note: The installation process has been tested with the t3 instance type. Other instance types may not work due to differences in virtual hardware.
Recommended VM Sizing
We recommend using t3.micro or larger with at least 256 GiB of disk space.
For a more in-depth guide on VM sizing, please see the section ‘AWS V203 Virtual Machine Sizing Guide’ below.
Preparing the Virtual Machine
- Create a Virtual Machine using Linux as the OS (Debian/Buster is recommended).
- Stop the VM.
- Create the Grub disk.
- Navigate to EC2/Volumes.
- Create a 1 GB EBS volume as the boot disk in the same geographical region as the VM. We will refer to this as the Grub disk in this document.
- Attach the Grub disk to the VM and start the virtual machine.
- Start the VM and initialize the boot disk.
- Start the VM with the Grub disk attached (2 attached disks total including the disk created with the VM).
- SSH into the VM.
- Download the zipped V203 image provided by Morro using wget or another HTTP download utility. Example:
wget $url
where $url is the URL provided by Morro. - Debian/Buster may not have the unzip utility installed by default. To install it, type:
sudo apt-get update sudo apt-get install unzip
- Unzip the file using unzip:
unzip $filename
where $filename is the file downloaded in step 4c. The extracted file will have a .raw extension. - Find the Grub disk device path with:
cat /proc/partitions
and look for a partition of 1 GB in size. The device path should be /dev/nvmeXn1. - Use the dd command to write the raw image to the 1 GB disk (Grub disk):
dd if=$filename of=/dev/nvmeXn1 bs=1M
where $filename is the .raw file extracted in 4e. If the device path found in step 4f is not /dev/nvmeXn1, use the found path instead.
- Stop the VM and detach the original Debian/Buster disk. Delete the EBS for the original disk if desired.
Creating the CacheDrive
- Create the data disk and attach it to the VM.
For a single disk install, create a 32 GB or larger EBS volume for the data disk. This disk will be used for the Morro OS and cache, so at least 1 TB is recommended. If you wish to use separate OS and data disks, create a 32 GB or larger (64 GB recommended) fast disk for the OS and a larger volume (use slower, cheaper storage if desired) for data. - Detach and reattach the Grub disk as /dev/xvda. /dev/xvdX is the Xen Virtual Disk.
- For single-disk installs, attach the data disk created in step 1 as /dev/xvdb. For two-disk installs, attach the OS disk as /dev/xvdb and the data disk as /dev/xdvc.
- Make sure the disks are attached correctly:
- Boot the VM.
- You can take screenshots of the instance periodically if desired:
- When the CacheDrive is ready for discovery, the instance screenshot will look like this:
- You can take screenshots of the instance periodically if desired:
Claiming the Device
If you’re creating a new account, follow the directions here and manually add the new device by UUID.
If you’re adding the device to an existing account, go to the Morro Cloud Manager, click Devices, then Add Gateway. Add your new VM using the UUID shown in the serial console or the disk image delivery email.
AWS V203 Virtual Machine Sizing Guide
Overview
The Morro Data CacheDrive in Cloud V203 is deployed as a virtual machine in AWS. AWS supports a variety of VM types and sizes to suit different performance and budget goals. This guide will help you determine the right VM specifications for your CacheDrive.
VM Requirements
The following are the minimum requirements for V203. They are suitable only for evaluation purposes and will not have adequate performance or capacity for production environments. With the minimum disk size of 32 GB, only 16 GB of disk space will be allocated to cache (the rest is reserved for the operating system, working space, etc.) and the maximum file size is 8 GB.
The network interface should be ENA (Elastic Network Adapter). ENI (Elastic Network Interface, used in t2 instance type) and EFA (Elastic Fabric Adapter, used in x1) will not work.
Note: The installation process has been tested with the t3 instance type. Other instance types (such as t2) may not work due to differences in virtual hardware.
Minimum Requirements (evaluation only)
- Intel 64-bit CPU
- 1 GiB of memory
- 32 GiB Virtual Disk
Considerations for Best Practices
CacheDrives do not require a lot of computational power, but they thrive on high I/O (network and storage) throughputs. AWS allows you to change the VM type easily as your needs evolve.
Virtual Disk Size
Virtual Disk performance is important. We recommend starting with a Virtual Disk size of at least 256 GiB. A larger cache will reduce the frequency of cache misses and provide higher overall system performance.
The following chart shows the amount of storage reserved for the operating system and working space for each Virtual Disk size. The remaining storage will be allocated to cache.
VDisk Size (GiB) | Reserved (GiB) | Notes |
< 32 | 16 GiB | |
32 to 128 | 16 to 48 | Linearly increasing |
128 to 512 | 48 to 96 | Linearly increasing |
512 to 2048 | 96 to 192 | Linearly increasing |
> 2048 | 192 |
vDisk Type and Size (Separate OS and Data Disks)
Use the reserved column in the chart above to determine a reasonable disk size for a separate OS volume. We recommend using 64 GB or more of the fastest available storage to maximize database performance. The disk can be expanded to a larger capacity later.
The data volume is less sensitive to disk performance differences, so you may choose to use slower storage to reduce costs. We recommend a minimum size of 128 GB for the data disk, which can be expanded later.
vCPU Type and Quantity
This is the most important factor for performance. Although CacheDrives are not computationally intensive, we recommend a minimum of 2 vCPUs (t3.micro and above).
Please note that the client PC (whether physical or virtual VDI) can also impact performance. To achieve good overall performance, each component (vCPU, Virtual Disk, and VPC) of both the CacheDrive and client PCs must perform optimally.