2af71f31b4
* Add for docker system units: ExecReload=/bin/kill -s HUP $MAINPID Delegate=yes KillMode=process. * Add missed DOCKER_OPTIONS for calico/weave docker systemd unit. * Change Requires= to a less strict and non-faily Wants=, add missing Wants= for After=. * Align wants/after in a wat if Wants=foo, After= has foo as well. * Make wants/after docker.service to ask for the docker.socket as well. * Move "docker rm -f" commands from ExecStartPre= to ExecStopPost=. hooks to ensure non-destructive start attempts issued by Wants=. Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com> |
||
---|---|---|
contrib/terraform | ||
docs | ||
inventory | ||
library | ||
roles | ||
scripts | ||
tests | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
Vagrantfile | ||
ansible.cfg | ||
cluster.yml | ||
coreos-bootstrap.yml | ||
requirements.txt | ||
requirements.yml | ||
uploads.yml |
README.md
##Deploy a production ready kubernetes cluster
If you have questions, you can invite yourself to chat with us on Slack!
- 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
Ansible usual commands
vagrant by simply running vagrant up
(for tests purposes)
- Requirements
- Getting started
- Vagrant install
- CoreOS bootstrap
- Ansible variables
- Cloud providers
- Openstack
- Network plugins
- Roadmap
Supported Linux distributions
- CoreOS
- Debian Wheezy, Jessie
- Ubuntu 14.10, 15.04, 15.10, 16.04
- Fedora 23
- CentOS/RHEL 7
Versions
kubernetes v1.3.0
etcd v3.0.1
calicoctl v0.20.0
flanneld v0.5.5
weave v1.5.0
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 toweave
troubleshooting documentation)
The choice is defined with the variable kube_network_plugin
CI Tests
Google Compute Engine
| Calico | Flannel | Weave |
------------- | ------------- | ------------- | ------------- | Ubuntu Xenial |||| CentOS 7 |||| CoreOS (stable) ||||
CI tests sponsored by Google (GCE), and teuto.net for OpenStack.