Kubernetes — the Destroyer of Worlds?

I’ve just published a post about how using our own custom scheduler on top of Kubernetes cut our SQS bill by 50%. That’s what orchestration is all about — the power to programmatically do stuff in production that would have been hard or impossible to achieve previously. Kubernetes is an amazing data centre automation platform.

Automation, like Kubernetes, is fantastic, but it’s also disruptive — by which I mean destructive. The planned endgame of automating what you do is generally that people will lose their jobs. That is the purpose of automation (with concomitant cost savings, increased speed and improved accuracy). Humans are just less efficient than machines.

But K8s and the other orchestrators are also creative. They give us the ability to programmatically control every application running on our infrastructure through an API (start them, stop them, log them, move them). That is the foundation for new applications and new operational technology jobs. However, those new jobs will need different skills from the old ops ones.

To write custom schedulers or other kinds of new operational tool you’ll need to do some basic programming. You don’t need to be amazing, you don’t need to write tiny, recursive code that could win competitions. You don’t need to write your programs inside 30 minutes to demonstrate you’re a shit-hot coder. Who cares about that? A careful and methodical approach by someone who understands what they are trying to achieve is better than a work-of-art written by someone who doesn’t understand the rigor or requirements of a production system.

Writing good custom schedulers for k8s and the other orchestrators will be within the reach of ops folk who have never programmed before. Not only should they do it, I believe they will do it very well.

The people that orchestrators like k8s could put out of work are the same people who should be re-deployed fully exploiting those orchestrators — but they’ll need to take a leap and have a go at Go*.

If you’re an ops person and you want to know where to start, take a look at what Kelsey Hightower talks and writes about — he’s right on the mark on this.

*Other programming languages are also available.