Files
spinifex/docs/creating-an-environment
Ben Duncan 48012a4058 refactor: rename all documentation from hive to spinifex
- Rename .claude/rules/hive.md → spinifex.md
- Update CLAUDE.md component description
- Rename doc directories: hive-admin-cli → spinifex-admin-cli, etc.
- Rename doc files: hive-cluster-stats, hive-code-consolidation, etc.
- Bulk update all markdown files across docs/ tree
- Update internal docs: CLUSTER-INSTALL, TESTING, DEVNOTES, BRANCHES
2026-03-18 01:19:05 +00:00
..

title, description, category, tags, resources
title description category tags resources
Creating an Environment End-to-end guide: user accounts, SSH keys, VPCs, AMIs, and launching instances. Environments
environment
vpc
ec2
ssh
title url
Spinifex Repository https://github.com/mulgadc/spinifex
title url
Debian Cloud Images https://cloud.debian.org/images/cloud/bookworm/latest/

Creating an Environment

End-to-end guide: user accounts, SSH keys, VPCs, AMIs, and launching instances.

Table of Contents


Overview

This guide walks through the complete workflow for creating a production-ready Spinifex environment.

Steps:

  1. Create a user account
  2. Import or create SSH keys
  3. Create a VPC and subnet
  4. Select and import an AMI
  5. Launch EC2 instances
  6. Connect via SSH
  7. Monitor instance health

Instructions

1. Import SSH Key

aws ec2 import-key-pair --key-name "spinifex-key" --public-key-material fileb://~/.ssh/id_rsa.pub

2. Create VPC

aws ec2 create-vpc --cidr-block 10.200.0.0/16
export SPINIFEX_VPC="vpc-XXX"

aws ec2 create-subnet --vpc-id $SPINIFEX_VPC --cidr-block 10.200.1.0/24
export SPINIFEX_SUBNET="subnet-XXX"

3. Import AMI

./bin/spx admin images list
./bin/spx admin images import --name debian-12-x86_64
export SPINIFEX_AMI="ami-XXX"

4. Launch Instance

aws ec2 run-instances \
  --image-id $SPINIFEX_AMI \
  --instance-type t3.small \
  --key-name spinifex-key \
  --subnet-id $SPINIFEX_SUBNET \
  --count 1

5. Connect via SSH

ps auxw | grep $INSTANCE_ID
# Look for: hostfwd=tcp:127.0.0.1:<port>-:22

ssh -i ~/.ssh/spinifex-key ec2-user@127.0.0.1 -p <port>

Troubleshooting

Instance stuck in pending

Check the Spinifex daemon and QEMU logs for boot errors:

ls ~/spinifex/logs/
cat ~/spinifex/logs/daemon.log

Verify the AMI exists and architecture matches your host:

aws ec2 describe-images --image-ids $SPINIFEX_AMI

SSH connection refused

cloud-init takes 30-60 seconds to configure networking and SSH after boot. Wait and retry.

Verify the SSH port forwarding is active:

ps auxw | grep hostfwd

Ensure you're using the correct key and port:

ssh -i ~/.ssh/spinifex-key ec2-user@127.0.0.1 -p <port>