Kubernetes Operations (kops) Project

In this lesson, we will explore Kubernetes operations (kops) project.

What Is Kubernetes Operations (kops) Project?

If you visit Kubernetes Operations (kops) project, the first sentence you’ll read is that it is “the easiest way to get a production-grade Kubernetes cluster up and running.” That sentence is accurate only if we exclude Google Kubernetes Engine (GKE). We prefer kops since it provides a good level of simplicity without taking away the control of the process. It allows us to tweak the cluster more than we would be permitted with hosted solutions. It is entirely open source, it can be stored in version control, and it is not designed to lock you into a vendor.

Creating Kubernetes Cluster in AWS

If your hosting vendor is AWS, kops is, in our opinion, the best way to create a Kubernetes cluster. Whether that’s true for GCE, is open for debate since GKE works great. We can expect kops to be extended in the future to other vendors.

We’ll use kops to create a Kubernetes cluster in AWS. This is the part of the story that might get you disappointed. You might have chosen to run Kubernetes somewhere else. Don’t be depressed. Almost all Kubernetes clusters follow the same principles even though the method of setting them up might differ. The principles are what truly matters, and I’m confident that, once you set it up successfully on AWS, you’ll be able to transfer that knowledge anywhere else.

Why AWS?

The reason for choosing AWS lies in its adoption. It is the hosting vendor with, by far, the biggest user-base. If we’d have to place a blind bet on your choice, it would be AWS solely because that is statistically the most likely choice. We could not explore all the options in a single chapter. If we are to go through all hosting vendors and different projects that might help with the installation, we’d need to dedicate a whole course to that.

Why kops?

Kops lets us create a production-grade Kubernetes cluster. That means that we can use it not only to create a cluster, but also to upgrade it (without downtime), update it, or destroy it if we don’t need it anymore. A cluster cannot be called “production grade” unless it is highly available and fault tolerant. We should be able to execute it entirely from the command line if we’d like it to be automated. Those and quite a few other things are what kops provides, and what makes it great.

Kops follows the same philosophy as Kubernetes. We create a set of JSON or YAML objects which are sent to controllers that create a cluster.


We’ll discuss what kops can and cannot do in more detail soon. For now, in the next lesson, we’ll jump into the hands-on part of this chapter and ensure that all the prerequisites for the installation are set.

Get hands-on with 1200+ tech skills courses.