--query 'Images | sort_by(@, &CreationDate) | reverse(@) | [*].[ImageId, Name, State, CreationDate]' --output table) for NODE in "${NODES[@]}"; do NODE_AMI=$(kubectl get node "$NODE" -o json | jq -r '.metadata.labels["eks.amazonaws.com/nodegroup-image"]') EDERA_PROTECT_VERSION=$(echo "$IMAGE_DATA" | grep "$NODE_AMI" | awk '{print $3}') echo "Node: $NODE | AMI: $NODE_AMI | Edera: $EDERA_PROTECT_VERSION" done } List AMIs aws ec2 describe-images --filters Name=name,Values="*edera*" --query 'Images[*].[ImageId,Name,CreationDate]' --output table SSH reconnection after reboot The Edera installer reboots the instance into a new kernel. AWS instances typically take 1-3 minutes to come back up, but it can take longer depending on instance type and initramfs generation time., ℹ️ If you need the account id for our AMI please contact support@edera.dev AWS debugging utilities Get EKS node AMI & Edera version edera_aws_node_version() { NODES=( $(kubectl get nodes --no-headers | awk '{print $1}') ) echo "Fetching AWS image data..." IMAGE_DATA=$(aws ec2 describe-images --owners --query 'Images | sort_by(@, &CreationDate) | reverse(@) | [*].[ImageId, Name, State, CreationDate]' --output table) for NODE in "${NODES[@]}"; do NODE_AMI=$(kubectl get node "$NODE" -o json | jq -r '.metadata.labels["eks.amazonaws.com/nodegroup-image"]') EDERA_PROTECT_VERSION=$(echo "$IMAGE_DATA" | grep "$NODE_AMI" | awk '{print $3}') echo "Node: $NODE | AMI: $NODE_AMI | Edera: $EDERA_PROTECT_VERSION" done } List AMIs aws ec2 describe-images --filters Name=name,Values="*edera*" --query 'Images[*].[ImageId,Name,CreationDate]' --output table SSH reconnection after reboot The Edera installer reboots the instance into a new kernel. AWS instances typically take 1-3 minutes to come back up, but it can take longer depending on instance type and initramfs generation time."> AWS troubleshooting – Edera - LLM Cache

AWS troubleshooting – Edera

AWS troubleshooting

AWS debugging utilities

Get EKS node AMI & Edera version

edera_aws_node_version() {
  NODES=( $(kubectl get nodes --no-headers | awk '{print $1}') )
  echo "Fetching AWS image data..."
  IMAGE_DATA=$(aws ec2 describe-images --owners <account_id>  --query 'Images | sort_by(@, &CreationDate) | reverse(@) | [*].[ImageId, Name, State, CreationDate]'     --output table)

for NODE in "${NODES[@]}"; do
    NODE_AMI=$(kubectl get node "$NODE" -o json | jq -r '.metadata.labels["eks.amazonaws.com/nodegroup-image"]')
    EDERA_PROTECT_VERSION=$(echo "$IMAGE_DATA" | grep "$NODE_AMI" | awk '{print $3}')
    echo "Node: $NODE | AMI: $NODE_AMI | Edera: $EDERA_PROTECT_VERSION"
  done
}

List AMIs

aws ec2 describe-images --filters Name=name,Values="*edera*" --query 'Images[*].[ImageId,Name,CreationDate]' --output table

SSH reconnection after reboot

The Edera installer reboots the instance into a new kernel. AWS instances typically take 1-3 minutes to come back up, but it can take longer depending on instance type and initramfs generation time.

If your SSH connection drops during installation, wait before retrying:

# Retry loop - attempts every 10 seconds for up to 5 minutes
for i in $(seq 1 30); do
  ssh -o ConnectTimeout=5 -o StrictHostKeyChecking=no user@<instance-ip> echo "up" && break
  echo "Attempt $i failed, retrying in 10s..."
  sleep 10
done

Alternatively, use EC2 Instance Connect to reconnect from the AWS Console without needing to wait for SSH to become available on a known IP.

If the instance does not come back after 5 minutes, check the instance’s system log in the AWS Console (Actions > Monitor and troubleshoot > Get system log) for boot errors.

Runtime not detected

Check for the RuntimeClass

  1. Check that the RuntimeClass exists:
kubectl get runtimeclass
  1. Ensure pod spec includes:
spec:
     runtimeClassName: edera

If kubelet isn’t detecting the Edera runtime, you may be missing the required CRI socket configuration.

Set the container-runtime-endpoint

The below should be used for debugging purposes only.

  1. Edit the kubelet config on the node:
sudo vi /etc/systemd/system/kubelet.service.d/10-kubelet-args.conf
  1. Add to the KUBELET_ARGS line:
   --container-runtime-endpoint=unix:///var/lib/edera/protect/cri.socket
  1. Apply changes:
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart kubelet
  1. Confirm runtime is in use:
ps aux | grep kubelet | grep edera
kubectl get nodes -o wide