Kamesh Sampath

Kamesh is a Principal Software Engineer at Red Hat, as part of his additional role as Director of Developer Experience at Red Hat -- he actively educates on Kubernetes/OpenShift, Servicemesh, and Serverless technologies --. With a career spanning close to two decades, most of Kamesh’s career was with services industry helping various enterprise customers build Java-based solutions. Kamesh has been a contributor to Open Source projects for more than a decade and he now actively contributes to projects like Knative, Minishift, Eclipse Che, fabric8 etc., As part of his developer philosophy he strongly believes in LEARN MORE, DO MORE and SHARE MORE!

Areas of Expertise

Java, Kubernetes, Istio, Knative, Serverless

Recent Posts

DevNation Live Bengaluru: Sail into cloud — An introduction to Istio

DevNation Live Bengaluru: Sail into cloud — An introduction to Istio

Our first DevNation Live regional event was held in Bengaluru, India in July. This free technology event focused on open source innovations, with sessions presented by elite Red Hat technologists.

In this session, Kamesh Sampath provides an overview of Envoy and Istio, two open source projects that will change the way you write cloud-native Java applications on Kubernetes. We’ll show how to download and set up Istio on your local laptop, then deploy Java microservices as part of the Istio service mesh with Istio sidecar proxy.

Continue reading “DevNation Live Bengaluru: Sail into cloud — An introduction to Istio”

Share
Deploying an internal container registry with Minikube add-ons

Deploying an internal container registry with Minikube add-ons

Minikube has a feature called add-ons, which help in adding extra components and features to Minikube’s Kubernetes cluster.

The registry add-on will deploy an internal registry, which can then be used to push and pull Linux container images. But at times, we might wish to mimic push and pull to different registries (i.e., using aliases for container registry). In this article, I will walk you through the steps required to achieve the same.

Continue reading “Deploying an internal container registry with Minikube add-ons”

Share
Build your Kubernetes armory with Minikube, Kail, and Kubens

Build your Kubernetes armory with Minikube, Kail, and Kubens

Kubernetes has grown to be a de facto development platform for building cloud-native applications. As developers, we want to be productive from the word go, or, shall we say, from the word code. But to be productive, we must be armed with the right set of tools. In this article, I will take a look at three important tools that should become part of your Kubernetes tool chest, or armory.

Continue reading “Build your Kubernetes armory with Minikube, Kail, and Kubens”

Share
Init Container Build Pattern: Knative build with plain old Kubernetes deployment

Init Container Build Pattern: Knative build with plain old Kubernetes deployment

With Kubernetes evolving at supersonic speed and seeing a lot of adoption in the enterprise world, the developer community is now looking for solutions to common Kubernetes problems, such as patterns. In this article, I will explore a new Kubernetes pattern using Init Containers.

Let’s start with the use case that gave birth to this problem: Quarkus—Supersonic and Subatomic Java—has excited the Java developer community with its amazing speed and all new native build artifact for Java applications. As one of those excited developers, I want to quickly build and deploy a Quarkus application on to Kubernetes.

Continue reading “Init Container Build Pattern: Knative build with plain old Kubernetes deployment”

Share
Whisking Functions with Promises using OpenWhisk

Whisking Functions with Promises using OpenWhisk

Over the past few weeks I have been learning and enhancing my skills around the new buzz word “serverless” and trying to understand what this buzz is all about.  As an ardent open-source developer, I was looking for a platform where I can develop and deploy the serverless functions, which is when I stumbled upon Apache OpenWhisk.

In this blog I will demonstrate how to build a simple nodejs function that can do reverse geocoding using Google Maps API, and how to deploy the functions on to Apache OpenWhisk.

The context is to show building an Apache OpenWhisk JavaScript action, which involves a callback.  As most of us are familiar with Google Maps API (which has lots of callbacks), it provides a good example for this blog.

Continue reading “Whisking Functions with Promises using OpenWhisk”

Share

Configuring Spring Boot on Kubernetes with Secrets

In the Part-I of the series, we saw how we used ConfigMaps in configuring spring boot application Kubernetes. ConfigMaps are OK when we use simple configuration data that do not contain sensitive information. When using sensitive data like API Keys, passwords etc. Secrets are the preferred and recommended way. In this second part of the series, we will explore configuring spring boot on kubernetes with Secrets.

The sources for this blog post are available in my github repo.

Continue reading “Configuring Spring Boot on Kubernetes with Secrets”

Share

Configuring Spring Boot on Kubernetes with ConfigMap

ConfigMaps is the Kubernetes counterpart of the Spring Boot externalized configuration. ConfigMaps is a simple key/value store, which can store simple values to files. In this post  “Configuring Spring Boot on Kubernetes with ConfigMap”,  we will see how to use ConfigMaps to externalize the application configuration.

Continue reading “Configuring Spring Boot on Kubernetes with ConfigMap”

Share

Configuring Spring Boot Application on Kubernetes

When the developers plan to deploy Spring Boot application on Kubernetes, the first question comes to a spring developer’s mind is “Can I use Spring Config server?” Spring Config server is a de-facto way of doing centralized configuration of a distributed application. Yes, we can use Spring Config server, but let’s think of some constraints that Spring Config server can have in a typical Enterprise deployment:

Continue reading Configuring Spring Boot Application on Kubernetes

Share
Enabling LDAP Security for DataGrid Cache

Enabling LDAP Security for DataGrid Cache

Expanding on Tristan’s blog, where he spoke of enabling security for JBoss Data Grid caches, in this post we will cover how to add LDAP based security to the JDG caches. The principles and techniques remain defined by Tristan, but there are some minor changes that I will be highlighting in this blog for a successful working configuration of JDG enabled with LDAP security.

Continue reading “Enabling LDAP Security for DataGrid Cache”

Share