From ebee02c8bd819a00b36474ec6019b6be435dbea4 Mon Sep 17 00:00:00 2001 From: greg Date: Fri, 19 Sep 2025 14:44:25 +0200 Subject: [PATCH] add k8s tutos in devops guides --- docs/divers/devops/index.md | 1 + docs/divers/devops/k8s/index.md | 8 ++++ docs/divers/devops/k8s/installation.md | 29 ++++++++++++++ docs/divers/devops/k8s/monitoring.md | 54 ++++++++++++++++++++++++++ docs/divers/devops/k8s/raspberry.md | 5 +++ mkdocs.yml | 1 + 6 files changed, 98 insertions(+) create mode 100644 docs/divers/devops/k8s/index.md create mode 100644 docs/divers/devops/k8s/installation.md create mode 100644 docs/divers/devops/k8s/monitoring.md create mode 100644 docs/divers/devops/k8s/raspberry.md diff --git a/docs/divers/devops/index.md b/docs/divers/devops/index.md index d56fc614..d78ee9e0 100644 --- a/docs/divers/devops/index.md +++ b/docs/divers/devops/index.md @@ -7,3 +7,4 @@ - [Utiliser l'API de Gitlab / Github avec Bash](git-api.md) - [Développer des modules pour Odoo](odoo/index.md) - [Déployer son site web / hugo via le garage CICD](cicd.md) +- [Utiliser Kubernetes](k8s/index.md) diff --git a/docs/divers/devops/k8s/index.md b/docs/divers/devops/k8s/index.md new file mode 100644 index 00000000..cdb19ce8 --- /dev/null +++ b/docs/divers/devops/k8s/index.md @@ -0,0 +1,8 @@ +# Guide Kubernetes + + + +- [Installation d'un cluster [K3S]() sur sa machine](installation.md) +- [Installation d'un cluster sur des raspberry pi](raspberry.md) +- [Monitorer son cluster avec [OpenLens]()](monitoring.md) + diff --git a/docs/divers/devops/k8s/installation.md b/docs/divers/devops/k8s/installation.md new file mode 100644 index 00000000..a9987344 --- /dev/null +++ b/docs/divers/devops/k8s/installation.md @@ -0,0 +1,29 @@ +# Installer k3s sur sa machine locale + + + +## Installation + +```bash +curl -sfL https://get.k3s.io | sh - +``` + +## Utilisation + +- Installer `kubectl` +```bash +curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" +``` + +- Récupérer la config du cluster pour kubeclt +```bash +mv ~/.kube/config ~/.kube/config.BAK +cat /etc/rancher/k3s/k3s.yaml > ~/.kube/config +``` + +## Principales commandes + +```bash +kubectl get all -n default +``` + diff --git a/docs/divers/devops/k8s/monitoring.md b/docs/divers/devops/k8s/monitoring.md new file mode 100644 index 00000000..ed4f022c --- /dev/null +++ b/docs/divers/devops/k8s/monitoring.md @@ -0,0 +1,54 @@ +# K8S monitoring avec Prometheus et Openlens + +## Installer Openlens (sur sa machine locale) + +```bash +wget https://github.com/MuhammedKalkan/OpenLens/releases/download/v6.5.2-366/OpenLens-6.5.2-366.amd64.deb \ +&& sudo apt install OpenLens*.deb +``` + +## Configurer le cluster pour etre accessible + +- Editer le fichier `/etc/rancher/k3s/config.yaml` +```yml +tls-san: + - 78.192.247.57 +write-kubeconfig-mode: "0644" +``` + +- Exporter et modifier la config +```bash +sudo cat /etc/rancher/k3s/k3s.yaml > kubeconfig.yml # fichier kubeconfig.yml à récupérer sur sa machine local +nano kubeconfig.yml +``` + +> Mettre l'IP publique du seveur: +```yml +server: https://:6443 +``` +## Installation du monitoring + +- Installer `helm` +```bash +curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash +``` + +- Installer `metrics-server` +```bash +kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml +``` + +- Deployer +```bash +helm repo add prometheus-community https://prometheus-community.github.io/helm-charts +helm repo update + +helm install prometheus prometheus-community/kube-prometheus-stack \ + --namespace monitoring --create-namespace +``` + +- Visualiser dans `openlens` dans l'onglet configuration du cluster +```bash +# /: +monitoring/prometheus-kube-prometheus-prometheus:9090 +``` \ No newline at end of file diff --git a/docs/divers/devops/k8s/raspberry.md b/docs/divers/devops/k8s/raspberry.md new file mode 100644 index 00000000..f56c2b9e --- /dev/null +++ b/docs/divers/devops/k8s/raspberry.md @@ -0,0 +1,5 @@ +# Installer k3s sur des raspberry pi + + + +[regarder ici](https://git.legaragenumerique.fr/GARAGENUM/ansible-garage-kluster) \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index a23966fd..f4982ced 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -159,6 +159,7 @@ nav: - divers/devops/odoo/devenv.md - divers/devops/odoo/devmodule.md - "CICD du garage": divers/devops/cicd.md + - "Kubernetes": divers/devops/k8s/index.md - "Les guides Internes": - "Imprimantes": divers/internal/install-printers.md - "Workadventure map": divers/internal/wa.md