Kops allows deployment of highly available Kubernetes clusters on AWS and Google (GCP) clouds.. It includes features such as dry-runs and automatic idempotency, terraform config generation making KOps a great option for do-it-yourself (DIY) developers and for deploying small production grade clusters.
But factors such as deployment of large production-grade clusters, managing complex network and storage configurations and enabling on-premise multi-tenancy deployments make DIY Kubernetes with Kops very complex and slow.
Transcript of Video:
Arun: [00:20] K OPS or Kops are Kubernetes Operations is an open source project used to set up Kubernetes clusters very easily and quickly. It's called the cube cuddle way of creating clusters. Most DIY folks who like to set up clusters by themselves play with it use Kops very often and Kops can be used to deploy Kubernetes clusters on AWS and GKE primarily.
Arun: [00:45] Kops has a lot of networking back ends and choosing one depending on use case makes it easy for you to set up various types of clusters. It does has a lot of options, so what happens is it does get difficult to make those configurations right, get them right and bring a cluster up successfully.
Arun: [01:05] Kops makes it easy for small clusters in size, but when it comes to big clusters with varying custom configurations it does get very difficult.
Arun: [01:12] So, let's take an example. There are use cases where customers need to bring up Kubernetes clusters, say on AWS and there are different ways in which you can set up AWS networking. So, you can have all of your cluster running on a public VPC or you might want to run all of your nodes on a private subnet, but still have access to the public internet for services, or you might want to run your cluster on the AWS VPC, but then connect it to your data center on VPN. These are some of the options that customers have, and to be able to do this with Kops , it's possible, but it does get very complex.
Arun: [01:54] So, with all of this complexities, what happens is it takes a lot of time to get the configuration right and to bring the cluster up successfully. It also means that there is a need for specific talent where people can understand how Kops works. How configuration is made and also the AWS cloud architecture itself. All of this slows down an organization especially if it's going to be developers trying to stand up Kubernetes clusters.
Arun: [02:26] So, these are some of the cases or use cases where a managed solution for Kubernetes might make a lot of sense. Managed solutions give you the flexibility of use cases configuration. It also gives you a quick deployment time and not just deployment, think about what you need to do after deployment. So, operations, supportability, looking at monitoring, looking at logging. All of these are definitely possible to do it yourself approaches with Prometheus, with Grafana, but then putting all of this together, is much easier and much faster with a managed solution.
Arun: [03:03] To summarize, if you want to bring up small Kubernetes clusters, Kops is a great way. You could also bring up production grade clusters too, but once a cluster is brought up, there are a bunch of other things to do in terms of operations, logging, monitoring, so for most people, who manage a Kubernetes solution might be a better way to go.