= k8s essentials
== que es k8s
* orquestrador de contenedores
* automatizar instraestructura aplicacion
* contenedores = independencia plataforma
* cluster: repartir la misma instancia de contenedor en diferentes servidores
* updates: diferentes versiones de la misma instancia
* escalado: como hacer crecer o decrecer en función de las necesidades
== cluster arquitecture
=== resumen
* master y nodes
* docker (en todos)
* kubedadm (master)
* kubelet (mensajero)
* kubectl
* control plane (master)
* servidores (3):
* ubuntu 18.04 TLS
* 2GB RAM
* -> Vagrant + ansible
=== installing docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
sudo apt-get update
sudo apt-get install -y docker-ce=18.06.1~ce~3-0~ubuntu
sudo apt-mark hold docker-ce
sudo docker version
=== installing k8s
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat << EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet=1.12.7-00 kubeadm=1.12.7-00 kubectl=1.12.7-00
sudo apt-mark hold kubelet kubeadm kubectl
kubeadm version