Welcome to Edera

Customer training for authorized users only

Only users with authorized email domains can access this portal.
Contact support@edera.dev if you need assistance.

Using the Edera Installer


The Edera installer automates the deployment process using a containerized approach. This method works for most on-premises and cloud deployments outside of managed Kubernetes services like AWS EKS.

How the Installer Works

The installer consists of two scripts that work together:

  1. install.sh - Handles file transfer and remote execution on target nodes
  2. edera-install.sh - Executes the container-based installation on the target node

Both scripts need to be created in your working directory alongside your GAR key.

Installation Steps

Step 1: Set Up Your Working Directory

Create a local directory for the installation files:

mkdir edera-install
cd edera-install

Place your key.json (GAR key from Edera support) in this directory.

Step 2: Create the Installation Scripts

Create two executable scripts in your working directory.

install.sh

This script transfers files to the target node and initiates the installation:

#!/bin/bash
set -e

# Transfer installation script and credentials to target node
scp edera-install.sh root@${INSTALLER_IP}:/root/edera-install.sh
scp key.json root@${INSTALLER_IP}:/root/key.json

# Execute installation on target node
ssh root@${INSTALLER_IP} 'chmod +x /root/edera-install.sh && /root/edera-install.sh'

Make it executable:

chmod +x install.sh

edera-install.sh

This script runs on the target node and performs the actual installation:

#!/bin/bash
set -e

# Authenticate to Edera container registry
cat /root/key.json | docker login -u _json_key --password-stdin us-central1-docker.pkg.dev

# Pull and run the Edera installer container
docker run --rm \
  --privileged \
  -v /:/host \
  us-central1-docker.pkg.dev/edera-staging/protect/installer:latest

# Installation complete - reboot required
echo "Installation complete. The node will reboot to load the Edera hypervisor."

Step 3: Run the Installer

Execute the installer against each target node:

INSTALLER_IP=<node_ip_address> ./install.sh

Replace <node_ip_address> with the IP address of your target node.

For multiple nodes, repeat for each one:

INSTALLER_IP=10.0.1.10 ./install.sh
INSTALLER_IP=10.0.1.11 ./install.sh
INSTALLER_IP=10.0.1.12 ./install.sh

Step 4: Node Reboot

The installation requires a node reboot to load the Edera hypervisor. This happens automatically as part of the installation process.

Important: Plan your installation during a maintenance window. Nodes will be unavailable during the reboot.

Step 5: Verify Installation

After the node reboots, verify that Edera services are running:

ssh root@<node_ip>
systemctl list-units --type=service | grep protect

You should see six Edera services active:

  • protect-cri - Container Runtime Interface
  • protect-daemon - Core daemon
  • protect-networking-daemon - Networking components
  • protect-orchestrator - Orchestration layer
  • protect-storage-daemon - Storage management
  • protect-preinit - Pre-initialization service

What’s Happening Under the Hood

Understanding what the installer does helps when troubleshooting:

Privileged Execution

  • The installer runs with --privileged flag to access system resources
  • This is required to install kernel modules and configure the hypervisor

Host Filesystem Access

  • The installer mounts the host root filesystem (/:/host)
  • This allows it to modify system configuration and install binaries

Registry Authentication

  • Docker config credentials persist after installation
  • This ensures nodes can pull Edera container images

Hypervisor Integration

  • The installer configures Xen hypervisor components
  • Node reboot loads the hypervisor at boot time

Kubernetes Integration (Optional)

If you’re integrating with Kubernetes, continue to the next section. Otherwise, your installation is complete.

Up next: Kubernetes Integration β†’

Last updated on