#### Installation de kubectl ```bash sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl gnupg sudo mkdir -p -m 755 /etc/apt/keyrings curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.33/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.33/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo chmod 644 /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubectl ``` #### Installation de k3sup : ```bash # Avec curl curl -sLS https://get.k3sup.dev | sh sudo install k3sup /usr/local/bin/ # Ou téléchargement direct depuis GitHub wget https://github.com/alexellis/k3sup/releases/download/0.13.11/k3sup chmod +x k3sup sudo mv k3sup /usr/local/bin/ ``` #### Configuration sudo sans mot de passe : ```bash # Ajout de l'utilisateur au groupe sudo sudo usermod -aG sudo pleb # Configuration pour éviter la saisie de mot de passe echo "pleb ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/pleb ``` #### Premier déploiement : ```bash # Installation du master node k3sup install --ip 192.168.1.14 --user pleb --ssh-key $HOME/.ssh/bikiniBottom # Ajout des worker nodes k3sup join --ip 192.168.1.13 --server-ip 192.168.1.14 --user pleb --ssh-key $HOME/.ssh/bikiniBottom k3sup join --ip 192.168.1.16 --server-ip 192.168.1.14 --user pleb --ssh-key $HOME/.ssh/bikiniBottom # k3sup join --ip 192.168.1.19 --server-ip 192.168.1.14 --user pleb --ssh-key $HOME/.ssh/bikiniBottom ``` #### Vérification du cluster : ```bash # Export du kubeconfig export KUBECONFIG=/home/julien/kubeconfig # Vérification des nœuds kubectl get nodes -o wide # Check des pods système kubectl get pods -n kube-system ``` #### Validation : ```bash kubectl get nodes NAME STATUS ROLES AGE VERSION gary Ready 77s v1.34.4+k3s1 sandy Ready control-plane 39m v1.34.4+k3s1 sheldon Ready 48s v1.34.4+k3s1 ```