2016-07-06 23:34:16 +08:00
|
|
|
![Kubespray Logo](http://s9.postimg.org/md5dyjl67/kubespray_logoandkubespray_small.png)
|
|
|
|
|
|
|
|
##Deploy a production ready kubernetes cluster
|
|
|
|
|
2016-12-04 16:14:15 +08:00
|
|
|
If you have questions, join us on the [kubernetes slack](https://slack.k8s.io), channel **#kargo**.
|
2016-07-06 23:34:16 +08:00
|
|
|
|
2016-11-29 19:16:30 +08:00
|
|
|
- Can be deployed on **AWS, GCE, Azure, OpenStack or Baremetal**
|
2016-07-06 23:34:16 +08:00
|
|
|
- **High available** cluster
|
|
|
|
- **Composable** (Choice of the network plugin for instance)
|
|
|
|
- Support most popular **Linux distributions**
|
|
|
|
- **Continuous integration tests**
|
|
|
|
|
|
|
|
|
|
|
|
To deploy the cluster you can use :
|
|
|
|
|
2016-12-04 16:15:16 +08:00
|
|
|
[**kargo-cli**](https://github.com/kubespray/kargo-cli) <br>
|
2016-07-06 23:34:16 +08:00
|
|
|
**Ansible** usual commands <br>
|
|
|
|
**vagrant** by simply running `vagrant up` (for tests purposes) <br>
|
|
|
|
|
|
|
|
|
|
|
|
* [Requirements](#requirements)
|
|
|
|
* [Getting started](docs/getting-started.md)
|
|
|
|
* [Vagrant install](docs/vagrant.md)
|
|
|
|
* [CoreOS bootstrap](docs/coreos.md)
|
|
|
|
* [Ansible variables](docs/ansible.md)
|
|
|
|
* [Cloud providers](docs/cloud.md)
|
2016-08-11 17:33:29 +08:00
|
|
|
* [OpenStack](docs/openstack.md)
|
2016-08-24 21:56:42 +08:00
|
|
|
* [AWS](docs/aws.md)
|
2016-11-29 19:16:30 +08:00
|
|
|
* [Azure](docs/azure.md)
|
2016-07-06 23:34:16 +08:00
|
|
|
* [Network plugins](#network-plugins)
|
|
|
|
* [Roadmap](docs/roadmap.md)
|
|
|
|
|
|
|
|
Supported Linux distributions
|
|
|
|
===============
|
|
|
|
|
|
|
|
* **CoreOS**
|
|
|
|
* **Debian** Wheezy, Jessie
|
|
|
|
* **Ubuntu** 14.10, 15.04, 15.10, 16.04
|
|
|
|
* **Fedora** 23
|
|
|
|
* **CentOS/RHEL** 7
|
|
|
|
|
|
|
|
Versions
|
|
|
|
--------------
|
|
|
|
|
2016-11-15 04:40:05 +08:00
|
|
|
[kubernetes](https://github.com/kubernetes/kubernetes/releases) v1.4.6 <br>
|
|
|
|
[etcd](https://github.com/coreos/etcd/releases) v3.0.6 <br>
|
2016-10-13 03:54:54 +08:00
|
|
|
[flanneld](https://github.com/coreos/flannel/releases) v0.6.2 <br>
|
2016-10-13 04:18:43 +08:00
|
|
|
[calicoctl](https://github.com/projectcalico/calico-docker/releases) v0.22.0 <br>
|
2016-08-27 22:04:06 +08:00
|
|
|
[weave](http://weave.works/) v1.6.1 <br>
|
2016-07-06 23:34:16 +08:00
|
|
|
[docker](https://www.docker.com/) v1.10.3 <br>
|
|
|
|
|
|
|
|
|
|
|
|
Requirements
|
|
|
|
--------------
|
|
|
|
|
|
|
|
* The target servers must have **access to the Internet** in order to pull docker images.
|
|
|
|
* The **firewalls are not managed**, you'll need to implement your own rules the way you used to.
|
|
|
|
in order to avoid any issue during deployment you should disable your firewall
|
|
|
|
* **Copy your ssh keys** to all the servers part of your inventory.
|
2017-01-03 03:27:27 +08:00
|
|
|
* **Ansible v2.1 (or newer) and python-netaddr**
|
2016-07-06 23:34:16 +08:00
|
|
|
|
|
|
|
|
|
|
|
## Network plugins
|
|
|
|
You can choose between 3 network plugins. (default: `flannel` with vxlan backend)
|
|
|
|
|
|
|
|
* [**flannel**](docs/flannel.md): gre/vxlan (layer 2) networking.
|
|
|
|
|
|
|
|
* [**calico**](docs/calico.md): bgp (layer 3) networking.
|
|
|
|
|
|
|
|
* **weave**: Weave is a lightweight container overlay network that doesn't require an external K/V database cluster. <br>
|
|
|
|
(Please refer to `weave` [troubleshooting documentation](http://docs.weave.works/weave/latest_release/troubleshooting.html))
|
|
|
|
|
|
|
|
The choice is defined with the variable `kube_network_plugin`
|
|
|
|
|
|
|
|
|
|
|
|
## CI Tests
|
|
|
|
|
2016-12-04 16:24:30 +08:00
|
|
|
[![Build Status](https://travis-ci.org/kubernetes-incubator/kargo.svg)](https://travis-ci.org/kubernetes-incubator/kargo) </br>
|
2016-07-06 23:34:16 +08:00
|
|
|
|
|
|
|
### Google Compute Engine
|
|
|
|
|
|
|
|
| Calico | Flannel | Weave |
|
|
|
|
------------- | ------------- | ------------- | ------------- |
|
|
|
|
Ubuntu Xenial |[![Build Status](https://ci.kubespray.io/job/kargo-gce-xenial-calico/badge/icon)](https://ci.kubespray.io/job/kargo-gce-xenial-calico/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-xenial-flannel/badge/icon)](https://ci.kubespray.io/job/kargo-gce-xenial-flannel/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-xenial-weave/badge/icon)](https://ci.kubespray.io/job/kargo-gce-xenial-weave)|
|
|
|
|
CentOS 7 |[![Build Status](https://ci.kubespray.io/job/kargo-gce-centos7-calico/badge/icon)](https://ci.kubespray.io/job/kargo-gce-centos7-calico/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-centos7-flannel/badge/icon)](https://ci.kubespray.io/job/kargo-gce-centos7-flannel/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-centos7-weave/badge/icon)](https://ci.kubespray.io/job/kargo-gce-centos7-weave/)|
|
|
|
|
CoreOS (stable) |[![Build Status](https://ci.kubespray.io/job/kargo-gce-coreos-calico/badge/icon)](https://ci.kubespray.io/job/kargo-gce-coreos-calico/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-coreos-flannel/badge/icon)](https://ci.kubespray.io/job/kargo-gce-coreos-flannel/)|[![Build Status](https://ci.kubespray.io/job/kargo-gce-coreos-weave/badge/icon)](https://ci.kubespray.io/job/kargo-gce-coreos-weave/)|
|
|
|
|
|
|
|
|
CI tests sponsored by Google (GCE), and [teuto.net](https://teuto.net/) for OpenStack.
|