In a previous blog post talking about why Kubernetes on OpenStack, a few different deployment methods were discussed:
Kubespray
Rancher
Portainer
Kubeadm
In this follow-up blog post, you’re going to learn about the pros and cons of each deployment, an overview of each method, why they exist, and ultimately how to decide which method to go with for your environment.

Kubespray

Kubespray is a top-layer/frontend of sorts for Kubeadm. It’s a collection of Ansible Playbooks that allows you to install a highly available Kubernetes cluster in an automated fashion. In the background, Kubespray is running Kubeadm for the cluster bootstrapping.

Kubespray is certainly a great, repeatable solution for engineers that want a production-ready Kubernetes cluster without having to do too much of the heavy lifting. The primary concern is that for Kubespray to get deployed, it must use Ansible Playbooks, which means if the organization isn’t already using Ansible, you’re forced to do so. That may mean that an organization will have to adopt yet another tool. Other than that, Kubespray is a great way to deploy production clusters in an automated way.

Strengths: A declarative installation method that works both in the cloud and on-prem, along with a Terraform module for repeatable deployments.
Weaknesses: The automation workflow is great, but the installation can take far longer than other available options. You must know Ansible.

Rancher

Rancher is like an “all in one” Kubernetes solution. There’s everything from logging to deployments to managing Kubernetes clusters and even RKE, which is the Rancher Kubernetes Engine. Ranchers’ slogan is “Kubernetes-as-a-Service”, and it definitely makes sense with what they’re offering.

From a production perspective, if you have multiple Kubernetes clusters and you want the ability to manage them in one place along with checking their logs to see if anything goes wrong, having a central location to do that versus having to change your Kubeconfig every time you want to check another Kubernetes cluster is a big deal for the enterprise.

Rancher is backed by Suse and has multiple methods of deployment, from in the cloud and on-prem to a fully managed SaaS-based solution so you don’t have to worry about the underlying infrastructure.

Strengths: A deployment, logging, easy-to-use UI, and RBAC solution that pretty much has everything you need for Kubernetes out of the box and installed for any cloud-based or on-prem environment.

Weaknesses: Monitoring and scanning implementations would make Rancher a full-fledged solution.

 

Portainer

Portainer, like Rancher, is an all-in-one solution, but it doesn’t just support Kubernetes. It also supports Docker Swarm and Nomad, which makes Portainer more of an overall orchestration-management solution versus just a Kubernetes management solution.

If you’re thinking about whether to choose Portainer or Rancher, the key things to keep in mind are:

  1. Portainer doesn’t help you construct a Kubernetes cluster, it helps you build Kubernetes clusters.
  2. Portainer is more like OpenShift from a platform perspective vs a management solution like Rancher.
  3. Portainer allows engineers to edit/change security defaults when deploying Portainer, which is a huge leg up in the enterprise space.

Strengths: Compared to other solutions that are similar, Portainer is easier to use, more straightforward, and provides a full orchestration management system by managing Kubernetes, Docker Swarm, and Nomad.
Weaknesses: When pulling logs, there is sometimes a delay, which isn’t a huge deal but something to take into account.

Kubeadm

Kubeadm is the de facto standard for deploying a Kubernetes cluster that gives you a healthy combination of managing the underlying components (control planes, worker nodes, etc.) and automation. With a few scripts and the kubeadm command-line tool, you can have a Kubernetes cluster up that’s production-ready in a few minutes. After the cluster is up, the kubeadm init command outputs the bash line needed to connect other servers to the Kubernetes cluster as control planes and worker nodes.

As previously discussed, Kubespray uses Kubeadm as the bootstrap tool, and a few other Kubernetes platforms do the same. Also, if anyone in your organization is studying for the Certified Kubernetes Administrator (CKA) exam, Kubeadm is what’s used for the exam, which is one of the many reasons it’s a standard in the Kubernetes space.

Because Kubeadm is easy to configure, engineers can test it out and confirm that it works as expected anywhere from a Raspberry Pi to a virtual machine running on a laptop.

Strengths: A good middle ground between a raw Kubernetes cluster and a managed Kubernetes service in the cloud. Automation is top-notch and gives you the ability to quickly spin up clusters.
Weaknesses: The installation can be a bit heavy to manage, but once you do it a few times, you can quickly get used to it.

More From OpenMetal 

Kubernetes and Containerization in OpenStack

When considering OpenStack and Kubernetes, it is important to note that they do not compete with each other, rather, they are complementary projects. OpenStack is an infrastructure software, its priority is to manage your infrastructure resources such as virtual …Read more

OpenStack vs OpenShift: Understanding the Differences and Choosing the Right Platform for Your Business

OpenStack vs OpenShift: Understanding The Differences And Choosing The Right Platform For Your Business

This blog post will provide a thorough overview of OpenStack and OpenShift which will help you choose the platform that is best for your organization’s needs. I’ll cover the architectures and deployment models of both platforms, as well as their key featuresRead more

Kubernetes Workloads on OpenStack

Kubernetes Workloads On OpenStack

With Kubernetes, organizations can take advantage of the scalability and flexibility of OpenStack while also leveraging the orchestration capabilities of Kubernetes.

On this page you will find a library of Kubernetes guides written by our in house engineers, video tutorials by LearnLinuxTV and Michael Levan, and blogs!… Learn More

 

OpenMetal Education & Training

Accelerate your OpenStack Training

Learn More

 

Kubernetes Workloads

Everything you need to know about running
Kubernetes Workloads on OpenStack

Learn More

 

OpenMetal’s Documentation

Check out guides and notes put together
by OpenMetal’s Engineers

OpenStack Documentation

 

Test Drive

For eligible organizations, individuals, and Open Source Partners, Private Cloud Cores are free to trial. Apply today to qualify.

Apply Now

Subscribe

Join our community! Subscribe to our newsletter to get the latest company news, product releases, updates from partners, and more.

Subscribe