Before setting up an Autheo Chain validator, ensure your environment meets all of the following requirements.
1. Hardware requirements
| Resource | Minimum | Recommended |
|---|
| CPU | 16 vCPU | 32 vCPU |
| RAM | 32 GB | 64 GB |
| Storage | 1 TB NVMe SSD | 2 TB NVMe SSD (RAID 10) |
| Network | 1 Gbps | 10 Gbps |
| OS | Ubuntu 22.04 LTS | Ubuntu 22.04 LTS |
MemIAVL requires an additional 8–16 GB of RAM above your process baseline. NVMe SSDs are mandatory — spinning disks and SATA SSDs are not supported.
2. Operating system
Ubuntu 22.04 LTS (64-bit) is the only officially supported production OS.
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install -y \
curl wget jq git build-essential \
unattended-upgrades fail2ban ufw
Increase file descriptor limits:
echo "* soft nofile 65535" | sudo tee -a /etc/security/limits.conf
echo "* hard nofile 65535" | sudo tee -a /etc/security/limits.conf
3. Firewall configuration
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw allow 26656/tcp
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw allow 26656/tcp
sudo ufw enable
4. NFT license requirement
A Sovereign NFT license in BOUND status is protocol-enforced before validator creation. You cannot submit MsgCreateValidator without it.
See License setup for a full walkthrough.
License tiers:
| Tier | Purpose | Annual THEO emission |
|---|
| Sovereign | Create and operate a validator | ~187,969 |
| Prime | External delegation | ~18,797 |
| Core | External delegation | ~1,880 |
5. Funded operator account
Check your balance:
autheod q bank balances <cosmos-address> -o json | jq
Token conversion:
| THEO | aauth |
|---|
| 1 | 1,000,000,000,000,000,000 |
| 10 | 10,000,000,000,000,000,000 |
| 1,000 | 1,000,000,000,000,000,000,000 |
6. Synchronized full node
autheod status | jq '.SyncInfo.catching_up'
true — still syncing; do not proceed
false — fully synced; safe to continue
Pre-launch checklist