What is Ethereum cloud mining?

What is Ethereum cloud mining?

What is Ethereum cloud mining?

Best Ether Cloud Mining Services

There are limited options for Ether cloud mining contracts. If nothing on the list below meets your needs, you can buy Bitcoin cloud mining contracts (listed above) and simply convert the bitcoins you earn to ether.

Hashflare ReviewHashflare is a large Ether cloud mining provider. Ethereum cloud mining contracts cost 100KH/s = $2.90 for a one year contract.

Genesis Mining ReviewGenesis Mining is the largest Ether cloud mining provider. Ethereum cloud mining contracts cost 1MH/s = $37 (1 Year Ether Mining), 25 MH/s= $925 (1 Year Ether Mining) and 100 MH/s= $3700 (1 Year Ether Mining).

Minex ReviewMinex is an innovative aggregator of blockchain projects presented in an economic simulation game format. Users purchase Cloudpacks which can then be used to build an index from pre-picked sets of cloud mining farms, lotteries, casinos, real-world markets and much more.

Eobot ReviewEobot offers Ethereum cloud mining contracts with 0.0060 ETH monthly payouts.


+_For Mac, Windows, and Linux users._
by A.Milan (github.com/angelomilan) and M.Terzi (github.com/terzim) with the precious support of @paul_bxd and @jesus666

** Warning: this has been tested on the Frontier test-net and has just recently undergone testing on the Frontier live-net, which has just been launched. A notice on costs: you are going to spend about 2.60 USD / hour for a g2.8 instance so keep this in mind, if you want to proceed **

This step by step tutorial tries to be easy to follow. It is supposed to be as easy as copy / pasting but we acknowledge that a certain level of understanding and patience to follow the detailed instructions is needed.

Even if you lack of patience, try to understand step by step what you are doing. If you do not, it does not really matter as long as you follow the instructions properly. If you have any questions, please contact @angelomilan or @terzim (github.com/terzim).


I want to mine Ether, but I do not want to use my machine and I do not want to invest on new hardware and pay thousand dollar electricity bills.

SOLUTION: cloud mining aka using Amazon’s cloud servers

Since GPU mining is set to be 100x more efficient than CPU with Ethereum, we need to look to renting GPU power on the cloud. The answer, apparently, is Amazon Web services EC2.

On Ethereum forum @paul_bxd revealed an inner mean (hashrate) of 24 MH/s using an AWS g2.8xlarge instance comparable to the benchmark of an AMD Radeon R9 280x : 23.2 MH/S which is the best in class for ethereum mining (Nvidia Geforce is far less efficient)

The tutorial is divided in two parts. In the first, we are going to create an Ubuntu Linux virtual machine on Amazon Web Services (AWS) EC2 (Elastic Compute Cloud); in the second part, we are going to install Ethereum C++ miner on Ubuntu.

##Part 1 - Creating an Ubuntu Linux virtual machine on AWS EC2 (Amazon Web Services, Elastic Compute Cloud)

###Step 1 - Get an AWS account

First things first: get an AWS account here.

Amazon Web Services (AWS) is a cloud computing service provided by Amazon, the well known e-commerce giant.

Click on the top-right button: create an aws account

As you can see, the registration process is very handy, since you can sign-in with your existing Amazon account. You may notice that AWS offers the EC2 service free for 750 hrs/month, for 12 months. However, that is for the Linux t2.micro instance. That is good for testing, but not for mining Ethereum. I will tell you later what instance to select to maximize the GPU power.

Once you have registered on AWS, you will be presented with a big list of the services offered by Amazon.

amazon web services ec2

Click on EC2 (stands for, Elastic Compute Cloud), that will give you GPU horsepower for mining the Ethereum blockchain.

###Step 2 - Setup the pre-built AMI (Amazon Machine Image) on AWS EC2

An Amazon Machine Image (AMI) “provides the information required to launch an instance, which is a virtual server in the cloud”.

For our purposes, we need to use the following AMI:

  • IMAGE: ami-2cbf3e44 for US-East (Ubuntu Server 14.04 LTS (HVM) – CUDA 6.5)
  • STORAGE: Use at least 8 GB, 20+ GB recommended

How can we find it? To find a Linux AMI using the Images page:

  • Open the Amazon EC2 console.
  • From the navigation bar, select US East (N.Virginia);
  • In the navigation pane, click Images -> AMIs;
  • Switch to Public Images next to the search filter (the default is “Owned by Me” which will be at first empty, since you do not yet own any AMI)
  • Click on the search filter and then (search by) AMI ID -> ami-2cbf3e44

Note: Make always sure you are in the correct region (US East, N.Virginia as we said) otherwise you will not see the AMI we are insterested in on the list.

The ami-2cbf3e44, like all the ubuntu 14.04 images, is supported by Ethereum Frontier, but in addition this pre-built AMI has all the NVIDIA GPU drivers, OpenCL, etc… all pre-installed.

  • Select the ami-2cbf3e44 and click on the blue button, “Launch”.

###Step 3 - Customize and review your instance

Now we need to customize the instance to make sure we are doing things right.

  • You will be redirected to “Step 2: Choose an Instance Type”

As we said in the intro, we need a GPU instance to mine Ethereum. If you scroll down the list you will see 2 GPU instances.

  • We will go for the g2.2xlarge or g2.8xlarge (if you skip this step, you will not have an nvidia device)
  • Just click on the empty box on the left to choose the instance

Note: At this point, if you want you can play with the t2.micro free instance before proceeding spending money.

  • Click on “next” and you will be redirected to “configure instance details” to access advanced settings for your instance. We suggest leaving everything as is, unless you feel extremely comfortable in what you are doing. A particularly interesting feature is the “purchasing options”: if you click on “request spot instances” you can specify the bid parameters for purchasing the computational power needed to launch your instance. Don’t overlook this feature if you want to be in control of the instance costs. As Amazon suggests: you have the option to request Spot Instances and specify the maximum price you are willing to pay per instance hour. If you bid higher than the current Spot Price, your Spot Instance is launched and will be charged at the current Spot Price. Spot Prices often are significantly lower than On-Demand prices, so using Spot Instances for flexible, interruption-tolerant applications can lower your instance costs by up to 90%. Learn more about Spot Instances: https://docs.aws.amazon.com/console/ec2/spot-instances. We want to highligth this: IF YOU ARE INTERRUPTION-TOLERANT!

  • Click on “next” and you will be redirected to the “add storage” screen. We recommend to use at least 20+ GB. Otherwise you will run out of space pretty soon! :) In any case, just do not edit these settings unless you are comfortable about what you are doing. (ask the guide creators)

  • Click on “next” and you will be redirected to the “tag instance” screen. We recommend not to edit these settings.

  • Click on “next” and you will be redirected to the “configure security group” screen. It is important that you upgrade the security settings and choose “My IP” under the tag “Source”. By doing so, only you (i.e., your IP) will be able to launch the instance. Indeed, you do not want all the internet to be able to launch your instance!!

  • We are ready, just click “Review and launch” at the bottom and “Launch” in the next screen.

###Step 4 - Launch

You will now be prompted to create your access key aka “Key pair”. To use a virtual machine we first need an access key (keep it private!). Amazon AWS access keys consist of a public key and a private key.

key pair aws

  • Scroll the dropdown menu to “Create new key pair”
  • Type a name for the access key
  • .pem file will be automatically downloaded to your local machine, this is your private key.
  • Backup this file (for example, storing it in a USB drive) since you will need this for remote access to your virtual machine on the AWS cloud
  • Then click “Launch Instances”
  • All right, now on “View instances”

Your instance should be pre-selected. Wait about 5 minutes for the Initializing process. Then click connect.

###Step 5 - Connect your machine

connect to instance

On your Mac:

  • Put your .pem file in the folder Applications > Utilities
  • Launch Terminal
  • Type or copy/paste

    chmod 400 /Applications/Utilities/youraccesskeyname.pem
    ssh -i /Applications/Utilities/youraccesskeyname.pem ubuntu@YO.UR.PUBILICIP

Note: You will need to use this line every time you close Terminal and want to start again

  • Type yes
  • You should get a confirmation message:

    Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0–37-generic x86_64)

On Windows:

To connect to your instance on Windows you will have to follow additional steps:

  • Install PuTTY: Download and install PuTTY from the PuTTY download page. Be sure to install the entire suite.
  • Convert your private key in .ppk format using PuTTYgen:
    • Start PuTTYgen (for example, from the Start menu, click All Programs > PuTTY > PuTTYgen).
    • Under Type of key to generate, select SSH-2 RSA.
    • Click Load. By default, PuTTYgen displays only files with the extension .ppk. To locate your .pem file, select the option to display files of all types.
    • Select your .pem file for the key pair that you specified when you launch your instance, and then click Open. Click OK to dismiss the confirmation dialog box.
    • Click Save private key to save the key in the format that PuTTY can use. PuTTYgen displays a warning about saving the key without a passphrase. Click Yes. Note: A passphrase on a private key is an extra layer of protection, so even if your private key is discovered, it can’t be used without the passphrase. The downside to using a passphrase is that it makes automation harder because human intervention is needed to log on to an instance, or copy files to an instance.
    • Specify the same name for the key that you used for the key pair (for example, my-key-pair). PuTTY automatically adds the .ppk file extension.
  • Your private key is now in the correct format for use with PuTTY.

  • You can now connect to your instance using PuTTY’s SSH client.
    • Start PuTTY (from the Start menu, click All Programs > PuTTY > PuTTY).
    • In the Category pane, select Session and complete the following fields:
      • In the Host Name box, enter “ubuntu@public_dns_name” . Replace public_dns_name with the public DNS for your instance, which you can view by using the EC2 console (check the Public DNS column; if this column is hidden, click the Show/Hide icon and select Public DNS).
      • Under Connection type, select SSH.
      • Ensure that Port is 22.
  • Now you have to link your session to the private key you previously created
    • In the Category pane, expand Connection, expand SSH, and then select Auth.
    • Click Browse.
    • Select the .ppk file that you generated for your key pair, and then click Open.
    • (Optional) If you plan to start this session again later, you can save the session information for future use. Select Session in the Category tree, enter a name for the session in Saved Sessions, and then click Save.
    • Click Open to start the PuTTY session.
  • If this is the first time you have connected to this instance, PuTTY displays a security alert dialog box that asks whether you trust the host you are connecting to.
  • Click Yes. A window opens and you are connected to your instance.

Note: If you specified a passphrase when you converted your private key to PuTTY’s format, you must provide that passphrase when you log in to the instance.

Note 2: If these steps don’t work the first time, quit PuTTY and do it again. Click