Readme, first ver
This commit is contained in:
parent
00c562828f
commit
89a25fa3fa
1 changed files with 35 additions and 26 deletions
61
README.md
61
README.md
|
@ -1,31 +1,40 @@
|
||||||
This playbook deploys a whole kubernetes cluster, configures network overlay and some addons.
|
kubernetes-ansible
|
||||||
|
========
|
||||||
|
|
||||||
# Download necessary binaries
|
Install and configure a kubernetes cluster including network overlay and optionnal addons.
|
||||||
Note: a variable 'local_release_dir' defines where the binaries will be downloaded.
|
Based on [CiscoCloud](https://github.com/CiscoCloud/kubernetes-ansible) work.
|
||||||
Ensure you've enough disk space
|
|
||||||
|
|
||||||
# Kubernetes
|
Requirements
|
||||||
Kubernetes services are configured with the nodePort type.
|
------------
|
||||||
eg: each node opoens the same tcp port and forwards the traffic to the target pod wherever it is located.
|
Tested on debian Jessie and Ubuntu.
|
||||||
|
The target servers must have access to the Internet in order to pull docker imaqes
|
||||||
|
|
||||||
master :
|
|
||||||
- apiserver :
|
|
||||||
Currently the apiserver listen on both secure and unsecure ports
|
|
||||||
todo, secure everything. Calico especially
|
|
||||||
- scheduler :
|
|
||||||
- controller :
|
|
||||||
- proxy
|
|
||||||
node :
|
|
||||||
- kubelet :
|
|
||||||
kubelet is configured to call calico whenever a pod is created/destroyed
|
|
||||||
- proxy
|
|
||||||
configures all the forwarding rules
|
|
||||||
|
|
||||||
# Overlay network
|
Ansible
|
||||||
You can choose between 2 network overlays. Only one must be chosen.
|
-------------------------
|
||||||
flannel: gre/vxlan (layer 2) networking
|
## Variables
|
||||||
calico: bgp (layer 3) networking.
|
|
||||||
|
|
||||||
# Loadbalancer
|
## Run ansible playbook
|
||||||
The machine where ansible is ran must be allowed to access to the master ip on port 8080 (kubernetes api).
|
It is possible to define variables for different environments.
|
||||||
Indeed it gathered the services definition in order to know which NodePort is configured.
|
For instance, in order to deploy the cluster on 'dev' environment run the following command.
|
||||||
|
```
|
||||||
|
ansible-playbook -i environments/dev/inventory cluster.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
Kubernetes
|
||||||
|
-------------------------
|
||||||
|
## Check cluster status
|
||||||
|
|
||||||
|
|
||||||
|
Known issues
|
||||||
|
-------------
|
||||||
|
## Node reboot and Calico
|
||||||
|
|
||||||
|
## Monitoring addon
|
||||||
|
|
||||||
|
## Etcd failover
|
||||||
|
|
||||||
|
Author Information
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Smana - Smaine Kahlouch (smaine.kahlouch@gmail.com)
|
||||||
|
|
Loading…
Reference in a new issue