When to use Azure Kubernetes Service (AKS) for compute service

Azure offers several ways to host your application code. In some recent articles here we described some services and features for App Services and Container Instances. Other alternatives include Azure Batch and Azure Functions.

The Azure Architecture Center provides guidance on how to choose a compute service for your application.

There are tradeoffs between control and ease of management. Infrastructure-as-a-Service (IaaS) vs Platform-as-a-Service (PaaS) offers various levels of control, flexibility, and portability.

Microsoft provides guidance for your compute service selection.

Continue reading “When to use Azure Kubernetes Service (AKS) for compute service”

Understand the architecture of Kubernetes

Kubernetes is a portable, extensible, open-source platform for managing you containerized workloads and services. Kubernetes architecture takes care of scaling and failover of your applications running on a container.

In this post, you will learn about Kubernetes Control Plane Components and the Node Components and how they work together. You will learn about how a pod hosts multiple containers, how multiple pods are in a node, how several nodes are included in a cluster, and how Kubernetes uses a control plane to keep track of what is happening in a cluster.

In short, you will understand the architecture of Kubernetes.

Continue reading “Understand the architecture of Kubernetes”

Understand microservices, containers, Kubernetes

In this post, learn how microservices, containers, and Kubernetes are all related. One is an architecture, one is a deployment mechanism, and one orchestrates how those deployments will function in production.

A microservice is a program that runs on a server or a virtual computer and responds to some request. Microservices give you a way to build applications that are resilient, highly scalable, independently deployable, and able to evolve quickly.

Microservices have a more narrow scope and focus on doing smaller tasks well.

A container is just a process spawned from an executable file, running on a Linux machine, which has some restrictions applied to it.

Kubernetes (aka, K8s) help you increase your infrastructure utilization through the efficient sharing of computing resources across multiple processes. Kubernetes is the master of dynamically allocating computing resources to fill the demand. The side benefits of K8s that make the transition to microservices much easier.

Let’s see how that works.

Continue reading “Understand microservices, containers, Kubernetes”