Prepare Your VM

Prepare Your VM

At the end of this guide, you will have an AWS EC2 instance ready to install Edera for Containers.

ℹ️
This guide covers AWS EC2. Support for GCE and bare metal is coming soon.

Create an account

  1. Go to on.edera.dev
  2. Click Create Account
  3. Fill in your details and accept the Limited Use License Agreement
  4. Verify your email address

Get your license

  1. Log in to on.edera.dev
  2. Click Create License
  3. Click Show to reveal your license key

Your license key is used during installation to authenticate to the Edera registry.

⚠️
One license key can only be active on one machine at a time. Deactivate your node from the dashboard before reusing a license on a different machine.

Launch an EC2 instance

EderaON requires UEFI boot mode. The following OS and instance type combinations are supported:

System requirements

Your instance needs at least 4 GB RAM and 30 GB disk space. edera-check will verify these requirements before installation.

OSInstance TypesNotes
Ubuntu 24.04 LTSm5.large or largerDefault AMI boots UEFI
Amazon Linux 2023m5.large or largerDefault AMI boots UEFI
CentOS Stream 9t3.large or largerUse UEFI AMI from AWS Marketplace
RHEL 10t3.large or largerUse UEFI AMI from AWS Marketplace

Prerequisites

  • AWS CLI installed and configured
  • An SSH key pair in your target region

If you don’t have a key pair:

export KEY_FILE=edera-key.pem
aws ec2 create-key-pair --key-name edera-key --query 'KeyMaterial' --output text > $KEY_FILE
chmod 400 $KEY_FILE
ℹ️
If you haven’t configured the AWS CLI yet, run aws configure (or aws login for SSO) before proceeding.

Get your key name

The --key-name flag takes the key pair name as registered in AWS, not the local .pem filename:

export KEY_NAME=$(aws ec2 describe-key-pairs \
  --query 'KeyPairs[0].KeyName' --output text)

Get your subnet ID

export SUBNET_ID=$(aws ec2 describe-subnets \
  --query 'Subnets[0].SubnetId' --output text)

Set up a security group

Your security group must allow inbound SSH (port 22) from your IP:

export SG_ID=$(aws ec2 create-security-group \
  --group-name ederaon-sg \
  --description "EderaON evaluation" \
  --query 'GroupId' --output text)

aws ec2 authorize-security-group-ingress \
  --group-id $SG_ID \
  --protocol tcp \
  --port 22 \
  --cidr $(curl -s https://checkip.amazonaws.com)/32

Launch the instance

aws ec2 run-instances \
  --image-id ami-0d76b909de1a0595d \
  --instance-type m5.large \
  --key-name $KEY_NAME \
  --security-group-ids $SG_ID \
  --subnet-id $SUBNET_ID \
  --associate-public-ip-address \
  --tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=ederaon-test}]'
ℹ️
The AMI ID above is for us-west-2. Find the latest Ubuntu 24.04 AMI for your region on Ubuntu Cloud Images.

Connect to your instance

Once the instance is running, get its public IP:

export INSTANCE_IP=$(aws ec2 describe-instances \
  --filters "Name=tag:Name,Values=ederaon-test" \
  --query 'Reservations[*].Instances[*].PublicIpAddress' \
  --output text)

Then connect:

chmod 400 $KEY_FILE
ssh -i $KEY_FILE ubuntu@$INSTANCE_IP

Install Docker

sudo apt-get update && sudo apt-get install -y docker.io nftables
sudo systemctl start docker

Last updated on