Onboarding (AMD)
Registering an AMD server on the DeTEE network will allow you to collect rewards by running VMs for the DeTEE users.
To be able to run the server on the network, it must support SEV SNP, meaning it must be part of these 3 generations:
- AMD EPYC 7003 (Milan)
- AMD EPYC 8004 (Siena)
- AMD EPYC 9004 (Genoa or Bergamo)
- AMD EPYC 9005 (Turin)
More information about the capabilities of each generation can be found on the AMD website. Our efforts are strictly focused on the SEV-SNP capability.
DeTEE CLI
You will need the DeTEE CLI to create your operator wallet. The wallet is required to receive rewards.
The server has a key, but that is used only for authentication, and not to receive rewards.
The Kernel
TL/DR: You need a new kernel, so install Fedora or Archlinux on the server. We will write here when newer generations are supported.
DeTEE SNP Daemon
TL/DR: To download the installation script, run:
wget https://registry.detee.ltd/daemon/install_daemon.sh
The script will guide you through the rest of the steps, that are also detailed below.
Installation
The script looks as follows:
#!/bin/bash
set -e
echo "Creating folders..."
mkdir -p /var/lib/detee/boot/
mkdir -p /etc/detee/daemon/vms/
mkdir -p /usr/local/bin/detee/
mkdir -p /opt/detee_vms/
echo "Installing qemu-system-x86..."
pacman -S qemu-system-x86 qemu-img --noconfirm
echo "Downloading detee-snp-daemon, systemd unit file and config..."
wget -O /etc/detee/daemon/sample_config.yaml https://registry.detee.ltd/daemon/config.yaml
wget -O /usr/local/bin/detee-snp-daemon https://registry.detee.ltd/daemon/detee-snp-daemon
chmod +x /usr/local/bin/detee-snp-daemon
wget -O /usr/local/bin/detee/start_qemu_vm.sh https://registry.detee.ltd/daemon/start_qemu_vm.sh
chmod +x /usr/local/bin/detee/start_qemu_vm.sh
wget -O /etc/systemd/system/detee-snp-daemon.service https://registry.detee.ltd/daemon/detee-snp-daemon.service
echo "Take a look at /etc/detee/daemon/sample_config.yaml"
echo "Modify config based on your setup and save it to /etc/detee/daemon/config.yaml"
echo "Press enter when done (this will attempt to start the daemon)"
read my_var
echo "Starting detee-snp-daemon..."
systemctl daemon-reload
systemctl start detee-snp-daemon.service
You can also copy-paste this to your server and run it. The script pulls the daemon, the systemd unit file and the config.
DeTEE SNP Daemon Config
You will need to configure the daemon by modifying /etc/detee/daemon/config.yaml
.
The default configuration does not offer public IPs, and offers by default 16 vCPUs,
20GB of Memory and 400GB of storage. Modify these values depending on how many resources
you want to rent to the network.
Here is a sample configuration that includes public IPv4 and IPv6 IPs:
# Get the CLI from https://hub.docker.com/r/detee/detee-cli
# And use `detee-cli account` to find your operator wallet
owner_wallet: "x52w7jARC5erhWWK65VZmjdGXzBK6ZDgfv1A283d8XK"
network: "testnet"
max_cores_per_vm: 16
max_vcpu_reservation: 31
max_mem_reservation_mb: 30000
# If you don't have seconday IPs, just comment out this section
# If you have secondary IPs, add them here. They will get assigned in order to VMS
network_interfaces:
- driver: "MACVTAP"
device: "eno8303"
ipv4_ranges:
- first_ip: "173.234.136.154"
last_ip: "173.234.136.155"
netmask: "27"
gateway: "173.234.136.158"
- first_ip: "173.234.137.17"
last_ip: "173.234.137.17"
netmask: "27"
gateway: "173.234.137.30"
ipv6_ranges:
- first_ip: "2a0d:3003:b666:a00c:0002:0000:0000:0011"
last_ip: "2a0d:3003:b666:a00c:0002:0000:0000:fffc"
netmask: "64"
gateway: "2a0d:3003:b666:a00c::1"
# if you have extra disks, you can mount them at /opt/detee_vms_2/ or similar
# and add them here
volumes:
- path: "/opt/detee_vms/"
max_reservation_gb: 700
# Make sure IPs in this range are free, since they will get randomly assigned
public_port_range:
start: 30000
end: 50000
max_ports_per_vm: 5
# This is the multiplier we recommend during the testnet phase
price: 20000
Configuration details
The only network driver currently supported is MACVTAP. If you have a subnet that does not work with MACVTAP, please contact us on our Discord Server, and we will improve the code to allow you to host your network using IPVTAP or a Bridge setup.
The private IPv4 connection and port forwarding capabilities are enabled through QEMU. VMs will not be able to communicate with each other using this setup.
Please feel free to experiment with the price. A price of 20000 is recommended by our team in the testnet.
Easy way to get free LP
- tell your friends about DeTEE
- convince them to write about us on social media so that they get an airdrop
- ask them to use their airdrop to create a VM on your server