Another two weeks, another Workflow release. The 2.3 release brings with it some internal release changes, improved private registry support, tools to call for help, and faster deploys. You might say Papa's got a brand new bag.Read More
In a previous post, we showed you how to build a custom Kubernetes scheduler with Elixir.
That post was inspired by a recent talk by Kelsey Hightower.
Kelsey also tweeted:
It's not that everyone should go out and build custom schedulers, but they should know how if they need too.— Kelsey Hightower (@kelseyhightower) June 8, 2016
I would take this logic and apply it to autoscalers too.
While everyone doesn’t need to go and build their own autoscaler, it can be beneficial to understand how they work. And one of the best ways to gain that experience is by trying your hand at writing your own.Read More
Developers love Docker. You can see this from the amount of attention Docker has got the last couple of years. But, one of the biggest issues developers faced was the non-availability of Docker on platforms other than Linux.
There were options like Boot2Docker (which we previously covered) that made working with Docker possible on a non-Linux machine, but the experience was sub-optimal.
Now with the general availability of Docker for Mac and Windows, developers no longer need to have a Linux box to experience Docker in it's full glory.
Docker for Mac is a native Mac application, built from scratch. With a native user interface and auto-update capability, it is deeply integrated with OS X native virtualization, Hypervisor Framework, networking, and file system. This makes Docker for Mac faster and more reliable than previous ways of getting Docker on a Mac.
In this post, we'll take a look at Docker for Mac and see how to get up and running with the stable release.Read More
The talk was awesome. It's incredible to see what kind of things you can do with a base system as good as Kubernetes.
However, I missed one thing. The example provided by Kelsey was a Go application. Which is the main language used with Kubernetes. So, if you look at that code without any context, you might think it's using some kind of Kubernetes internal packages. But it's not! It's a standalone piece of code that happens to make some HTTP calls.
To illustrate this point, I decided to write my own scheduler, in a different language. In my case, Elixir, because that's the language I happen to be learning at the moment.
This post isn't an intro to Elixir, but the code should be easy to follow.
Also, I'm going to use
localhost when accessing the Kubernetes API. Why? For simplicity. If we run
kubectl proxy on a computer connected to the Kubernetes master, we will not need to deal with authorization, hosts, and so on. The
proxy command will do it for us.
So, let's dive in.Read More