Bogdan Dobrelya 3117858dcd Rework DNS stack to meet hostnet pods needs
* For Debian/RedHat OS families (with NetworkManager/dhclient/resolvconf
  optionally enabled) prepend /etc/resolv.conf with required nameservers,
  options, and supersede domain and search domains via the dhclient/resolvconf
  hooks.

* Drop (z)nodnsupdate dhclient hook and re-implement it to complement the
  resolvconf -u command, which is distro/cloud provider specific.
  Update docs as well.

* Enable network restart to apply and persist changes and simplify handlers
  to rely on network restart only. This fixes DNS resolve for hostnet K8s
  pods for Red Hat OS family. Skip network restart for canal/calico plugins,
  unless https://github.com/projectcalico/felix/issues/1185 fixed.

* Replace linefiles line plus with_items to block mode as it's faster.

Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Co-authored-by: Matthew Mosesohn <mmosesohn@mirantis.com>
2016-12-12 17:43:47 +01:00
2016-12-09 13:34:52 +01:00
2016-12-09 12:14:28 +01:00
2016-03-04 16:14:01 +01:00
2016-03-01 15:37:01 +01:00
2016-10-28 11:16:11 +04:00
2016-12-04 09:24:30 +01:00
2016-08-16 14:01:03 +02:00
2016-05-08 10:17:11 -05:00
2016-03-04 17:39:02 +01:00

Kubespray Logo

##Deploy a production ready kubernetes cluster

If you have questions, join us on the kubernetes slack, channel #kargo.

  • Can be deployed on AWS, GCE, Azure, 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)

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.6
etcd v3.0.6
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.

Languages
Jinja 76.2%
HCL 12.1%
Python 5.5%
Shell 5.4%
Dockerfile 0.3%
Other 0.3%