This guide walks a deployer through launching a multi-node Kubernetes cluster on bare metal servers running CoreOS. After completing this guide, a deployer will be able to interact with the Kubernetes API from their workstation using the kubectl CLI tool.
For all nodes running Kubernetes components (masters & workers), you must use a CoreOS version 962.0.0+ for the kubelet-wrapper
script to be present in the image. If you wish to use an earlier version (e.g. from the 'stable' channel) see kubelet-wrapper for more information.
Use the official CoreOS bare metal guides for installation instructions:
Mixing multiple methods is possible. For example, doing an install to disk for the machines running the etcd cluster and Kubernetes master nodes, but PXE-booting the worker machines.
The following guides assume the use of flannel as a software-defined overlay network to manage routing of the pod network. However, bare metal is a common platform where a self-managed network is used, due to the flexibility provided by physical networking gear. One common alternative is to use Calico networking, avoiding the use of an overlay and allowing interop with physical networking gear using BGP.
See the Kubernetes networking documentation for more information on self-managed networking options.
Did you install CoreOS on your machines? An SSH connection to each machine is all that's needed. We'll start the configuration next.
I'm ready to get started