En aquest tema, aprendrem com configurar un clúster de Kubernetes des de zero. Aquest procés inclou la instal·lació de les eines necessàries, la configuració dels nodes del clúster i la verificació que tot funcioni correctament.

Objectius d'Aprenentatge

  • Entendre els requisits previs per configurar un clúster de Kubernetes.
  • Instal·lar i configurar kubeadm, kubelet i kubectl.
  • Configurar els nodes mestres i treballadors.
  • Verificar la configuració del clúster.

Requisits Previs

Abans de començar, assegura't de tenir:

  • Accés a màquines virtuals o servidors físics amb un sistema operatiu compatible (per exemple, Ubuntu 20.04).
  • Accés a Internet per descarregar les eines necessàries.
  • Coneixements bàsics de línia de comandes i administració de sistemes.

Passos per Configurar un Clúster de Kubernetes

  1. Instal·lació de les Eines Necessàries

Actualitza els Paquets del Sistema

sudo apt-get update
sudo apt-get upgrade -y

Instal·la Docker

Kubernetes utilitza Docker com a motor de contenidors. Instal·lem Docker amb els següents passos:

sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
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

Instal·la kubeadm, kubelet i kubectl

sudo apt-get update && sudo apt-get install -y apt-transport-https curl
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 kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

  1. Configuració del Node Mestre

Inicia el Clúster amb kubeadm

sudo kubeadm init --pod-network-cidr=192.168.0.0/16

Aquest comandament inicialitza el node mestre i proporciona instruccions per unir nodes treballadors al clúster.

Configura kubectl per l'Usuari No Root

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

Instal·la una Xarxa de Pod

Per exemple, utilitzem Calico:

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

  1. Configuració dels Nodes Treballadors

Uneix els Nodes Treballadors al Clúster

Executa el següent comandament en cada node treballador, utilitzant el token generat durant la inicialització del node mestre:

sudo kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>

  1. Verificació del Clúster

Comprova l'Estat dels Nodes

kubectl get nodes

Hauries de veure una llista dels nodes amb l'estat "Ready".

Comprova l'Estat dels Pods

kubectl get pods --all-namespaces

Hauries de veure que tots els pods del sistema estan en estat "Running".

Exercicis Pràctics

Exercici 1: Instal·lació de Docker

Instal·la Docker en una màquina virtual o servidor físic seguint els passos proporcionats. Verifica la instal·lació executant:

docker --version

Exercici 2: Inicialització del Node Mestre

Inicialitza un node mestre utilitzant kubeadm i configura kubectl per l'usuari no root. Verifica que el node mestre estigui en estat "Ready".

Exercici 3: Unió de Nodes Treballadors

Uneix almenys un node treballador al clúster i verifica que tots els nodes estiguin en estat "Ready".

Solucions als Exercicis

Solució a l'Exercici 1

Després d'instal·lar Docker, executa:

docker --version

Hauries de veure una sortida similar a:

Docker version 20.10.7, build f0df350

Solució a l'Exercici 2

Després d'inicialitzar el node mestre i configurar kubectl, executa:

kubectl get nodes

Hauries de veure una sortida similar a:

NAME           STATUS   ROLES                  AGE   VERSION
master-node    Ready    control-plane,master   10m   v1.21.0

Solució a l'Exercici 3

Després d'unir els nodes treballadors, executa:

kubectl get nodes

Hauries de veure una sortida similar a:

NAME           STATUS   ROLES                  AGE   VERSION
master-node    Ready    control-plane,master   15m   v1.21.0
worker-node1   Ready    <none>                 5m    v1.21.0
worker-node2   Ready    <none>                 5m    v1.21.0

Conclusió

En aquesta secció, hem après a configurar un clúster de Kubernetes des de zero, incloent la instal·lació de les eines necessàries, la configuració dels nodes mestres i treballadors, i la verificació del clúster. Amb aquesta base, estem preparats per explorar els components bàsics de Kubernetes en el següent mòdul.

Curs de Kubernetes

Mòdul 1: Introducció a Kubernetes

Mòdul 2: Components Bàsics de Kubernetes

Mòdul 3: Gestió de Configuració i Secrets

Mòdul 4: Xarxes en Kubernetes

Mòdul 5: Emmagatzematge en Kubernetes

Mòdul 6: Conceptes Avançats de Kubernetes

Mòdul 7: Monitorització i Registre

Mòdul 8: Seguretat en Kubernetes

Mòdul 9: Escalabilitat i Rendiment

Mòdul 10: Ecosistema i Eines de Kubernetes

Mòdul 11: Estudis de Cas i Aplicacions del Món Real

Mòdul 12: Preparació per a la Certificació de Kubernetes

© Copyright 2024. Tots els drets reservats