Author Archives: Ajitesh Kumar
Kubernetes – Port, Targetport and NodePort
When working with Kubernetes Service, you will come across some of the following terminologies: Port: Port is the port number which makes a service visible to other services running within the same K8s cluster. In other words, in case a service wants to invoke another service running within the same Kubernetes cluster, it will be able to do so using port specified against “port” in the service spec file. Target Port: Target port is the port on the POD where the service is running. Nodeport: Node port is the port on which the service can be accessed from external users using Kube-Proxy. Take a look at following spec defining a …
Decentralized Identity Management, Blockchain – Why Bother
This blog represents details on Decentralized Identity Management and why you should care? Given that IBM, Hyperledger has joined Blockchain Identity Consortium makes it much more important to quickly go over the concepts related with decentralized identity management. Check out a related Hyperledger project, Project Indy, on supporting independent identity on distributed ledgers. Traditional Centralized or Federated Identity Management System Conventional identity management systems have always been based on centralized authorities such as corporate directory services , certificate authorities (CA) , or domain name registries. Each of these centralized identity management systems acted as a “root of trust”. In order to have the identity management work across different systems, there is something called as federated identity management. According to Wikipedia post of …
Angular Developers Interview Questions – Quiz 1
This page represents the quiz for Angular developers who are beginning (beginners) to learn Angular. These questions can be used for interviews. [wp_quiz id=”5332″] In case you are developing web apps using Spring and Angular, check out my book, Building web apps with Spring 5 and Angular. Grab your ebook today and get started.
Configure Angular Route Definitions – Part 2
In this blog, we will learn about how to configure Angular route definitions in an Angular app by defining route definitions as a separate module at the root level. Again, this is not the most effective way of defining Angular route definitions. In third part of this series, we will learn about how to define route definitions as part of separate feature modules, and, not at the root level. In the previous blog in this series, we learned about the most trivial way of configuring route definitions in an Angular app. As the app starts getting complex, one needs to use routing concepts such as child routes, guards, resolvers, and so on. …
HBase Architecture Components for Beginners
This blog represents high-level concepts on HBase architecture components. Following diagram represents the same: HBase Architecture Components – Key Building Blocks Following diagram represents the same: Pay attention to some of the following in relation to above diagram: HMaster: Responsible for coordinating the region servers including assigning regions on startup as well as recovery, and, monitoring region servers using Zookeeper Region Servers: Manages one or more regions Zookeeper: Zookeeper is used as a distributed coordination service for maintaining the server state of the cluster. Regions: Records in HBase tables are split horizontally based on the key range. Each of these splits can be called as Regions. A region contains all rows in …
Cloud Platform Trends (Oct 2017) – AWS Wins
This blog represents the cloud platform trends for the month of Octobar 2017 with primary focus on AWS, Azure and Google Cloud platforms. The clear winner is AWS. Indeed.com Job Postings Trends Following represents job posting trends on the popular portal, indeed.com: Google.com Search Trends The following represents Google search trends for cloud platforms: StackOverflow Q&A Trends The following represents Stackoverflow Q&A trends for cloud platforms:
Consistent Hashing Concepts – Databases, DHT
This blog represents What’s The Funda (WTF) around consistent hashing and DHT (Distributed Hash Tables), Databases use cases where it is used. Problems with Traditional Hashing Mechanism Lets understand the traditional hashing mechanism using following diagram: Pay attention to some of the following aspects as per the above diagram: Hash table/map is an array with each of the array index pointing to a linked list having each node representing a key-value pair. Keys are passed through a hash function. The index of the array (bucket) to which a specific key-value pair would get associated is a function of hash value and total size of the array. For example, in above diagram, key such as “Sam …
Deep Dive – Docker Images & Containers Internals
Following are some of the cool links which can help you get started with knowing Docker internals for images and containers: Docker Containers’ Filesystem Demystified Union file System for Dockers Following diagram represents the concepts on docker image and container. Pay attention to some of the following in above diagram: Docker images comprise of readable layers stacked on top of each other. These layers are shared across different containers. Each of these layers are also termed as the “image”. Thus, a docker image of any software package can comprise of multiple images (layers) such as bootfs, rootfs etc., stacked on top of each other. Following are some of the key …
Quick Glance at Kubernetes Architectural Building Blocks
This blog represents information on some of the key architectural building blocks of Kubernetes. The greater details on Kubernetes architecture can be found on this page, Kubernetes Architecture. Following diagram represents technology architecture (with infrastructure) viewpoint of Kubernetes: Following is another viewpoint of the Kubernetes technology architecture: Pay attention to some of the following as per above diagrams: Kubernetes Master Controller Manager (kube-controller-manager): It is a daemon process that embeds the core control loops, a non-terminating loop, for regulating the state of the system. A control loop can also be seen as a controller. Details can be found on this page, kube-controller-manager. Controller manager supports different types of controllers such …
Blockchain – Hyperledger Technology Architecture Viewpoint
The diagram below represents technology architecture viewpoint of hyperledger blockchain framework: Hyperledger framework comprises of four key services/modules at a broader level. They are following: Membership services. Membership services comprise of components such as following: Registration: Registers/enrolls the new users Identity management: Manages identity of the users Audit management Blockchain services: Blockchain services comprise of following components used to manage consensus, storage and transactions: Consensus Manager: Used to implement consensus algorithm; Allows to plug-in extensible/customized consensus module. Consensus manager forms part of ordering service which validates the transaction using VSCC (validation system chaincode), create block of transaction and send them back to peer nodes. Distributed Ledger Ledger storage: Storage such as LevelDB or CouchDB can …
Quick Glance at Hyperledger Fabric Architecture Building Blocks
The diagram below represents application communication viewpoint at key building blocks of Hyperledger Fabric 1.0 architecture: Following are some of the key building blocks of Hyperledger Fabric 1.0 Architecture: Membership Services Provider: Enrolls the clients Peers: Peer nodes can be endorser (endorse proposal for transaction)and committer nodes (write block of transactions to ledger) Chaincode: Smart contract written in Java/Go which is invoked by a transaction. Peer nodes having chaincode becomes the endorser for that chaincode. ESCC (Endorser system chain code) executes the chaincode using proposal and read-write set information. Ledger: Ledger which holds the copy of transactions in form of blocks Ordering service: Consenter service which validates the transaction using VSCC (Validation system chaincode), orders …
Blockchain usecases from Financial Services & Government/Legal/Regulatory
This blog represents some of the Blockchain uses cases in industry domain related with financial services and Government/Legal/Regulatory. The blockchain is getting talked about/implemented in different industry domains such as following: Financial services Government / legal / regulatory Government / legal / identity management Capital markets Healthcare / medical IOT Publishing Supply chain / Logistics Supply chain / Traceability / Anti-counterfeiting Supply chain / Interoperability / Visibility Travel / Hospitality Agriculture I shall be doing a blog series discussing all of the above use cases in detail. In this blog, we will look into some of the use cases in financial services and Government/legal/regulatory. Financial Services Microlending: Small unsecured loans issued …
Kubernetes – How to Install Kubernetes on Ubuntu (Linux)
This blog represents steps/instructions on how to setup Kubernetes on Ubuntu (Linux) using Minikube. The instructions have been used to setup Kubernetes on Ubuntu 16.04. Following are key steps which need to be taken in order to setup and get started with Kubernetes: Ensure Virtualization Technology (VT) is enabled in BIOS Install VirtualBox and VBoxManage Install KubeCtl Install Minikube Launch Kubernetes cluster Ensure Virtualization Technology is Enabled in BIOS Setup First and foremost, ensure that Virtualization Technology (VT) is enabled in BIOS setup. In order to do that, do following: Shutdown the system and restart. Keep tapping ESC key when starting the machine. This would bring up the startup screen …
Blockchain – Top 5 Cool Links for Hyperledger Framework
Following are some of the cool links in relation with Hyperledger framework (Open-source permissioned blockchain framework) you would want to bookmark. These pages represent help docs, use cases, step-by-step instructions to create the first blockchain, issues etc. Hyperledger Mailing List Hyperledger Jira Hyperledger Fabric Docs Step-by-step process of bootstrapping Hyperledger fabric network and invoking a transaction Hyperledger use cases
Blockchain – Transaction Journey into A Hyperledger Blockchain Network
This blog represents details on key types of components or building blocks of Hyperledger Blockchain Network and discusses details on the journey of transaction in the blockchain network. It also highlights the steps including diagrams on workflow/process flow related with endorse and commit transactions. Types of Hyperledger Components There are three types of components, each of them performing different functions, in Hyperledger. Node joining the Hyperledger Blockchain network will be free to take up one or more functions. Following represents these three classes of components: Endorsers: Nodes with “Endorser” functionality will simulate and sign or reject the transactions. A peer can be potentially an endorser for the chaincodes deployed to …
Go – Get Started with Hello World using Go Programming
This blog represents steps required to get started with Go programming language on Linux/Ubuntu. The details can be found on this Golang – Getting Started page. Setup Go & Configure The following instructions can be used to setup Go which includes installation and configuration: Download the appropriate binary release from Go Download Page; In case of Linux, download go1.9.*.tar.gz. Go to the download folder and execute the following command: For the latest version of Go, the above command would look like following: Above command would setup go at the location, /usr/local. Configure path appropriately such that Go can be used to run the programs from anywhere on the system. Set …
I found it very helpful. However the differences are not too understandable for me