Member-only story
Stupid Simple Kubernetes — Deployments, Services, and Ingresses explained by examples
Everything you need to know to set up production-ready Microservices using Kubernetes
In the first part of this series, we learned about the basic concepts used in Kubernetes, its hardware structure, about the different software components like Pods, Deployments, StatefulSets, Services, Ingresses, and Persistent Volumes and we saw how to communicate between services and with the outside world.
In the previous article, we prepared our system infrastructure to deploy our microservices using Azure Cloud.
In this article we will create a NodeJS backend with a MongoDB database, we will write the Dockerfile to containerize our application, we will create the Kubernetes Deployment scripts to spin up the Pods, create the Kubernetes Service scripts to define the communication interface between the containers and the outside world, we will deploy an Ingress Controller for request routing and write the Kubernetes Ingress scripts to define the communication with the outside world.
Because our code can be relocated from one node to another (for example a node doesn’t have enough memory, so the work will be rescheduled on a different node with enough memory), data saved on a node is…