A Comprehensive Tutorial to Implementing OpenTracing With Jaeger

A Comprehensive Tutorial to Implementing OpenTracing With Jaeger

Recently, there has been a lot of discussion around OpenTracing. We’ll start this blog by introducing OpenTracing, explaining what it is and why it is gaining attention. Next, we will discuss distributed tracing system Jaeger and how it helps in troubleshooting microservices-based distributed systems. We will also set up Jaeger and learn to use it for monitoring and troubleshooting purposes.

Let us start by understanding why do we need “Opentracing” at all and how does it fits into the current scenario.

The Ultimate Guide to Disaster Recovery for Your Kubernetes Clusters

The Ultimate Guide to Disaster Recovery for Your Kubernetes Clusters

Kubernetes allows us to run a containerized application at scale without drowning in the details of application load balancing. You can ensure high availability for your applications running on Kubernetes by running multiple replicas (pods) of the application. All the complexity of container orchestrations is hidden away safely so that you can focus on developing application instead of deploying it. Learn more about high availability of Kubernetes Clusters and how you can use Kubedm for high availability in Kubernetes here.

But using Kubernetes has its own challenges, getting Kubernetes up and running takes some real work. If you are not familiar with getting Kubernetes up and running, you might want to take a look here.

Your Quintessential Guide to AWS Athena

Your Quintessential Guide to AWS Athena

Serverless has become a new trend today and is here to stay for sure! Now when you think of wireless internet, you know that it still has some wires but you don’t need to worry about them as you don’t have to maintain them. Similarly, serverless has servers but you don’t have to keep worrying about handling or maintaining them. All you need to do is focus on your code and you’re good to go.

It has some more benefits, such as:

  • Zero administration: You can deploy code without provisioning anything beforehand, or managing anything later. There is no concept of a fleet, an instance, or even an operating system.

  • Auto-scaling: It let’s your service providers manage the scaling challenges. You don’t need to fire alerts or write scripts to scale up and down. It handles quick bursts of traffic and weekend lulls the same way.

Know Everything About Spinnaker & How to Deploy Using Kubernetes Engine

Know Everything About Spinnaker & How to Deploy Using Kubernetes Engine

Spinnaker is an open-source, multi-cloud continuous delivery platform that helps you release software changes with high velocity and confidence.

Open sourced by Netflix and heavily contributed to by Google, it supports all major cloud vendors (AWS, Azure, App Engine, Openstack, etc.) including Kubernetes.

In this blog I’m going to walk you through all the basic concepts in Spinnaker and help you create a continuous delivery pipeline using Kubernetes Engine, Cloud Source Repositories, Container Builder, Resource Manager, and Spinnaker.

Learn How to Quickly Setup Istio Using GKE and its Applications

Learn How to Quickly Setup Istio Using GKE and its Applications

The Istio’s website says “An open platform to connect, manage, and secure microservices”.

As the network of microservices known as service mesh grows in size and complexity, it can become tougher to understand and manage. Its requirements can include discovery, load balancing, failure recovery, metrics, and monitoring, and often more complex operational requirements such as A/B testing, canary releases, rate limiting, access control, and end-to-end authentication. Istio claims that it provides complete end to end solution to these problems.

Managing Secrets Using AWS Systems Manager Parameter Store and IAM Roles

Managing Secrets Using AWS Systems Manager Parameter Store and IAM Roles

Amazon Web Services(AWS) has an extremely wide variety of services which cover almost all our infrastructure requirements. Among the given services, there is AWS Systems Manager which is a collection of services to manage AWS instances, hybrid environment, resources, and virtual machines by providing a common UI interface for all of them.

Services are divided into categories such as Resource Groups, Insights, Actions and Shared Resource. Among Shared Resources one is Parameter Store, which is our topic of discussion today.

Understanding Node.js Async Flows: Parallel, Serial, Waterfall and Queues

Understanding Node.js Async Flows: Parallel, Serial, Waterfall and Queues

Promises in Javascript has been around since a long time now. It helped solve the problem of callback hell. But as soon as the requirements get complicated with control flows, promises start getting unmanageable and harder to work with.

This is where async flows come to the rescue. In this blog, lets talk about the various async flows used frequently over raw promises and callbacks.

Mesosphere DC/OS Masterclass : Tips and Tricks to Make Life Easier

Mesosphere DC/OS Masterclass : Tips and Tricks to Make Life Easier

DC/OS is an open-source operating system and distributed system for data center built on Apache Mesos distributed system kernel. As a distributed system, it is a cluster of master nodes and private/public nodes, where each node also has host operating system which manages the underlying machine. 

This blog gives an overview on DC/OS, the cli, various kinds of APIs and also shared some lesser known tips and commands for effectively using DC/OS.

Taking Amazon's Elastic Kubernetes Service for a Spin

Taking Amazon's Elastic Kubernetes Service for a Spin

With the introduction of Elastic Kubernetes service at re: Invent last year, AWS finally threw their hat in the ever booming space of managed Kubernetes services. In this blog post, we will learn the basic concepts of EKS, launch an EKS cluster and also deploy a multi-tier application on it.

Real Time Analytics for IoT Data using Mosquitto, AWS Kinesis and InfluxDB

Real Time Analytics for IoT Data using Mosquitto, AWS Kinesis and InfluxDB

Internet of things (IoT) is maturing rapidly and it is finding application across various industries. Every common device that we use is turning into the category of smart devices. Smart devices are basically IoT devices. These devices captures various parameters in and around their environment leading to generation of a huge amount of data. This data needs to be collected, processed, stored and analyzed in order to get actionable insights from them. To do so, we need to build data pipeline.

In this blog we will be building a similar pipeline using Mosquitto, Kinesis, InfluxDB and Grafana. We will discuss all these individual components of the pipeline and the steps to build it.

Creating GraphQL APIs Using Elixir Phoenix and Absinthe

Creating GraphQL APIs Using Elixir Phoenix and Absinthe

GraphQL is a new hype in the Field of API technologies. We have been constructing and using REST API's for quite some time now and started hearing about GraphQL recently. GraphQL is usually described as a frontend-directed API technology as it allows front-end developers to request data in a more simpler way than ever before. The objective of this query language is to formulate client applications formed on an instinctive and adjustable format, for portraying their data prerequisites as well as interactions.

The Phoenix Framework is running on Elixir, which is built on top of Erlang. Elixir core strength is scaling and concurrency. Phoenix is a powerful and productive web framework that does not compromise speed and maintainability. Phoenix comes in with built-in support for web sockets, enabling you to build real-time apps.

In this blog we will explore how to build GraphQL APis for Phoenix/Elixir using Absinthe.

Extending Kubernetes APIs with Custom Resource Definitions (CRDs)

Extending Kubernetes APIs with Custom Resource Definitions (CRDs)

Custom resources definition (CRD) is a powerful feature introduced in Kubernetes 1.7 which enables users to add their own/custom objects to the Kubernetes cluster and use it like any other native Kubernetes objects. In this blog post, we will see how we can add a custom resource to a Kubernetes cluster using the command line as well as using the Golang client library thus also learning how to programmatically interact with a Kubernetes cluster.

As per this article, Custom Resource Definitions are part of a wider effort to refine and enhance Kubernetes as an extensible application platform, factoring everything but the bare essentials out of “core” Kubernetes in favour of modular and maintainable extensibility mechanisms.

In this blog we understand how one can go about writing their own CRDs with a hand-on demonstration.