Ask HN: Clearly Learning Microservices and DevOps?
I’ve been working with Docker, k3s (command line), and Rancher (GUI) for a while now, but there’s one thing that’s haunted me forever: I never really understood what I was doing or why it made sense.
To me, virtualization and containerization have always felt the same. For example: - With virtualization, I can clone a VM to build a new VM(in virtualbox or hyper-v for example. I have not yet used big daddies like vmware).
- With Kubernetes, I can create replicas of pods or deployments.
But when people say things like “there’s an OS in a virtual machine but no host OS in Kubernetes,” it just doesn’t click. How can Kubernetes run without an OS? Every pod or deployment needs an OS underneath, right? In fact, I see a bigger problem with Kubernetes: instead of having a single OS like in a VM, now we have many OS instances (one per container or pod).
I recently interviewed with a DevOps team (I have 2 years of experience as a Linux IT support engineer), and questions like “What’s the difference between virtualization and containerization?” or “How many possible deployments/pods can a k3s cluster support, and why?” came up. I had no idea how to answer the latter. I thought maybe it’s related to the subnet mask of k3s (e.g., 10.42.0.x or /8), and that the number of hosts might be 2^24 or something, but I’m not confident.
What is traefik? They asked me. I said api gateway as I had read that in Apress book intro page. I blabbered it was something for SSL termination, reverse proxy, api gateway etc.
I am unable to have clarity on things I am working.
I want to improve and understand these concepts deeply. I’ve started investing entire time(I quitted my job) in learning computer science foundations like networking and operating systems, but I’m unsure if I’m studying the right materials to finally grasp DevOps concepts or if I’m just reading irrelevant stuff.
*So my questions to the HN community are:* - What are the founding principles of microservices and containerization, especially regarding containerization vs virtualization?
- How should I think about the OS in containers vs VMs?
- How do I reason about cluster capacity (e.g., number of pods/deployments) in Kubernetes or k3s?
- What foundational knowledge should I focus on to truly understand DevOps and container orchestration?
I’d appreciate any guidance, resources, or explanations that can help me move from confusion to clarity. Thanks in advance!
No comments yet