From 90529ac597024da9be118a66d12a707f2f74010e Mon Sep 17 00:00:00 2001 From: Olivier Le Thanh Duong Date: Thu, 10 Jul 2025 15:17:53 +0200 Subject: [PATCH 1/2] Add a Compute Resource overview page This made the whole thing a bit less confusing hopefully --- docs/.vitepress/config.mts | 1 + .../functions/getting-started.md | 10 ++++- .../compute-resources/functions/index.md | 23 ++++------ docs/devhub/compute-resources/index.md | 44 +++++++++++++++++++ .../standard-instances/index.md | 19 +++++--- 5 files changed, 76 insertions(+), 21 deletions(-) create mode 100644 docs/devhub/compute-resources/index.md diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index be6f4cf..9a665be 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -206,6 +206,7 @@ export default defineConfig({ text: 'Compute Resources', collapsed: false, items: [ + {text: 'Introduction', link: '/devhub/compute-resources/'}, { text: 'Standard Instances', link: '/devhub/compute-resources/standard-instances/' }, { text: 'GPU Instances', link: '/devhub/compute-resources/gpu-instances/' }, { diff --git a/docs/devhub/compute-resources/functions/getting-started.md b/docs/devhub/compute-resources/functions/getting-started.md index 641f964..8300376 100644 --- a/docs/devhub/compute-resources/functions/getting-started.md +++ b/docs/devhub/compute-resources/functions/getting-started.md @@ -1,10 +1,18 @@ # Getting started with functions -This tutorial will guide you through the steps of building a Python microVM to run on the aleph cloud network. +This tutorial will guide you through the steps of building a Python microVM to run on the Aleph Cloud network. We will build a simple HTTP server and add features as we go. > ℹ This tutorial uses the aleph cloud command line interface. +## Prerequisites + +Before you begin this tutorial, ensure that you have the following: + +* A computer with Python and the [aleph-client](https://github.com/aleph-im/aleph-client/) utility installed +* An Ethereum account with at least 2000 ALEPH token +* Working knowledge of Python + ## Requirements We expect you to know a little Python and have some experience with Python web frameworks such as diff --git a/docs/devhub/compute-resources/functions/index.md b/docs/devhub/compute-resources/functions/index.md index beb3bab..1a92bce 100644 --- a/docs/devhub/compute-resources/functions/index.md +++ b/docs/devhub/compute-resources/functions/index.md @@ -1,17 +1,16 @@ # Computing on Aleph Cloud -Aleph Cloud offers a decentralized computing framework that allows users to run -applications on the network. +Aleph.cloud programs are applications running on the aleph.cloud network. +Each program defines the application to be executed, data to use, computing requirements +(number of CPUs, amount of RAM) and many more parameters. -Two execution models are available: +Functions follow a serverless approach to easily deploy and maintain applications. They +offer [Function-as-a-service](https://en.wikipedia.org/wiki/Function_as_a_service) functionality. - - [Functions](/devhub/compute-resources/functions/getting-started) follow a serverless - approach to easily deploy and maintain applications. - - [Instances](/devhub/compute-resources/standard-instances/) are designed to - provide a persistent environment for users to interact with directly. +Each function is instantiated as a __virtual machine__ running on a Compute Resource Node (CRN). +Virtual machines are emulated computer systems with dedicated resources that run isolated from each other. +Aleph.cloud Virtual Machines (VMs) are based on Linux. -In both cases, user workloads are executed inside virtual machines (VMs) -isolated from each other. ## Overview of VMs @@ -105,7 +104,7 @@ cd ./src/ uvicorn main:app --reload ``` -### Step 2: Run a program in a persistent manner +### Step 2: Run a program in persistent mode To run the program in a persistent manner on the aleph.cloud network, use: @@ -118,7 +117,3 @@ You can stop the execution of the program using: ```shell aleph unpersist $MESSAGE_ID ``` - -### Find your program - -TODO: Locate the CRN where your program is running. \ No newline at end of file diff --git a/docs/devhub/compute-resources/index.md b/docs/devhub/compute-resources/index.md new file mode 100644 index 0000000..dbead43 --- /dev/null +++ b/docs/devhub/compute-resources/index.md @@ -0,0 +1,44 @@ +# Computing on Aleph Cloud + +Aleph Cloud offers a decentralized computing framework that allows users to run +applications on the network. + +Two execution models are available: + + - [Functions](/devhub/compute-resources/functions/) follow a serverless + approach to easily deploy and maintain applications. They offer [Function-as-a-service](https://en.wikipedia.org/wiki/Function_as_a_service) functionality + - [Instances](/devhub/compute-resources/standard-instances/) are designed to + provide a persistent environment for users to interact with directly. They offer full Virtual Machine running under qemu. + +Functions can be executed in parallel on multiple Compute Resource Nodes while there will only one running instance on the network. + +In both cases, user workloads are executed inside virtual machines (VMs) +isolated from each other. + +## Overview of VMs + +There are several types of VMs available on the network: + +- [On-demand VM](#on-demand-execution) +- [Persistent VM](#persistent-execution) + +An [On-demand VM](#on-demand-execution) is created on a [Compute Resource Node](/nodes/compute/introduction/) +(CRN) and is destroyed once the program has finished executing. This is great +for programs that are responding to user requests or API calls (using ASGI) and can shutdown +after processing the event. They are also cheaper to run as they only require +one tenth of the $ALEPH tokens to hold, compared to a [Persistent VM](#persistent-execution). + +A [Persistent VM](#persistent-execution) can be used to run programs that cannot afford to stop or need +to handle incoming connections such as polling data from a websocket or AMQP API. + +Instances are similar to Persistent VMs, but are specifically designed to run with +a SSH key supplied by the user. This allows the user to connect to the VM and +interact with it directly. They do not rely on code execution, but rather on +the user's ability to connect to the VM and run commands on it. +They cost as much as Persistent VMs. + +# Instances + +See [Instances](/compute-resources/standard-instances/index.md) + +In additions you can request usage of a [GPU](/compute-resources/gpu-instances/index.md) or use [Confidential instances](/compute-resources/confidential-instances/01-confidential-instance-introduction.md) \ No newline at end of file diff --git a/docs/devhub/compute-resources/standard-instances/index.md b/docs/devhub/compute-resources/standard-instances/index.md index e472176..fdca49f 100644 --- a/docs/devhub/compute-resources/standard-instances/index.md +++ b/docs/devhub/compute-resources/standard-instances/index.md @@ -2,21 +2,28 @@ This section outlines the process of starting a standard (CPU-only) instance on the Aleph Cloud network. + +## via the Web + +You can create, manage your instances viathe [Aleph Cloud Console](https://app.aleph.cloud). + +## via the CLI + The [aleph-client](https://github.com/aleph-im/aleph-client/) command-line tool is required.
See [CLI Reference](/devhub/sdks-and-tools/aleph-cli/) or use `--help` for a quick overview of a specific command. -## Setup - -### Create a Standard Instance +### Create a Standard Instance via the CLI -To create a standard instance, use the CLI or the [Aleph Cloud Console](https://app.aleph.cloud). +Prerequisite: A ssh key so you can log onto into your VM, you can create one using the `ssh-keygen` command. +To create a standard instance, use: ```shell aleph instance create ``` -

-Your VM is now ready to use. +An instance will guide you and ask you question on how you want to configure your VM: base system, disk size, etc... + +Once the process is complete, your VM should be ready to use in a few minutes. ### Retrieve VM Logs From 74ae67fc0df35ce0262be689e17c0328ed40c7c3 Mon Sep 17 00:00:00 2001 From: Olivier Le Thanh Duong Date: Fri, 11 Jul 2025 11:43:30 +0200 Subject: [PATCH 2/2] Rename section *Compute Resource* to *Resource* --- docs/.vitepress/config.mts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 9a665be..dc255b8 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -203,7 +203,7 @@ export default defineConfig({ ] }, { - text: 'Compute Resources', + text: 'Compute', collapsed: false, items: [ {text: 'Introduction', link: '/devhub/compute-resources/'},