D

Distributed EC2 Over Blockchain

Containerized multi-cluster system with decentralized network with tokenization using ethereum blockchain.

The problem Distributed EC2 Over Blockchain solves

Our idea solves the problem of the central cloud system which exists in the market. Lots of storage and computing power are getting wasted. Many people with a wide range of high tech computers end up using small amount of RAM and storage or some do not use such high end infra which is available with them. So, why not combine these computers and laptops of people to provide the specs as that provided by EC2 instance at much cheaper rates. Our solution is to make a decentralized cloud system using Hadoop, Spark, Dockers, Linux, ETC and Solidity in which everyone can pool in his/her resources (i.e. both RAM, GPU and storage), in exchange for an ETC Coin and the resources can be used as an AWS EC2 and S3 instance. This platform caters to 2 types of people, one who wants to store the data and others who want to give their system for the services. The former one is charged a minimal amount in our cryptocurrencies and the later one receives payment in the same form. Here, the consensus takes care of the different malpractices such as running away with data, not coming online etc. Also, every process that we run on other people system is containerized using dockers and hence security is guaranteed.

Challenges we ran into

  1. Initially started making clusters by using Base OS of the system, but the files of the system could be mis-used and also faced cross-platforms problems, due to scripting differences of different OS. So, finally we started using dockers after which we faced challenges in communicating between the docker containers and hence had to map the ports, which did give us a tough time.

  2. In Scripting, we initially started with Ansible due to which we face difficulties, so then we shifted to Python along with shell-scripting.

3.Another impotant part was Monetization. We needed to take care of different malpractices related to payment, so we started using smart contracts. We made use of ERC20 standards to make coins and ICO sale and was built over ethereum blockchain.

  1. Now if we had two clients in the same cluster, they could access each others folder, so after some amount of thinking we came up with the idea of making the client as master.

  2. Another challenge which is still a challenge, is design of the clustering algorithm to ensure alloting of slaves in a method such that there is minimum space wastage. We have the Knapsack algorithm in mind, but still need to integrate it in the project and make improvements as required.

Technologies used

Discussion