Setup

Kubernetes v1.13 documentation is no longer actively maintained. The version you are currently viewing is a static snapshot. For up-to-date documentation, see the latest version.

Edit This Page

Picking the Right Solution

Kubernetes can run on various platforms: from your laptop, to VMs on a cloud provider, to a rack of bare metal servers. The effort required to set up a cluster varies from running a single command to crafting your own customized cluster. Use this guide to choose a solution that fits your needs.

If you just want to “kick the tires” on Kubernetes, use the local Docker-based solutions.

When you are ready to scale up to more machines and higher availability, a hosted solution is the easiest to create and maintain.

Turnkey cloud solutions require only a few commands to create and cover a wide range of cloud providers. On-Premises turnkey cloud solutions have the simplicity of the turnkey cloud solution combined with the security of your own private network.

If you already have a way to configure hosting resources, use kubeadm to easily bring up a cluster with a single command per machine.

Custom solutions vary from step-by-step instructions to general advice for setting up a Kubernetes cluster from scratch.

Local-machine Solutions

Community Supported Tools

Ecosystem Tools

Hosted Solutions

Turnkey Cloud Solutions

These solutions allow you to create Kubernetes clusters on a range of Cloud IaaS providers with only a few commands. These solutions are actively developed and have active community support.

On-Premises turnkey cloud solutions

These solutions allow you to create Kubernetes clusters on your internal, secure, cloud network with only a few commands.

Custom Solutions

Kubernetes can run on a wide range of Cloud providers and bare-metal environments, and with many base operating systems.

If you can find a guide below that matches your needs, use it.

Universal

If you already have a way to configure hosting resources, use kubeadm to bring up a cluster with a single command per machine.

Cloud

These solutions are combinations of cloud providers and operating systems not covered by the above solutions.

On-Premises VMs

Bare Metal

Integrations

These solutions provide integration with third-party schedulers, resource managers, and/or lower level platforms.

Table of Solutions

Below is a table of all of the solutions listed above.

IaaS Provider Config. Mgmt. OS Networking Docs Support Level
Agile Stacks Terraform CoreOS multi-support docs Commercial
Alibaba Cloud Container Service For Kubernetes ROS CentOS flannel/Terway docs Commercial
any any multi-support any CNI docs Project (SIG-cluster-lifecycle)
any any any any docs Community (@erictune)
any any any any docs Commercial and Community
any RKE multi-support flannel or canal docs Commercial and Community
any Gardener Cluster-Operator multi-support multi-support docs Project/Community and Commercial
AppsCode.com Saltstack Debian multi-support docs Commercial
AWS CoreOS CoreOS flannel docs Community
AWS Saltstack Debian AWS docs Community (@justinsb)
AWS kops Debian AWS docs Community (@justinsb)
AWS Juju Ubuntu flannel/calico/canal docs Commercial and Community
Azure Juju Ubuntu flannel/calico/canal docs Commercial and Community
Azure (IaaS) Ubuntu Azure docs Community (Microsoft)
Azure Kubernetes Service Ubuntu Azure docs Commercial
Bare-metal custom CentOS flannel docs Community (@coolsvap)
Bare-metal custom Fedora none docs Project
Bare-metal custom Fedora flannel docs Community (@aveshagarwal)
Bare Metal Juju Ubuntu flannel/calico/canal docs Commercial and Community
Bare-metal custom Ubuntu flannel docs Community (@resouer, @WIZARD-CXY)
CloudStack Ansible CoreOS flannel docs Community (@sebgoa)
DCOS Marathon CoreOS/Alpine custom docs Community (Kubernetes-Mesos Authors)
Digital Rebar kubeadm any metal docs Community (@digitalrebar)
Docker Enterprise custom multi-support multi-support docs Commercial
Giant Swarm CoreOS flannel and/or Calico docs Commercial
GCE CoreOS CoreOS flannel docs Community (@pires)
GCE Juju Ubuntu flannel/calico/canal docs Commercial and Community
GCE Saltstack Debian GCE docs Project
Google Kubernetes Engine GCE docs Commercial
IBM Cloud Kubernetes Service Ubuntu IBM Cloud Networking + Calico docs Commercial
IBM Cloud Kubernetes Service Ubuntu calico docs Commercial
IBM Cloud Private Ansible multi-support multi-support docs Commercial and Community
Kublr custom multi-support multi-support docs Commercial
Kubermatic multi-support multi-support docs Commercial
KVM custom Fedora flannel docs Community (@aveshagarwal)
libvirt custom Fedora flannel docs Community (@aveshagarwal)
lxd Juju Ubuntu flannel/canal docs Commercial and Community
Madcore.Ai Jenkins DSL Ubuntu flannel docs Community (@madcore-ai)
Mirantis Cloud Platform Salt Ubuntu multi-support docs Commercial
Oracle Cloud Infrastructure Juju Ubuntu flannel/calico/canal docs Commercial and Community
Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE) multi-support docs Commercial
oVirt docs Community (@simon3z)
Platform9 multi-support multi-support docs Commercial
Rackspace custom CoreOS flannel/calico/canal docs Commercial
Red Hat OpenShift Ansible & CoreOS RHEL & CoreOS multi-support docs Commercial
Stackpoint.io multi-support multi-support docs Commercial
Vagrant CoreOS CoreOS flannel docs Community (@pires, @AntonioMeireles)
VMware vSphere any multi-support multi-support docs Community
VMware vSphere Juju Ubuntu flannel/calico/canal docs Commercial and Community
VMware Cloud PKS Photon OS Canal docs Commercial
VMware Enterprise PKS BOSH Ubuntu VMware NSX-T/flannel docs Commercial
VMware Essential PKS any multi-support multi-support docs Commercial

Definition of columns

Feedback