I’ve heard of March Madness before, but just recently I found out that NGINX kicked off something called Microservices March 2022. Microservices March is a month-long program that consists of four weekly units focused on a specific Kubernetes topic. The program NGINX chose for 2022 is Kubernetes Networking. This program is geared towards both beginners and those who are a bit more seasoned with Kubernetes.
What sparked my interest in registering for NGINX Microservices March? I’d still consider myself a relative beginner when it comes to Kubernetes. I’ve done a number of these kinds of training sessions in the past and even struggled through the process of building my own home lab the hard way. For the most part, I don’t really interact with Kubernetes day in and day out, so most of the experience that I have is few and far between in sterile lab environments. That has been enough to give me a pretty decent high-level understanding of Kubernetes, but like most of us in tech, I learn better from doing with lots of repetition. Microservices March seemed like a great way to get another set of reps in.
NGINX breaks each week down into a few different pieces that can be consumed in about 4-5 hours total, but doesn’t have to be all at once. This week started off with a livestream (that I consumed on demand) called Architecting Kubernetes Clusters for High-Traffic Websites. For folks like myself who lean more towards the beginner side of things, the webinar did a great job of highlighting the major aspects of moving away from monoliths and towards microservices.
After a brief review of the core components of Kubernetes, it dove into something that I’ve found is often overlooked in these types of tutorials: the networking aspect. I really enjoyed how they mapped out how things would look in a traditional infrastructure world, then altered the picture and names to fit the corresponding Kubernetes definitions. That helped paint a clearer picture, as the infrastructure comparisons seemed to contrast the new terms in a way that is stickier for me.
The webinar also ran through a great demo on how to reduce Kubernetes latency with autoscaling. In addition to a demo overview, NGINX provides a lab of all the demos through Instruqt for each Microservices March unit. I really like Instruqt as a demo platform because it is super easy to work with and allows you to run commands interactively. You get an actual Kubernetes cluster to toy around with and in the case of this week’s demo, we also got to see how Kubernetes networking, NGINX Ingress Controller, Prometheus, and KEDA all tied together to create an app that was automatically able to scale as the demands of user traffic increased. I feel like most of the other Kubernetes tutorials I’ve played with leave you feeling like Kubernetes can do all the things by itself; so it was great to see how other tools fit in to add value beyond base Kubernetes.
The last aspect of each weekly unit is extra content to explore the topic further. This week consisted of a blog post on Kubernetes Networking 101 and a blog series on how to choose an Ingress controller. The webinar provided such an enticing intro that I was really interested to dig deeper into the blog posts and learn even more. As someone more familiar with the traditional IT vendor ecosystem, I’ve always wondered how you would architect Kubernetes, given all the other tools and options that are out there. It seems somewhat daunting to know where to start, but the blog series on how to choose an Ingress controller gave some great insight into the fact that even though cloud native is very different from traditional IT, many similar architectural considerations need to be made.
At the end of week one, I definitely feel like I’ve stepped a little bit past that beginner level and am excited to continue on throughout March! You can learn more about Microservices March 2022: Kubernetes Networking by visiting their website.