Author: Mayank Bairagi

Stern: A Tool to Read Logs Across Multiple Pods.

Reading Time: 3 minutes Kubernetes is a scalable container orchestrator. On the one end, it can support complex enterprise systems with thousands of apps and hosts, on the other end, it is quite light-weighted to support IoT appliances. In the absence of centralized logging and aggregation service in Micro Kubernetes clusters, kubectl logs is there for survival. It is good for a pod but if you want to debug your distributed Continue Reading

Create kubectl Like CLI With GO And Cobra

Reading Time: 6 minutes We are using CLI tools for ages. You might be familiar with the CLI tools like git, docker, kubectl, awscli, etc. What does it take to create a CLI? Can we create a powerful but cool CLI with ease? In this blog post, I will walk you through a fictional CLI named greetctl. We will implement it in golang with the help of the cobra Continue Reading

Evolution of Container Networking

Reading Time: 5 minutes Networking has been changed a lot. From the era of hardware-based physical networking to the current world where networking is being defined by software, a lot of innovations and thought processes are continously being applied. In this blogpost, I will detail out the evolution stages of the networking. Physical Networking We know how the network engineer builds networks in data centers. Engineers program quite a Continue Reading

Tale of a Container’s File System

Reading Time: 4 minutes Namespace, CGroup, and Union file-system are the basic building blocks of a container. Let’s have our focus on file-system. Why yet another file-system for the container? Are Conventional Linux file-systems like ext2, ext3, ext4, XFS etc. not good enough to meet the purpose? In this blog post, I will try to answer these questions. Here we will be delving deeply into the Union File System Continue Reading

Knolx : Into the Domain

Reading Time: < 1 minute Hi all, Knoldus has organized an one hour session on 16th Dec 2015 at 5:00 PM. Topic was Into the Domain. Many people have joined and enjoyed the session. I am going to share the slides here. Please let me know if you have any question related to linked slides.

Spray authenticate directive : A decoupled way to authenticate your API

Reading Time: 3 minutes Organization exposes critical business data or user’s private data through API. It is required to protect API against any unauthorized access, attack or security breach. In this blog I am not going to discuss API security mechanism. Here I want to detailed out the separation of API authentication from underlying RESTful Api. Authentication / Authorization is cross cutting concern and it must be decoupled from Continue Reading

ScalaKnol : Loan Pattern Revisited

Reading Time: 2 minutes Here I am going to modify the loan pattern described in this article “Scala Knol : Understanding Load Pattern” . Let us take an example from earlier blog, we have all used connections to get to the database and then we need to destroy the connection so that there are no leaks. OK, we can use the connection factory but let us assume that we Continue Reading

Effective Git

Knolx Session : Effective Git

Reading Time: < 1 minute Here I am going to explain distributed version control system and how it is better then centralize version control system. I will demonstrate some basic terminology of GIT as well. Knolx master-slides from Mayank Bairagi

Dependency Injection In Scala using Self Type Annotations

Reading Time: 5 minutes Dependency injection is a software design pattern that allows removing hard-coded dependencies and making it possible to change them, whether at run-time or compile-time. Dependency Injection has three kind of software components 1. Dependent or Consumer : Describe what software components, it depends on . 2. Dependencies on which consumer depends 3. Injector also known as provider : Decides what concrete classes satisfy the requirements Continue Reading

Scala lift : Access Session Information In Actors.

Reading Time: 2 minutes Problem: In Scala Lift Application. There are two ways to maintain and access the session information. Either we can use SessionVars or net.liftweb.http.S object. Each of them work significantly well until there are used in the scope of session. Now the actual problem arise when I used Actor to get concurrency in scala lift application. Actor runs outside of the context of the session that Continue Reading

Type Class Polymorphism in Scala

Reading Time: < 1 minute In this Knowledge Session I will going to discuss about different ways to achieve polymorphism in scala. Here will focus on decoupled and ad hoc polymorphism. Type class polymorphism from Mayank Bairagi

Empower Scala with Apache Solr

Reading Time: 3 minutes Solr is ready to use enterprise search server. Here I am going to show you how we can use both of them together to empower your scala application with solr. Solr is able to achieve fast search responses because, instead of searching the text directly, it searches an index instead. This is like retrieving pages in a book related to a keyword by scanning the index Continue Reading