added information about testnet

This commit is contained in:
ghe0 2025-01-26 01:37:16 +02:00
parent c534a7bbfd
commit 926970930b
Signed by: ghe0
GPG Key ID: 451028EE56A0FBB4
4 changed files with 225 additions and 3 deletions

@ -12,12 +12,12 @@
# Reference Guide
- [Using DeTEE Cloud](./detee_cloud/intro.md)
- [detee-cli](./detee_cloud/cli.md)
- [Node Operators](./operators/README.md)
- [detee-daemon]()
- [AMD](./operators/AMD.md)
- [Brain](./brain/README.md)
- [brain-node]()
- [Users]()
- [detee-cli]()
---

56
src/detee_cloud/cli.md Normal file

@ -0,0 +1,56 @@
# DeTEE CLI
Please be aware this product has been designed for:
- DevOps engineers
- Software developers
- Cybersecurity enthusiasts
Having basic understand of operating systems, containers, virtual machines and deployment of software is required in order to use the CLI.
### Installation
The DeTEE CLI is available as a container. First make sure you [install docker] https://docs.docker.com/desktop/).
Once docker is installed, use the following command to run the CLI:
```
docker run -it --name detee-cli --entrypoint /usr/bin/fish NOT_PUBLIC_YET
```
### Configure accounts
Inside the container, configure the accounts for your session:
```
ssh-keygen
# Hit enter a few times.
detee-cli account ssh-pubkey-path /root/.ssh/id_ed25519.pub
detee-cli account brain-url http://164.92.249.180:31337
```
Also, list get your public key:
```
detee-cli account | grep public
SNP admin public key: x52w7jARC5erhWWK65VZmjdGXzBK6ZDgfv1A283d8XK
```
And give it to us on Discord so that we can give you your airdrop.
### VM commands
```
# arch
detee-cli vm deploy
# ubuntu
detee-cli vm deploy --distro ubuntu
# fedora
detee-cli vm deploy --distro fedora
# list VMs
detee-cli vm list
# delete a VM
detee-cli vm delete 1114ecb4-10d0-4a85-b8ac-f19281b77b5d
# specify vcpus
detee-cli vm deploy --vcpus 4
# specify vcpus and memory and run for 4 hours
detee-cli vm deploy --vcpus 4 --memory 2000 --hours 4
# update a VM
detee-cli vm update --disk 50 --hours 20 1114ecb4-10d0-4a85-b8ac-f19281b77b5d
```

75
src/detee_cloud/intro.md Normal file

@ -0,0 +1,75 @@
# DeTEE Cloud
The mission of DeTEE is to create a decentralized cloud solution that functions as an open market for hardware resources. The DeTEE protocol is connecting the customers (mostly software companies) and the service providers (node operators), ensuring the the business activity of all participants runs smooth. In order to make the decentralized network feel like a cloud platform, DeTEE inspired the user experience from popular cloud platforms (Kubernetes, Openstack, AWS, GCP), and optimized and simplified the flow to the benefit of the end user.
In order to make the environment business-friendly, guarantees regarding security and privacy must be offered by the software powering the platform. In order to achieve this, DeTEE leverages the hardware capabilities of TEEs into the core of the platform, working already with Intel SGX and AMD SEV-SNP, and planning to integrate Intel TDX, AMD Trustzone and NVIDIA H100 GPUs in the future. As we can't be responsible for the reliability of the hardware itself, the strategy of DeTEE envolves offering users the possibility to chose the hardware they work with, and to easily migrate their applications from one system to another.
The DeTEE cloud will soon enter the testnet phase, allowing members of our community to deploy containers and VMs on the DeTEE network. The testnet does not guarantee stability (actually it guarantees disruptions, as we are actively developing the software).
# Components
DeTEE is built of multiple components that are already under development, as follows:
- **The Brain**: a decentralized contract manager (functioning very much like an Oracle) that runs on top of the DeTEE encryption layer
- [x] stores your account balanace (not matter if you are a user or a node operator)
- [x] allows you to create contracts for VMs and containers
- [ ] allows you to create contracts for GPUs
- [ ] allows users to vote for the upgrades of the platform
- [x] stores ratings for users
- [ ] allows you to deposit and withdraw DeTEE tokens via different blockchains
- **(Intel) SGX Daemon**: Software that powers the SGX node, allowing customers to run containers
- [x] allows you to run containers based on [occlum](https://github.com/occlum/occlum)
- [x] allows you to expose ports on the public IP of the node
- [ ] offers domain services and TLS termination based on intel SGX
- [x] allows payment model based on reservation of hardware
- **(AMD) SNP Daemon**: Software that powers the SNP node, allowing customers to run VMs
- [x] allows you to run VMs based using ArchLinux, Ubuntu and Fedora as a base
- [x] allows you to expose ports on the public IP of the node
- [x] allows dedicated public IPv4 and public IPv6 addresses for the VMs
- [x] allows payment model based on reservation of hardware
- **DeTEE CLI**: end-user CLI that allows you manage resources on the DeTEE platform
- [x] allows you to manage your account data
- [x] allow you to manage VMs
- [x] allow you to manage containers
- [x] allow you to manage containers
- [ ] offers warning about containers and VMs facing performance issues or decomissioning
- [ ] enables withdrawal of tokens to public blockchains
- [ ] manage access to resources based on teams
- **DeTEE Web GUI**: Will offer the same features as the CLI in a user friendly manner
- **Orchcestrator**: advanced cloud service that offers high availability and clustering for software services running on the DeTEE platform
- [ ] management of secrets using DeTEE encryption
- [x] deployment of swarms of containers across multiple nodes
- [ ] create groups of highly available VMs based on the same template
- [ ] automatic scaling of resources based on load
- [ ] automatic migration of resources in case of hardware failure (or decomissioning)
- [ ] multi-region clusters
Future components (currently not under development):
- **(ARM) TrustZone Daemon**: Software that powers the SNP node, allowing customers to run VMs
- **(NVIDIA) GPU Daemon**: Software that powers the SNP node, allowing customers to run VMs
# Getting access
In order to test our cloud, you will first need an airdrop of testnet tokens. Here are a few ways to qualify for airdrops:
- Join our [Discord Server](https://discord.gg/zrK56XMe)
- Follow [DeTEE on Twitter](https://x.com/detee_network)
- Follow [DeTEE on Instagram](https://www.instagram.com/detee_network/)
- Follow [DeTEE on Linkedin](https://www.linkedin.com/company/105187289)
- Follow [Gheorghe](https://www.linkedin.com/in/ghe0/) on Linkedin. Gheorghe loves attention so this will get you extra points.
- Follow [Valy](https://www.linkedin.com/in/valentyn-faychuk-589674204/) on Linkedin.
- Post about DeTEE on social media.
- Post a review of the the [hacker-challenge](https://gitea.detee.cloud/general/hacker-challenge/)
- Be active in the community and provide feedback to help us improve our service
- Report bugs
- Help us improve documentation
Please be aware that the airdrops are awarded based on the activity, meaning being more involved will allow you to get more tokens, which will grant you access to more testnet resources.
To collect the airdrops after performing the activities above, write to us on Discord in the [📦claim-airdrops](https://discord.gg/zmR3Bzxz) channel. Summarize your activity with links (for example, links to social media posts you made about DeTEE).
Once you secured an airdrop in your DeTEE wallet, you can start using the DeTEE CLI.

91
src/operators/AMD.md Normal file

@ -0,0 +1,91 @@
# Running AMD servers on DeTEE
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 be found on the [AMD website](https://www.amd.com/en/products/processors/server/epyc/infinity-guard.html). Our focus is strictly focused on the SEV-SNP capability.
The server must have a public IP.
## 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 Daemon
Install the detee-snp-daemon from here (TODO: add link).
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:
```json
brain_url: "http://164.92.249.180:31337"
max_cores_per_vm: 8
max_vcpu_reservation: 24
max_mem_reservation_mb: 25000
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"
volumes:
- path: "/var/lib/detee/"
max_reservation_gb: 500
public_port_range:
start: 30000
end: 50000
max_ports_per_vm: 5
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](https://discord.gg/TSG2DKnw), 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.
## Registering node
You will need the detee-cli (TODO: add link) to register your node under your DeTEE account. The rewards are collected by the owner (meaning the DeTEE wallet generated by the CLI) and not by the node. Follow the steps below to register the node.
When booting, the node will print it's public key in the logs. To access logs, run:
```
journalctl -fu detee-snp-daemon.service
```
In the logs, there will be a line similar to this:
```
Jan 26 00:59:13 detee-amd-1 detee-snp-daemon[764125]: [2025-01-25T22:59:13Z INFO detee_snp_daemon::global] Loaded the following public key: 7Xw3RxbP5pvfjZ8U6yA3HHVSS9YXjKH5Vkas3JRbQYd9
```
Grab the key and use the following command in the detee-cli to register the node:
```
detee-cli account register-node 7Xw3RxbP5pvfjZ8U6yA3HHVSS9YXjKH5Vkas3JRbQYd9
```
You should be set.
## Easy way to collect rewards
- 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