Service Meshes and SMI Demystified

TL;DR Microservices are about communicating through APIs! A service mesh defines the communication interface between microservices. In an orchestrated environment (Kubernetes), containers talk to each other on top of overlay networking. Service mesh is a central source of truth for controlling the information flow between microservices. Mesh enables both the scalability benefits of microservices as well as centralized advantages of monoliths. Service meshes come with built-in observability (logging, metrics, and tracing) for microservices communications....

Jun 10, 2019 · 2 min · Milad Irannejad

What is Knative?

TL;DR Knative is a cloud-native serverless framework for Kubernetes environments. It is created and open-sourced by Google with contributions from other companies (Pivotal, IBM, Lyft, etc.). Unlike current serverless frameworks (AWS Lambda, Azure Functions, …), Knative eliminates cloud vendor lock-in. Knative usese Kubernetes for container orchestration and Istio service mesh for routing, load balancing, etc. Knative has three components: Build, Serving, and Eventing. Build: builds containers from source code on Kubernetes (on-cluster container builds)....

Jun 8, 2019 · 1 min · Milad Irannejad

gVisor: Building and Battle Testing a Userspace OS in Go

TL;DR A container is a package format and a content addressable bundle of content addressable layers! namespaces and cgroups are two key features of Linux kernel enabling containerization. Containers running on a host share a single Linux kernel! (a singler scheduler, a single memory manager, and so on) The Linux kernel has so many known and unknown bugs! Sandboxes are a way of getting an extra layer of isolation for containers....

May 19, 2019 · 1 min · Milad Irannejad

Our Software Dependency Problem

Takeaways: Reusing software through external dependencies has become widespread so quickly. The risks associated with software dependencies are not yet fully studied and considered. Follow the latest and best practices available for managing software dependencies. READ MORE

Apr 27, 2019 · 1 min · Milad Irannejad