83 lines
2.1 KiB
Markdown
83 lines
2.1 KiB
Markdown
# :rocket: ANSIBLE K3S SUR RASPBERRY PI
|
||
|
||
Préparer et étendre un cluster Kubernetes **k3s** sur des Raspberry Pi avec une seule commande.
|
||
|
||
Le tutoriel complet est disponible [ici](https://dev.to/hatati/cook-up-a-k3s-cluster-on-raspberry-pies-with-ansible-4bb4).
|
||
|
||
|
||
## Fichier d’inventaire
|
||
|
||
Ajouter les hôtes Raspberry Pi dans le fichier `inventory.yaml`.
|
||
|
||
```yaml
|
||
# Exemple d'inventaire.yaml
|
||
all:
|
||
hosts:
|
||
raspberrypi-master:
|
||
ansible_host: 192.168.1.10
|
||
raspberrypi-worker1:
|
||
ansible_host: 192.168.1.11
|
||
## Create the k3s cluster
|
||
```
|
||
|
||
> ⚠️ Assurez-vous que vos Raspberry Pi sont accessibles via SSH et qu’Ansible peut se connecter avec les bonnes clés.
|
||
|
||
## ⚙️ Créer le cluster k3s
|
||
|
||
Créez le cluster k3s en exécutant le playbook d’installation :
|
||
|
||
```bash
|
||
ansible-playbook -i inventory.yaml install-k3s-playbook.yaml
|
||
```
|
||
|
||
> Le fichier k3sconfig se trouve désormais dans le répertoire courant.
|
||
|
||
## Modifier l’IP du serveur
|
||
|
||
Ouvrez le fichier k3sconfig et modifiez l’IP du serveur :
|
||
```yaml
|
||
apiVersion: v1
|
||
clusters:
|
||
- cluster:
|
||
certificate-authority-data: ...
|
||
server: https://nerminmaster:6443 # <----- MODIFIER ICI
|
||
name: default
|
||
contexts:
|
||
- context:
|
||
cluster: default
|
||
user: default
|
||
name: default
|
||
current-context: default
|
||
kind: Config
|
||
preferences: {}
|
||
users:
|
||
- name: default
|
||
user:
|
||
client-certificate-data: ...
|
||
client-key-data: ...
|
||
```
|
||
|
||
💡 Astuce : Remplacer nerminmaster par l’IP ou le nom de Raspberry Pi `manager`.
|
||
|
||
## Vérifier que le cluster fonctionne
|
||
|
||
```bash
|
||
kubectl get nodes --kubeconfig k3sconfig
|
||
NAME STATUS ROLES AGE VERSION
|
||
master Ready control-plane,etcd,master 8m42s v1.24.10+k3s1
|
||
worker1 Ready <none> 8m7s v1.24.10+k3s1
|
||
```
|
||
|
||
> Chaque nœud doit être en Ready pour que le cluster soit opérationnel.
|
||
|
||
|
||
## Nettoyer le cluster
|
||
|
||
Pour supprimer k3s de tous les nœuds, exécutez le playbook de désinstallation :
|
||
|
||
```bash
|
||
ansible-playbook -i inventory.yaml uninstall-k3s-playbook.yaml
|
||
```
|
||
|
||
> ⚠️ Cette commande supprimera toutes les données Kubernetes de vos Raspberry Pi.
|