Amazon AWS Ethereum Cloud Mining Tutorial-12 Step Guide to Generating ETC!

in #ethereum7 years ago (edited)


How do you mine ETC fast and on the cloud?


The answer is Amazon AWS!
Creating an Ubuntu Linux virtual machine on AWS EC2 (Amazon Web Services, Elastic Compute Cloud)

STEP 1 - Get an Amazon AWS Account and begin cloud computing!

Amazon Web Services (AWS) is a cloud computing service provided by Amazon, the well known e-commerce giant. The registration process is integrated with, so you can already sign-in with your existing account if you have one! Please note AWS offers the EC2 service free for 750 hrs/month, for 12 months for the Linux t2.micro instance. This is a good option for testing and getting familiar with the system before you deploy into paid services.

Once you are signed in on AWS you will be presented with a list of services offered by Amazon. Select on EC2 (stands for, Elastic Compute Cloud)

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 this tutorial, we need to use the following AMI: IMAGE: ami-2cbf3e44 for US-East (Ubuntu Server 14.04 LTS (HVM) – CUDA 6.5)

To find the AMI go to the navigation bar, select US East (N.Virginia). Then In the navigation pane, click Images -> AMIs. Next switch to the Public Images next to the search filter (the default is "Owned by Me" which will be at first empty, if you do not yet own any AMI) Select Community AMIs Tab and Click on the search filter to (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. Select the ami-2cbf3e44 and click on the blue button, “Select”. Now you can choose an Instance Type.

Select GPU instances g2.2xlarge or g2.8xlarge and click Next: Configure Instance details. WarningI recommend going with the smaller one first, or even stick to the t2.micro free instance for testing (not mining) to save money during the learning curve.

Step 3 - Configure Instance Details

Leave the default settings, click Next: Add Storage

Step 4 - Add Storage

I added 60 Gigs on each volume. The blockchain is growing so it is better to get more, this should give me suitable time to figure out how to migrate my data volumes with snapshots. After adding the storage click Next: Tag Instance

Step 5 - Tag Instance
Leave the default settings alone and click Next: Configure Security Group.

Step 6 - Configure Security Group

Click on Create new security group, make sure you add your ip and allow TCP & UDP for everyone on Port 30303.

Step 7 - Review, Launch, and Select a Key Pair
Check over all your settings, and if they are correct select Launch!

After completing this final section, check the box and launch the instance. If you got everything completed you should get a launch status screen. Click view instances to proceed.

Step 8 - Connect To Your Instance

Once you have launched your image you can monitor it and get your connection string here.

Click Connect, and your connection info will appear. What you will do is paste this connection string in your terminal to access the cloud server for installing Ethereum.

Step 9 - Installing Ethereum on your Instance and Start Mining!

Ethereum client comes in 3 implementations. One written in Go language, another written in C++, and the third written in Phyton. At the moment, the only implementation supporting GPU mining is the C++ implementation. However, the live testnet is running on the Go implementation! Therefore, you will need the Go implementation to read, synchronize the chain and credit Ether on your account, but it is the C++ miner to have GPU support.

Install geth (the Go-Ethereum command line client)

Run the following commands to install the latest developer version of go-ethereum

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum-qt
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo add-apt-repository -y ppa:ethereum/ethereum-dev
sudo apt-get update
sudo apt-get install ethereum
and type "Y" to install.

Step 10 - Use geth to Download the Blockchain

First things first, type the word screen in your terminal.


This will initiate the screen program so you can keep your processes running. Downloading the blockchain takes a long time, and you want to make sure your processes keep running after you get disconnected from them. You have seen it a million times- Broken Pipe, then the panic sets in, where did it geth go, is it still running somewhere? Nope, why, because you need to have a container to hold the process, in this case it is called Screen. At first it may look intimidating, but it is very simple to use. Here is a link to a good resource that explains how to use it.

Once you get your new screen open run the line of code below to launch geth

geth --oppose-dao-fork

You will know it is done downloading blocks when it starts downloading around one at a time.

Step 11 - Install the C++ miner (ethminer)

Use screen to locate your geth process. Type the command below into your terminal.

screen -ls

Next connect to your screen

screen -x (paste.your.screen-pid-here)

Blockchain Not Finished

The image above shows an example of the blockchain just getting started. Once it shows it importing 1 block at a time you will be ready to start mining.

Please Note if you need to stop geth for any reason just press Ctrl C and it will terminate.

Type these commands into your terminal to install ethminer.

sudo apt-get update
sudo apt-get install cpp-ethereum
ethminer -G -M

Step 12 - Create A New Geth Account and Synchronize Go and C++ clients to start mining ETC!

As above type these commands into the terminal of your Amazon AWS cloud instance.

geth account new

Don’t forget to backup your address and the passphrase you are prompted to create.

To check if account generation was successful type the command:

geth account list

To check your ETC balance type

geth console

web3.fromWei(eth.getBalance(eth.coinbase), “ether”)

geth --rpc console
Then hit control-A control-D

Now start the miner
ethminer -G --opencl-device 0
Then hit control-A control-D

Enter screen -ls to verify you have two detached screens running in the background

Note: If you're using the larger g2 instance with 4 GPUs (the 2.8) you may need to start ethminer 4 times, each time adding a --opencl-device <0..3> argument

So, you will need to start ethminer 3 more times with these commands:

ethminer -G --opencl-device 1
ethminer -G --opencl-device 2
ethminer -G --opencl-device 3

One final note, if you would like to mine with a pool go over to miner and sign up. Then launch your ethminer like this:

ethminer -G -F –disable-submit-hashrate

That is it, now you should be able to see ethminer getting work packages from geth, and mining. Please note this blog article is a work in progress I am creating as I follow the tutorial for mining Ether at At the time of posting this blog I am getting really close to getting my blocks all up to date. I will update this blog if there are any changes or if I run into any problems. If anyone has any comments, changes, and or suggestions please feel free to add comments below and I will get back to you and or update this post if needed. My goal is to create an easy to follow guide for cloud mining ETC, with help from the community I know it can be done!

** Update 7-31-16 Everything Working!**
I have checked over the instructions, did a small edit, however I got everything running, wow! I will clean this article up and add some more screenshots. The tricky part is just having 2 screens open at same time, and also make sure you stop geth from the original blockchain download, and re-launch it with the rpc flag.


Can we use digital ocean server for this?
If i use 4gb ram ubuntu server of digital ocean for 1 month, how much i will earn etherium?

Which currency mining is best in vps server, i mean gives best results??

No, this tutorial is for GPU mining, not CPU. You can set it up and run it Digital Ocean for testing purposes, so that you know what you are doing when you step up to GPU. I don't know off hand any alts to mine right now with CPU's. For best results, I would look into something like mining (Plotting) Burstcoin, with hard drives. Burst seems to be the most eco-friendly and quiet.

CPU mining is fine for testnets and internal projects.


Is this profitable? considering AWS GPU instance cost.

No it is not not profitable, I would like to think it almost was for a brief instance in the very beginning, but then the miner kept sputtering out and AWS fees spiked! Some huge data transfer fee estimate got me spooked so I had to shutdown the miner. Here is the screenshot:

Good learning experience though.
It shows estimates way too high for what I was getting out of it, luckily it was just estimates. In the end total ETC mined only .15 , so you do the math. Also my mined ETC it is too small to move, as far as I know it has to be minimum 1 ETC to even get your payment out!

I was looking into this as well but It seems to be cheaper to run your own mining rig - thx for sharing!

in current date, is it profitable to mine?

This is Strange, I cannot go back and edit. I had an issue connecting to the pool on miner gate, however I was able to join nano pool with this connection string if it helps anyone out there.
ethminer -G -F[email protected]

Hi - let me invite you to ethereum 2020 community based price estimation

Hi! This post has a Flesch-Kincaid grade level of 9.1 and reading ease of 73%. This puts the writing level on par with Michael Crichton and Mitt Romney.

Good article

Coin Marketplace

STEEM 0.17
TRX 0.08
JST 0.022
BTC 27068.94
ETH 1621.29
USDT 1.00
SBD 2.19