Deploy a Production Ready Kubernetes Cluster on bare metal or raw VMs - This is a clone of https://github.com/kubernetes-sigs/kubespray.git with a kitten twist.
Find a file
Alexander Kanevskiy b06a7ea554 terraform/openstack hosts with no floating ips
Vagrantfile: setup proxy inside virtual machines

In corporate networks, it is good to pre-configure proxy variables.

Reload docker.socket after installing flannel on coreos

Workaround for #569

Swap order in which we reload docker/socket

Update README.md

Add new var skip_dnsmasq_k8s

If skip_dnsmasq is set, it will still not set up dnsmasq
k8s pod. This enables independent setup of resolvconf section
before kubelet is up.

Use tar+register instead of copy/slurp for distributing tokens and certs

Related bug: https://github.com/ansible/ansible/issues/15405

Uses tar and register because synchronize module cannot sudo on the
remote side correctly and copy is too slow.

This patch dramatically cuts down the number of tasks to process
for cert synchronization.

Update OWNERS

Add CI test layouts

* Drop Wily from test matrix
* Replace the Wily cases dropped with extra cases to test separate
  roles deployment

Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>

Adds functionality to have masters and nodes with no floating IP.

Updates ansible group vars on terraform/openstack to follow the inventory/group_vars/all.yml file.

Vagrantfile: use Ubuntu 16.04 LTS

Use recent supported version of Ubuntu for local development setup
with Vagrant.

Vagrantfile: setup proxy inside virtual machines

In corporate networks, it is good to pre-configure proxy variables.

Reload docker.socket after installing flannel on coreos

Workaround for #569

Swap order in which we reload docker/socket

Update README.md
2016-11-04 11:26:56 +00:00
contrib/terraform terraform/openstack hosts with no floating ips 2016-11-04 11:26:56 +00:00
docs Merge pull request #554 from bogdando/kubeadm_adoption 2016-10-18 13:52:55 +02:00
inventory upgrade to kubernetes version 1.4.0 2016-10-10 22:44:47 +02:00
roles terraform/openstack hosts with no floating ips 2016-11-04 11:26:56 +00:00
scripts Adjust collect-info playbook 2016-08-23 11:28:27 +02:00
tests Add CI test layouts 2016-11-04 11:00:04 +00:00
.gitignore Added IntelliJ IDEA Project folder to .gitignore 2016-09-14 10:34:47 +01:00
.gitmodules Remove submodules 2016-03-04 16:14:01 +01:00
.travis.yml Add CI test layouts 2016-11-04 11:00:04 +00:00
ansible.cfg Enable smart facts cache for CI jobs 2016-10-25 12:23:49 +02:00
cluster.yml Fix idempotency/recurrence of download and preinstall 2016-10-24 18:28:53 +02:00
code-of-conduct.md files needed to move kargo to k8s 2016-08-16 14:01:03 +02:00
CONTRIBUTING.md files needed to move kargo to k8s 2016-08-16 14:01:03 +02:00
LICENSE Create LICENSE 2016-03-01 15:37:01 +01:00
OWNERS Update OWNERS 2016-11-04 11:00:04 +00:00
README.md upgrade to k8s v1.4.3 2016-10-18 12:52:35 +02:00
RELEASE.md files needed to move kargo to k8s 2016-08-16 14:01:03 +02:00
requirements.txt Add native Vagrant support 2016-05-08 10:17:11 -05:00
requirements.yml upgrade calico v0.19.0, calico-cni v1.2.1 2016-04-19 18:28:45 +02:00
ubuntu-bootstrap.yml Added bootstrap script for Ubuntu 16.04 LTS and later 2016-09-07 20:13:05 +02:00
uploads.yml Upload files to a separate storage 2016-03-04 17:39:02 +01:00
Vagrantfile terraform/openstack hosts with no floating ips 2016-11-04 11:26:56 +00:00

Kubespray Logo

##Deploy a production ready kubernetes cluster

If you have questions, you can invite yourself to chat with us on Slack! SlackStatus

  • Can be deployed on AWS, GCE, OpenStack or Baremetal
  • 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 :

kargo-cli (deprecated, a newer go version soon)
Ansible usual commands
vagrant by simply running vagrant up (for tests purposes)

Supported Linux distributions

  • CoreOS
  • Debian Wheezy, Jessie
  • Ubuntu 14.10, 15.04, 15.10, 16.04
  • Fedora 23
  • CentOS/RHEL 7

Versions

kubernetes v1.4.3
etcd v3.0.1
flanneld v0.6.2
calicoctl v0.22.0
weave v1.6.1
docker v1.10.3

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.
  • Ansible v2.x and python-netaddr

Network plugins

You can choose between 3 network plugins. (default: flannel with vxlan backend)

  • flannel: gre/vxlan (layer 2) networking.

  • calico: bgp (layer 3) networking.

  • weave: Weave is a lightweight container overlay network that doesn't require an external K/V database cluster.
    (Please refer to weave troubleshooting documentation)

The choice is defined with the variable kube_network_plugin

CI Tests

Build Status

Google Compute Engine

          | Calico        | Flannel       | Weave         |

------------- | ------------- | ------------- | ------------- | Ubuntu Xenial |Build Status|Build Status|Build Status| CentOS 7 |Build Status|Build Status|Build Status| CoreOS (stable) |Build Status|Build Status|Build Status|

CI tests sponsored by Google (GCE), and teuto.net for OpenStack.