Newer
Older
This playbook deploys a whole kubernetes cluster, configures network overlay and some addons.
# Download necessary binaries
Note: a variable 'local_release_dir' defines where the binaries will be downloaded.
Ensure you've enough disk space
# Kubernetes
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.
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
You can choose between 2 network overlays. Only one must be chosen.
flannel: gre/vxlan (layer 2) networking
calico: bgp (layer 3) networking.
# Loadbalancer
The machine where ansible is ran must be allowed to access to the master ip on port 8080 (kubernetes api).
Indeed it gathered the services definition in order to know which NodePort is configured.