17 Nov 2015
Earlier this week, Deis released Helm—the package manager for Kubernetes. Conceptually similar to Homebrew, Helm makes it easy to install standard workloads on Kubernetes.<!--more-->
But... Kubernetes is a container platform, so why does it need a package manager?
Perhaps looking at OS-level package managers (like Homebrew, apt, yum/rpm, ports, and so on) will help explain the situation.
Why use apt, yum, or homebrew?
Let's take a typical scenario.
I'm sat at the terminal in the chilly server room. I tried the command again:
./configure && make. Page after page of information scrolled across the screen. Apache httpd was building. I flipped open my book to read a few pages while I waited. Several minutes later, I saw the
make command fail. I just wanted a stock Apache httpd server, but I couldn't figure the right combination of build flags, nor could I find and install all of the correct dependencies.
In frustration, I gave up and tried the radical approach: I switched operating systems.
Then when the time came to install Apache httpd, I simply typed
apt-get install apache. And hey presto! It worked. If I needed to make changes, I could head to the
/etc/httpd directory and configure away. But even prior to that I had a functioning web server. Apache httpd was working right out of the box.