Kubernetes : De débutant à expert - maîtrisez l'orchestration de conteneurs
Cette formation Kubernetes vise à transformer les participants en experts capables de maîtriser chaque aspect de l'orchestration de conteneurs. En partant des fondamentaux de la conteneurisation,…

Cette formation Kubernetes vise à transformer les participants en experts capables de maîtriser chaque aspect de l'orchestration de conteneurs. En partant des fondamentaux de la conteneurisation, vous progresserez à travers des concepts avancés de gestion de clusters, de sécurité, de mise en réseau, et d'automatisation DevOps, jusqu'à l'intégration de Kubernetes dans des environnements de production robustes.
L'objectif principal est de vous donner les compétences nécessaires pour déployer, gérer et faire évoluer des applications dans des environnements Kubernetes complexes et à grande échelle. À la fin de cette formation, vous serez en mesure de :
- Comprendre les bases de la conteneurisation et l'architecture de Kubernetes.
- Provisionner et configurer des clusters Kubernetes pour des applications de production.
- Gérer et manipuler les objets Kubernetes essentiels, tels que les Pods, les Services, les ConfigMaps, et les Secrets.
- Implémenter des pratiques avancées de gestion, comme le RBAC, les quotas de ressources, et l'auto-scaling des pods.
- Déployer et gérer efficacement les applications en utilisant Helm, ainsi que divers contrôleurs Ingress.
- Maintenir la haute disponibilité de vos clusters et assurer la résilience des systèmes avec des stratégies de sauvegarde et de reprise après sinistre.
- Intégrer Kubernetes dans une chaîne DevOps en utilisant des outils comme GitLab CI et ArgoCD.
- Gérer et optimiser le stockage dans Kubernetes avec des solutions comme OpenEBS et Longhorn.
- Appliquer les connaissances théoriques à des projets pratiques, renforçant ainsi vos compétences pour des scénarios réels.
À travers une approche pratique et orientée projet, vous deviendrez autonome dans la gestion de Kubernetes, prêt à relever les défis de l'orchestration de conteneurs dans n'importe quel environnement.
-
Section 1 : Introduction à Kubernetes
- Introduction
- Comprendre les fondamentaux de la conteneurisation et de Kubernetes
- Provisionner un cluster pour une expérience pratique
- Objets k8s
- Outils de managements kubectl, k9s et lens
- Presentation du cluster et les ressources
-
Section 2 : Gestion des Objets
- L'aproche imperative vs declarative
- Namespace
- Pod, labels, annotations
- services et types
- Replication Controllers
- ReplicaSet
- Deployment
- Statefulset
- DaemonSet
- Jobs
- CronJobs
- Volumes hostPath et emptyDir
- ConfigMap
- Secrets
-
Section 3 : Gestion Avancée
- Contextes
- RBAC, Service Account
- Network Policy
- ResourceQuota, limites et les requests (Namesapce/CPU/mémoire/workloads)
- Horizontal Pod Autoscaling (HPA)
- Les Persistent Volume Claim (PVC et PV)
- Serveur NFS
- NFS providsionner et pvc
- Healthchecks et les liveness et readiness
- PodDisruptionBudget
- kubectl verbs
-
Section 4 : Orchestration Avancée et Personnalisation
- Helm pour gérer les packages d'application
- NGINX Ingress controller
- Traefik Ingress controller
- HAProxy Ingress controller
- Kong Ingress controller
- Cert manager et let's encrypt
- Canary deployment
- Blue-green deployment
- Helm chart et les déclaratives
- Helm revisions et rollback
- Node pool, taint, toleration et node selector
- Commandes kubectl
-
Section 5 : Gestion de Cluster et cycle de vie
- CNI Network
- Cluster HA avec kubeadm
- Cluster HA avec RKE
- Cluster HA avec Rancher
- Cluster HA avec K3s
- Cluster managés (Scaleway kapsule et Cosmos, EKS, AKS, GKE)
- Cycle de vie de cluster et upgrade
- Stratégies de sauvegarde et de reprise après sinistre: etcd
-
Section 6 : K8s et le DevOps
- Gitlab CI
- Argocd
-
Section 7 : Stockage dans k8s
- OpenEBS
- Longhorn
- Stockage Objet (Minio)
- CubeFS
- Rook
-
Section 8 : Bases de données dans kubernetes
- Cluster postgreSQL
- Cluster MairaDB
- Cluster Redis
- Cluster Vitess
- Cluster Mongo
- Cluster Kafka
-
Section 9 : Packaging dans kubernetes
- Helm introduction
- Charts helm
- Gestion des charts helm
-
Section 10 : Monitoring dans kubernetes
- Exposition des metrics (metric-server)
- Monitoring avec prometheus et grafana
- Alertmanager
-
Section 11 : Projets Pratiques
- Appliquer les compétences acquises à un projet concret
- Monter les clusters
- cluster tools : qui va herberger argocd
- cluster dev: pour l'environnement de developpement
- cluster prod: qui herbger nos application de prod
- cert-manager et let's encrypt
- Installer NGINX Ingress controller
- Installer Longhron
- Installer le monitoring
- Helm chart de l'app
- Gitlab-ci pipeline
Conclusion
Chapitres
- 1.Introduction à Kubernetes
- 2.Comprendre les Fondamentaux de la Conteneurisation et de Kubernetes
- 3.Provisionner un Cluster avec kubeadm pour une Expérience Pratique
- 4.Clients kubernetes, outils de gestion : kubectl, k9s et Lens
- 5.Objets Kubernetes et les controllers
- 6.Présentation du Cluster et des Ressources
- 7.Gestion des Objets Kubernetes
- 8.Approches de Gestion : Impérative vs Déclarative
- 9.Ressources de base de kubernetes: Les Pods et les commandes de debug
- 10.services et type de services
- 11.Séparation logique pour organiser et isoler les ressources dans le cluster : Namespaces et ResourceQuota
- 12.Replication Controllers
- 13.ReplicaSets
- 14.Deployment et rolling update
- 15.Statefulset et les apps stateful et les bases de données
- 16.DaemonSet
- 17.Job et CronJob
- 18.Volumes hostPath et emptyDir
- 19.configMap env vars et volume config
- 20.Secrets variables d'environnements et volume config
- 21.Section 3 : Gestion Avancée
- 22.Contexts kubernetes
- 23.RBAC : Role-based access control
- 24.Les Network Policies : Règles de sécurité pour contrôler le trafic réseau entre les pods
- 25.Limites resources et ResourceQuota