Skip to content

rflkt/k8s-training

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Formation Kubernetes -- 22h (11 sessions)

Formation pratique Kubernetes destinee aux developpeurs backend et fullstack. De la decouverte des concepts fondamentaux jusqu'au deploiement en production avec CI/CD, en passant par Terraform et Helm.

Chaque session de 2h combine theorie (~45 min) et lab pratique (~1h15) sur un cluster local kind. Les labs utilisent une application fil rouge composee d'une API Go et d'un frontend statique (HTML/JS) servi par nginx.


Planning

# Session Sujets Lab
01 Fondamentaux K8s Pods, ReplicaSets, Deployments, namespaces, labels, kubectl lab
02 Services & Networking ClusterIP, NodePort, LoadBalancer, DNS interne, endpoints lab
03 Ingress Ingress controllers, Traefik, regles de routage, TLS lab
04 Storage Volumes, PV, PVC, StorageClass, ConfigMaps comme volumes lab
05 Secrets (bases) Secrets K8s, types, montage en volume et env vars, encoding lab
06 Secrets (avance) External Secrets Operator, GCP Secret Manager, CSI driver, rotation lab
07 Terraform (intro) HCL, providers, resources, state, plan/apply, modules lab
08 Terraform (cluster) Provisionner un cluster GKE, VPC, subnets, IAM, node pools lab
09 Terraform (apps) Deployer des apps K8s via Terraform, Helm provider, variables lab
10 Production Health checks, resource limits, HPA, rolling updates, observabilite lab
11 CI/CD GitHub Actions, build/push images, deploy on push, environments lab

Prerequis

Outil Version min. Obligatoire
Docker Desktop / Rancher Desktop latest oui
kubectl >= 1.28 oui
kind >= 0.20 oui
Helm >= 3.13 oui
Terraform >= 1.13 oui
gcloud CLI latest oui
VS Code latest recommande
Git >= 2.40 oui

Extensions VS Code recommandees : Kubernetes, YAML, HashiCorp Terraform, Go.

Voir SETUP.md pour les instructions d'installation detaillees par OS.


Demarrage rapide

# 1. Cloner le repo
git clone https://github.com/rflkt/k8s-training.git
cd k8s-training

# 2. Installer les prerequis (Mac/Linux)
./setup/prerequisites.sh

# 3. Verifier l'installation
./setup/verify-setup.sh

# 4. Creer le cluster kind
kind create cluster --config setup/kind-config.yaml --name training

# 5. Verifier le cluster
kubectl cluster-info
kubectl get nodes

Utiliser kind entre les sessions

Le cluster kind vit dans Docker. Voici les commandes utiles :

# Lister les clusters
kind get clusters

# Supprimer le cluster (libere les ressources)
kind delete cluster --name training

# Recreer le cluster proprement avant une session
kind delete cluster --name training 2>/dev/null
kind create cluster --config setup/kind-config.yaml --name training

# Verifier que kubectl pointe sur le bon cluster
kubectl config current-context
# attendu : kind-training

Astuce : si Docker est redemarre, le cluster kind est perdu. Il suffit de le recreer avec la commande ci-dessus.


Structure du repo

k8s-training/
├── README.md                          # Ce fichier
├── SETUP.md                           # Guide d'installation detaille
├── .gitignore
├── app/
│   ├── api/                           # API Go (application fil rouge)
│   └── frontend/                      # Frontend statique (HTML/JS + nginx)
├── labs/
│   ├── session-01-fundamentals/
│   │   ├── starter/                   # Fichiers de depart du lab
│   │   └── solution/                  # Solution complete
│   ├── session-02-services/
│   │   ├── starter/
│   │   └── solution/
│   ├── ...                            # Sessions 03 a 10
│   └── session-11-cicd/
│       ├── starter/
│       └── solution/
├── setup/
│   ├── prerequisites.sh               # Script d'installation des outils
│   ├── verify-setup.sh                # Verification de l'environnement
│   └── kind-config.yaml               # Configuration du cluster kind
├── cheatsheets/
│   ├── kubectl.md                     # Aide-memoire kubectl
│   ├── terraform.md                   # Aide-memoire Terraform
│   └── helm.md                        # Aide-memoire Helm
├── terraform/
│   └── student-template/              # Template Terraform pour les labs GKE
└── .github/
    └── ...

Contact formateur

Nom Hugo Matthaey
Email hugo@reflektlab.ai

Pour toute question sur le contenu ou les labs, ouvrir une issue sur ce repo ou contacter le formateur directement.


Licence

© 2026 Hugo Matthaey (Reflekt Lab).

Ce support de formation est publie sous licence Creative Commons Attribution - Pas d'Utilisation Commerciale 4.0 International (CC BY-NC 4.0).

Vous etes libres de le partager, le reutiliser et l'adapter (formation interne, etude, etc.), a condition d'en crediter l'auteur et de ne pas en faire un usage commercial direct (revente, formation payante donnee par un tiers) sans autorisation ecrite prealable.

Voir LICENSE pour le texte complet.

About

Formation Kubernetes — 22h (11 sessions) — exercices et fil rouge

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors