Kubernetes is the Kernel

4 MIN READ
MIN READ
TABLE OF CONTENTS
    4 MIN READ
    MIN READ

    One of my former teammates approached me the other day (and by other day i mean like 3 months ago) and asked 'Am I thinking about this right? Kubernetes, or K8s, is actually akin to the Linux Kernel. So Rancher and OpenShift are distributions of Kubernetes. And for a supported enterprise application I'm more likely to use a more enterprise focused distribution than a DIY distribution, yeah?' To which I responded 'Yep, you hit the nail on the head'.As the number of K8s deployment models, distributions, and use cases become more widespread we are going to keep having conversations about why you choose one k8s stack over another. There is a strong desire to avoid things like RKE (Rancher) and OKD (OpenShift), but I see lots of struggles getting this to work.While talking with my new team a few weeks ago we kept going back and forth about the benefits of Helm in K8s, and so I broke the comparison down even further into the following chart:

    Level

    Linux

    Kubernetes

    Scheduler

    Tux the penguin

    Linux Kernel

    Kubernetes (container engine).png

    Kubernetes

    Distribution

    Gentoo Logo

    Gentoo

    kubespray

    Kubespray

    Ubuntu

    Ubuntu

    Rancher (RKE)

    Mesosphere

    Mesosphere

    Image result for fedora linux

    Fedora

    Image result for openshift

    OpenShift (OKD)

    Redhatlinux

    Red Hat Enterprise Linux

    Red Hat Openshift Vector Logo

    Red Hat OpenShift Container Platform

    ApplicationstarballsImages, YAML objectsPackages

    Rpm

    RPM, DEB

    Helm

    Helm, Operators

    Package Manager

    Katello

    Satellite/Katello

    Olm

    Operator Lifecycle Manager (OLM)

    The same week we had that conversation, Brian ‘Redbeard’ Harrington of CoreOS fame posted a blog about OpenShift and K8s that expressed the same sentiment.So, while not a perfect comparison, I feel like it kinda drives the point home. If you are planning to run K8ss, unless you have the spare resources to build all the layers, you should aim for a distribution. Much like Linux,

    • even the distributions can have their rough points, but they are going to have solved lots of problems for you that just running K8s directly will not.
    • the longer we run and improve these tools the cleaner and easier they will be to run.
    • what you see in the Kubernetes distributions is a push for simplicity through opinionation. If you don't like the distribution's opinions, things are not going to be easy for you. But if you can find a distribution that you agree with or can conform too, that is a powerful step.

    Have you been thinking about the similarities between the Linux kernel and K8s as well? Drop me a message @xaethWant to learn more about K8s? Check out our documentation!

    false
    false