Existing Kubernetes Cluster

Do you have a running Kubernetes cluster? If the answer is "yes," you can follow the guide below to become an Akash Cloud Provider. If your answer is "no," you can look at this document.

Check it! If you are using a newer systemd then your container will get stuck in ContainerCreating state on your provider with gVisor enabled.

Prerequisite:

  1. A complete Kubernetes cluster.

  2. Open the ssh port(usually 22) for the IP Addresses "68.250.12.64" (Praetor App's IP).

  3. An existing Akash wallet with a minimum balance of 5 AKT.

  4. Kubernetes config file of the cluster you want to provide.

  5. A valid domain name where you can do DNS changes to point few domains to your cluster's machines / IP address.

Step 1: Check the Kubernetes cluster

To make sure your cluster is ready, please execute the following command.

debian@node1:~$ kubectl get nodes -o wide

NAME    STATUS   ROLES                  AGE   VERSION   INTERNAL-IP   EXTERNAL-IP   OS-IMAGE                       KERNEL-VERSION    CONTAINER-RUNTIME
node1   Ready    control-plane,master   13d   v1.23.6   10.0.10.114   <none>        Debian GNU/Linux 10 (buster)   4.19.0-20-amd64   containerd://1.6.3
node2   Ready    control-plane,master   13d   v1.23.6   10.0.10.115   <none>        Debian GNU/Linux 10 (buster)   4.19.0-20-amd64   containerd://1.6.3
node3   Ready    <none>                 13d   v1.23.6   10.0.10.116   <none>        Debian GNU/Linux 10 (buster)   4.19.0-20-amd64   containerd://1.6.3

Notice the CONTAINER-RUNTIME column's value must be "containerd".

It would be best to ensure that the Kubernetes cluster's runtime class is "gVisor." Then, you can run the following command and verify.

debian@node1:~$ kubectl get runtimeclass

NAME     HANDLER   AGE
gvisor   runsc     13d

Step 2: Praetor App Login

Go to Praetor Application to become an Akash Cloud Provider.

Click on "Connect," It will ask you to connect your Akash wallet using the Keplr browser extension.

Note it! This address will be used to become the cloud provider in the network.

Keplr will request your permission to connect the wallet with Praetor App, Click Approve to continue.

Keplr wallet will ask you to sign a message to generate an arbitrary signature. Then, the app will send it to the backend. We use this signature to make secure communication between the services.

Here, you can select the number of servers you want to provide to Akash. But, since you already have the Kubernetes cluster, you can click "Skip this step if you have Kubernetes."

Step 3: Control Machine Access

Note: If you have GPU then select Yes and you will see two new options for your GPU selection. Please choose the appropriate answer and click Verify.

The application needs to access your server to install Akash software. We also use your server to connect with your Kubernetes cluster. Praetor needs a user with sudo access to the device or root user to perform this. First, open the ssh port(usually 22) for the IP Addresses "185.209.177.59, 185.209.177.46, 185.209.176.35" (Praetor App's IP).

Inputs:

Hostname: Your server's hostname (either IP or web address without HTTP or HTTPS), If you use IP, then it must be your public IP address of IPv4 type Username: Server username to login (e.g. root, admin, ubuntu, Debian etc.) Password or File:

  • If you select a password, then input the login password for the user.

  • If the user selects a file, upload the ssh private key file. You can also provide a passphrase if your key file is encrypted.

Kube Config File: Upload a valid Kubernetes configuration file.

On clicking verify, the following pop-up screen will get open.

This alert message asks you whether you have the necessary dependencies for Akash Network already installed or not. Akash Network's necessary dependencies are Akash Software, hostname operator, network policy and ingress nginx. On clicking "No," Akash Network dependencies will get installed on the server. "Yes," clicking indicates that all dependencies are already installed on the server and skips the Akash installation process.

Step 4: Akash Wallet Import

Importing a wallet is necessary to run your provider and get lease AKT payouts.

Two ways to import your Akash wallet:

  1. Praetor Mode(Recommended)

The app will verify your seed phrase with a connected wallet and create a Keystore file in your server.

Inputs:

Seed Phrase: Wallet Seed phrase (e.g. apple create carpet grain juice) Password: 8 letter password of your choice. The app will use the password to encrypt the Keystore file.

Note! Please be noted that we use an end-to-end encryption method to transfer your seed phrase and password. So, you can be confident in typing your seed phrase here. Although, If you don’t want to provide your seed phrase here then you can switch to manual mode by “Switch to Manual Mode.”

2. Manual Mode:

Perform the following steps on your server.

(i) Login to the control machine using the username you used in the step-2

(ii) Create a Keyring file using the command

~/bin/akash — keyring-backend file keys add wallet_name — recover

(iii) Enter your mnemonic seed phrase and password

(iv) Run the following command and enter the same passphrase you have used in (ii)

echo {passphrase} > ~/.praetor/wallet_phrase_password.txt

Step 5a: Provider Configuration

You are one more step closer to becoming a cloud provider for Akash Network.

On the Provider Configuration page, you will need to provide Domain name and Organization Name and then click Next.

Inputs:

Domain Name: Please enter your own domain name. Please make sure you have purchased this domain name as we need to make changes in DNS in the later stages. Organization Name: Unique name that represents your machine in Akash Network (e.g. Praetor App)

Step 5b: Provider Pricing

On the Provider Pricing page, you will need to provide specific configurations. The app will use those values to make your provider on the chain, generate a server certificate and turn on provider service for Akash.

From advanced settings, you can set the pricing you wish to lease out your machine. Also, you can see an estimated earning from your provider.

Inputs:

CPU Scale Bid Price: CPU scale pricing in USD per thread per month Memory Scale Bid Price: Memory scale pricing in USD per GB per month Storage Scale Bid Price: Storage scale pricing in USD per GB per month Persistent Storage Scale Bid Price: Persistent Storage scale pricing in USD per GB per month

Advance Settings:

IP Scale Price: IP Scale price in USD per IP per month Endpoint Scale Bid Price: Endpoint pricing in USD per porth per month Bid Deposit: Bid deposit in uakt (e.g. 5000000 uakts = 5 AKTs)

Step 5c: Provider Attributes

On Provider Attributes page, you can add custom attributes to your provider. If you wish to add attributes, provide it in key value pair and then click Next.

Note! is chargeable

After filling in all the necessary information, click on "Next". The process of becoming provider on chain will get started.

This screen will show you the progress of becoming an Akash cloud provider.

Congratulations, you became a provider on Akash Network.

Step 6: Port & DNS Configuration

All the ports mentioned in the port table have to open for 0.0.0.0(Anywhere IPv4).

Ensure your provider domain and ingress domain point to the correct IP Address shown on the screen.

Step 7: Akash Audit

They are security professionals trusted by Akash community members. They audit providers' technical proficiency and provide ensuring to your consumers for the service you cater.

If you click "Apply for Audit," The application will ask you to provide basic information.

On clicking "Skip," you will be redirected to the Dashboard.

Step 8: Dashboard

Finally, You become a provider on Akash Network, and you will soon start getting leases on your machine. The Dashboard will provide information about your provider's server statistics and show how much is active, available and pending resources.

On Clicking Provider Settings, you would be able to modify your various settings for your provider like attributes, pricing, domain name, provider url and provider node. You can also restart or upgrade your provider and give a message in form of note to your deployers.

On Clicking Provider Deployments, you can see active and inactive deployments in your provider.

Thank you for using Praetor App. If you have any issues or trouble getting the provider machine up and running, don't hesitate to contact us on Discord or Twitter.

Last updated