Introducció a Kubeadm

Kubeadm és una eina que proporciona una manera fàcil de configurar un clúster de Kubernetes. És especialment útil per a aquells que volen una configuració ràpida i senzilla sense haver de preocupar-se per tots els detalls de la configuració manual. Kubeadm s'encarrega de les tasques més complexes, com ara la generació de certificats, la configuració de components del clúster i la unió de nodes al clúster.

Objectius d'Aprenentatge

En aquesta secció, aprendràs:

  • Què és Kubeadm i per a què serveix.
  • Com instal·lar Kubeadm.
  • Com inicialitzar un clúster de Kubernetes amb Kubeadm.
  • Com unir nodes addicionals al clúster.
  • Com gestionar i mantenir el clúster utilitzant Kubeadm.

Instal·lació de Kubeadm

Requisits Previs

Abans d'instal·lar Kubeadm, assegura't de complir els següents requisits:

  • Un sistema operatiu compatible (per exemple, Ubuntu, CentOS).
  • Accés root o permisos sudo.
  • Una connexió a Internet per descarregar els paquets necessaris.
  • Configuració de la xarxa adequada (per exemple, desactivar el swap).

Passos d'Instal·lació

  1. Actualitza els paquets del sistema:

    sudo apt-get update
    sudo apt-get upgrade -y
    
  2. Instal·la Docker:

    Kubernetes utilitza Docker com a motor de contenidors. Instal·la Docker seguint les instruccions oficials o utilitza els següents comandos:

    sudo apt-get install -y docker.io
    sudo systemctl enable docker
    sudo systemctl start docker
    
  3. Instal·la Kubeadm, Kubelet i Kubectl:

    Aquests són els components bàsics necessaris per configurar i gestionar el clúster.

    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 -
    sudo bash -c 'cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
    deb http://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
    

Inicialització del Clúster

Un cop instal·lats els components necessaris, pots inicialitzar el clúster amb Kubeadm.

  1. Inicialitza el clúster:

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

    Aquest comando inicialitza el clúster i proporciona instruccions sobre com configurar kubectl i unir nodes addicionals.

  2. 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
    
  3. Desplega una xarxa de pods:

    Perquè els pods puguin comunicar-se entre ells, necessites desplegar una xarxa de pods. Aquí utilitzarem Flannel com a exemple:

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    

Unir Nodes al Clúster

Per unir nodes addicionals al clúster, executa el següent comando al node que vols unir:

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

El <master-ip>, <master-port>, <token> i <hash> es proporcionen com a sortida del comando kubeadm init.

Gestió i Manteniment del Clúster

Actualització del Clúster

Per actualitzar el clúster, primer actualitza kubeadm:

sudo apt-get update && sudo apt-get install -y kubeadm

Després, actualitza el clúster:

sudo kubeadm upgrade plan
sudo kubeadm upgrade apply <version>

Reinicialització del Clúster

Si necessites reinicialitzar el clúster, pots utilitzar el següent comando:

sudo kubeadm reset

Aquest comando restablirà el clúster a l'estat inicial.

Exercicis Pràctics

  1. Instal·la Kubeadm en una màquina virtual o servidor i inicialitza un clúster de Kubernetes.
  2. Uneix un node addicional al clúster.
  3. Desplega una aplicació simple en el clúster i verifica que els pods estan funcionant correctament.

Solucions

Exercici 1

Segueix els passos d'instal·lació i inicialització descrits anteriorment.

Exercici 2

Executa el comando kubeadm join proporcionat per la sortida del comando kubeadm init en el node addicional.

Exercici 3

Desplega una aplicació simple, com ara Nginx:

kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort

Verifica que els pods estan funcionant:

kubectl get pods
kubectl get svc

Conclusió

En aquesta secció, has après com utilitzar Kubeadm per configurar un clúster de Kubernetes de manera ràpida i senzilla. Has après a instal·lar Kubeadm, inicialitzar un clúster, unir nodes addicionals i gestionar el clúster. Amb aquests coneixements, estàs preparat per desplegar i gestionar aplicacions en un entorn de Kubernetes.

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