XenonStack - A Stack Innovator

BlockChain App Deployment Using Microservices With Kubernetes

by Gursimran | January 27, 2017 |  Categories -  BlockChain, Bitcoin, Kubernetes, Hyperledger

Blog Image

 

What is a BlockChain?

 

The BlockChain is a distributed database that maintains a continuously-growing list of ordered records called blocks. This technology underlying Bitcoin and other cryptocurrencies. It is a public ledger of all Bitcoin transaction. These blocks are added in a chronological order. In order to deploy a blockchain application, you need a distributed Hyperledger blockchain on your choice of infrastructure (on-premise or cloud).

 

In this article, we will deploy a Hyperledger Fabric cluster using Kubernetes.

 

Prerequisites

 

To follow this guide you need a system with working kubernetes cluster on it. We will use Fabric which is an implementation of blockchain technology written in Golang so go version go1.6.2 or above is required.

 

Before proceeding further let’s have a look on Hyperledger Fabric.

 

The Hyperledger Project

 

Hyperledger is an open source project with collaborative effort created to advance blockchain technology. It helps in cross-industry distributed ledgers which support transaction system, property transaction, and other services.

 

Hyperledger Fabric

 

The Fabric is an implementation of blockchain technology. It provides a modular architecture allowing pluggable implementations of the various function.

 

Hyperledger Kubernetes Replication Controller

 

We will launch hyperledger on kubernetes as a Replication Controller it will ensure us the high - availability of hyperledger pods.

 

Create a file named membersrvc-rc.yml.

 

 

In the same way, create another file vp0-rc.yml

 

 

That’s enough with replication controller. Now our next target is to deploy services for the Replication Controller.

 

Create a file called membersrvc-srv.yml

 

 

Create another file vp0-srv.yml

 

 

Running Hyperledger Pods

 

After creating all the necessary file, next step is to start these rc pods

 

$ kubectl create -f membersrvc-rc.yml

$ kubectl create -f vp0-rc.yml

 

Running Hyperledger Pods Kubernetes

 

Running Hyperledger Services

 

Now start the service for hyperledger

 

$ kubectl create -f membersrvc-srv.yml

$ kubectl create -f vp0-srv.yml

 

Running Hyperledger Services Kubernetes

 

Running the ChainCode

 

Before running ChainCode you need to set your $GOPATH and then make a directory to download the sample ChainCode in the src directory.

 

 

 

Next, you’ll need to download the Hyperledger fabric to your local $GOPATH, after that you have to build the ChainCode.

 

 

 

Go to chaincode_example02 directory and build the code

 

 

 

Starting and registering the ChainCode

 

Run the following command to start the ChainCode.

 

 

After that ChainCode console will display the message “Received REGISTERED, ready for invocations” which shows that ChainCode is ready for use.

Registering Chain Code Kubernetes

 

Running Rest API

 

To log in with the help of REST API, send a POST request to the /registrar endpoint, with the enrollmentID and enrollmentPW. These parameters are listed in the eca.users section of the membersrvc.yaml file.

 

REST Request:

 

 

REST Response:

 

 

If try to log in again it should say user already logged in.

Running REST API Kubernetes

 

REST Request:

 

 

REST Response:

 

 

Running REST Response Kubernetes

 

You can also track the events on the console also.

 

Event Tracking Kubernetes

 

Summary

 

BlockChains can support the creation of new, more efficient business processes. Now as you understand the basic fundamentals of BlockChain Technology, you need to decide whether BlockChain fits your needs or not. There will be a rush to develop new decentralized apps so as to enable the decentralized world that we are moving towards. Considering this fact, Business Leaders need to learn a new vocabulary around crypto-related frameworks. Developers need to learn how to write decentralized apps that are enabled by BlockChain Technology. And End Users need to learn how to create or use smart contracts, e.g. as depicted via the Mist browser vision (Ethereum), which is a mix of marketplace discovery, management dashboard, and creation platform, all-in-one.

 

Decentralized Apps will come in different sizes, flavors and complexity levels. At XenonStack we are prepared for that and have specialized professionals to develop the solutions. Reach Us for Deployment and Consulting on BlockChain Technology Solutions.

 

XenonStack Offerings

 

XenonStack is a leading Software Company in Product Development and Solution Provider for DevOps, Big Data Integration, Real Time Analytics & Data Science.

 

Product NexaStack - Unified DevOps Platform Provides monitoring of Kubernetes, Docker, OpenStack infrastructure, Big Data Infrastructure and uses advanced machine learning techniques for Log Mining and Log Analytics.

 

Product ElixirData - Modern Data Integration Platform Enables enterprises and Different agencies for Log Analytics and Log Mining. 

 

Product Akira.AI is an Automated & Knowledge Drive Artificial Intelligence Platform that enables you to automate the Infrastructure to train and deploy Deep Learning Models on Public Cloud as well as On-Premises. 

 

Get 1 Hour Free Assessment For DevOps, Big Data Strategy, and Data Science. CONTACT US NOW!



Share Post On Social Media

Related Posts


Sign up

AND STAY UPDATED!

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

NexaStack - DevOps & Serverless Computing Platform

Elixir Data - Modern Data Integration Platform

Contact For Free Assessment

Chat With Our Experts

Contact Us

Your Information Submitted Successfully!