Guides

How to get started, and accomplish tasks, using Kubernetes.

Edit This Page

Picking the Right Solution

Kubernetes can run on a range of platforms, from your laptop, to VMs on a cloud provider, to 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. We’ll guide you in picking a solution that fits for your needs.

If you just want to “kick the tires” on Kubernetes, we recommend the local Docker-based solution using MiniKube.

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

Turn-key cloud solutions require only a few commands to create and cover a wider range of cloud providers.

Custom solutions require more effort to setup but cover and even they vary from step-by-step instructions to general advice for setting up a Kubernetes cluster from scratch.

Local-machine Solutions

Minikube is the recommended method for you to create a single node kubernetes cluster locally for purposes of development and testing. Setup is completely automated and doesn’t require a cloud provider account.

Use the Minikube getting started guide to try it out.

Hosted Solutions

Google Container Engine offers managed Kubernetes clusters.

Stackpoint.io provides Kubernetes infrastructure automation and management for multiple public clouds.

AppsCode.com provides managed Kubernetes clusters for various public clouds (including AWS and Google Cloud Platform).

KCluster.io provides highly available and scalable managed Kubernetes clusters for AWS.

Platform9 offers managed Kubernetes on-premises or any public cloud, and provides 24/7 health monitoring and alerting.

OpenShift Dedicated offers managed Kubernetes clusters powered by OpenShift and OpenShift Online provides free hosted access for Kubernetes applications.

Turn-key Cloud Solutions

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

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. It may be a little out of date, but it will be easier than starting from scratch. If you do want to start from scratch because you have special requirements or just because you want to understand what is underneath a Kubernetes cluster, try the Getting Started from Scratch guide.

If you are interested in supporting Kubernetes on a new platform, check out our advice for writing a new solution.

Cloud

These solutions are combinations of cloud provider and OS not covered by the above solutions.

On-Premises VMs

Bare Metal

Integrations

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

Table of Solutions

Here are all the solutions mentioned above in table form.

IaaS Provider Config. Mgmt OS Networking Docs Conforms Support Level
GKE     GCE docs ‘œ“ Commercial
Stackpoint.io   multi-support multi-support docs   Commercial
AppsCode.com Saltstack Debian multi-support docs   Commercial
KCluster.io   multi-support multi-support docs   Commercial
Platform9   multi-support multi-support docs   Commercial
GCE Saltstack Debian GCE docs ‘œ“ Project
Azure CoreOS CoreOS Weave docs   Community (@errordeveloper, @squillace, @chanezon, @crossorigin)
Azure Ignition Ubuntu Azure docs   Community (Microsoft: @brendandburns, @colemickens)
Docker Single Node custom N/A local docs   Project (@brendandburns)
Docker Multi Node custom N/A flannel docs   Project (@brendandburns)
Bare-metal Ansible Fedora flannel docs   Project
Bare-metal custom Fedora none docs   Project
Bare-metal custom Fedora flannel docs   Community (@aveshagarwal)
libvirt custom Fedora flannel docs   Community (@aveshagarwal)
KVM custom Fedora flannel docs   Community (@aveshagarwal)
Mesos/Docker custom Ubuntu Docker docs   Community (Kubernetes-Mesos Authors)
Mesos/GCE       docs   Community (Kubernetes-Mesos Authors)
DCOS Marathon CoreOS/Alpine custom docs   Community (Kubernetes-Mesos Authors)
AWS CoreOS CoreOS flannel docs   Community
GCE CoreOS CoreOS flannel docs   Community (@pires)
Vagrant CoreOS CoreOS flannel docs   Community (@pires, @AntonioMeireles)
Bare-metal (Offline) CoreOS CoreOS flannel docs   Community (@jeffbean)
CloudStack Ansible CoreOS flannel docs   Community (@runseb)
Vmware vSphere Saltstack Debian OVS docs   Community (@imkin)
Vmware Photon Saltstack Debian OVS docs   Community (@alainroy)
Bare-metal custom CentOS none docs   Community (@coolsvap)
AWS Juju Ubuntu flannel docs   Community ( @matt, [@chuck]*(https://github.com/chuckbutler) )
GCE Juju Ubuntu flannel docs   Community ( @matt, [@chuck]*(https://github.com/chuckbutler) )
Bare Metal Juju Ubuntu flannel docs   Community ( @matt, [@chuck]*(https://github.com/chuckbutler) )
Rackspace Juju Ubuntu flannel docs   Community ( @matt, [@chuck]*(https://github.com/chuckbutler) )
Vmware vSphere Juju Ubuntu flannel docs   Community ( @matt, [@chuck]*(https://github.com/chuckbutler) )
AWS Saltstack Debian AWS docs   Community (@justinsb)
AWS kops Debian AWS docs   Community (@justinsb)
Bare-metal custom Ubuntu flannel docs   Community (@resouer, @WIZARD-CXY)
libvirt/KVM CoreOS CoreOS libvirt/KVM docs   Community (@lhuard1A)
oVirt       docs   Community (@simon3z)
OpenStack Heat Saltstack CentOS Neutron + flannel hostgw docs   Community (@FujitsuEnablingSoftwareTechnologyGmbH)
Rackspace CoreOS CoreOS flannel docs   Community (@doublerr)
any any any any docs   Community (@erictune)

Note: The above table is ordered by version test/used in notes followed by support level.

Definition of columns

Analytics Create an Issue Edit this Page