(Updated on 25-10-2018)
Customer is a Sonm user, how rents and uses the computing resources of other users (Suppliers) through the system. Getting started in Sonm as a customer requires several steps we describe below. It includes installation, settings and main steps to execute your task using Sonm.
You'll need to consider the following before starting the installation:
sudo bash -c "$(curl -s https://raw.githubusercontent.com/sonm-io/autodeploy/master/sonm-auto-deploy-consumer.sh)"
We recommend auto-installation, but you may install Sonm components manually:
You should have your own Ethereum account to pay for resources in Sonm. Account is your unique identifier for:
We generate your personal account (UTC/JSON keystore file) during the installation. You find keystore path and passphrase with cat
~/.sonm/cli.yaml. Keystore file default location:
If you want to use your existing account, replace the file in the appropriate folder with yours.
To start working with your account:
DON'T FORGET to make a BACK-UP of your KEYSTORE or WHOLE WALLET. You cannot get access to your funds if you loose the keystore.
To export wallet:
- Click the "Export wallet" button on the "Accounts" page.
- Choose the local folder and click "Save".
Also to verify the installation of Sonm CLI component and check your account please start Sonm CLI and use sonmcli login command. There should be no “Enter password” request.
Payments for the resources in Sonm is performed only in Sonm tokens (SNM). You can buy tokens on one of the cryptocurrency exchanges.
You should have enough SNM to pay for the deal and have some Ether to pay for the deposit operation (Ethereum transaction fee) on your account.
Deposit tokens - the next step for replenishing your balance in Sonm blockchain, where you rent and pay for the resources. You may use Sonm GUI or CLI.
We use special Gate smart contracts and Gatekeeper masternodes to validate transactions for deposit SNM tokens to SONM blockchain and withdraw them to main Ethereum network. Transactions are not rapid, there are delays for:
- validate transaction (include transaction to the block) - this depends on current workload of the main Ethereum network and transaction settings you set ("gas limit" and "gas price");
- quarantine period for the gate - 15 minutes.
Taking this into account, the normal time to deposit funds in the opposite blockchain is: <the time of mining your transaction + 15 minutes>
KYC (Know Your Customer) is a procedure that allows a supplier to confirm the identity of the counterparty (customer) participating in a deal before it is conducted. After undergoing KYC verification, a customer can use the resources he has rented on the Sonm platform to run individually created tasks: machine learning, rendering, etc. Users who have not yet passed the KYC procedure can run only the computational tasks included in the Sonm Whitelist.
To complete the KYC procedure and receive “Identified” status you need to:
To quick rent resources in Sonm GUI:
Order and deal prices on SONM marketplace are in USD. Payments are executed in SNM tokens by actual exchange SNM/USD exchange price. When you open a deal, SNM tokens from your address are transfered to the marketplace smart contract.
To rent your own resource configuration use Sonm GUI:
To execute your task you should prepare a docker container with it and upload container to the Docker storage.
For now the task execution is allowed only in Sonm CLI. Follow the next steps:
Supplier will receive payment for certain deal duration. The rest of SNM tokens freezed on the deal will return to your account!
See Sonm CLI Guide for additional information about task management.
If you get stuck, help is always at hand. We are providing you with a 24/7 technical support.
If you experience any errors or difficulties with our product, you can get support via:
Be ready to provide all the required information that will help us to solve your issue.
Check if your SONM platform components working correctly. Do it using our self-check guide.
Also, please make step-by-step description of actions that led to the error and provide us with command outputs.