DevOps et Platform Engineering pour débutants
Partez de zéro. Découvrez comment les équipes modernes conçoivent, livrent et exploitent leurs logiciels avec les conteneurs, Kubernetes, le CI/CD et GitOps, un guide pratique à la fois.
À qui s’adresse ce parcours
Ce parcours s’adresse aux développeurs, administrateurs système et personnes en reconversion qui ont entendu parler de « conteneurs », de « Kubernetes » et de « pipelines », sans jamais les avoir assemblés. Vous n’avez pas besoin d’expérience en production. Il vous faut de la curiosité et un terminal.
Ce que vous allez apprendre
- Comment empaqueter et exécuter des applications de manière cohérente sur différentes machines
- Ce que fait Kubernetes et comment déployer votre première charge de travail
- Comment un changement passe d’un commit à un environnement en cours d’exécution
- Les bases de GitOps et pourquoi les équipes l’adoptent
- Comment supprimer et recréer des environnements sans appréhension
Comment utiliser ce parcours
Les guides à droite sont regroupés par technologie et ordonnés pour une première lecture. Avancez technologie par technologie plutôt que de passer de l’une à l’autre. Chaque guide est pratique : lancez un cluster jetable et suivez les étapes au lieu de vous contenter de lire.
Avant de commencer
- Une certaine aisance avec la ligne de commande (cd, ls, édition de fichiers)
- Un compte Rackmint gratuit pour disposer d’un cluster jetable où vous entraîner
- Une idée de base de ce qu’est une application web
La suite
Quand tout cela vous semblera naturel, passez au parcours intermediate, où vous relierez ces éléments en workflows automatisés et reproductibles.
What's in this path
Argo CD
5 guides-
Déployer une application web avec Argo CD De Git à la production avec Argo CD. -
Push ou Pull : comment Argo CD livre vers Kubernetes Pourquoi une livraison pilotée par Git, en mode pull, change la façon de déployer, de sécuriser et de restaurer les clusters. -
Installer Argo CD et se connecter Installez Argo CD sur n'importe quel cluster Kubernetes et accédez à l'interface web. -
Déployer votre première application avec un manifeste déclaratif Pointez Argo CD vers un dépôt Git à l'aide d'une ressource Application et regardez-le se synchroniser. -
Gérer les applications avec la CLI Argo CD Connectez-vous, créez, inspectez, comparez, synchronisez et annulez des applications depuis le terminal.
Flux CD
5 guides-
Push ou pull : comment Flux livre sur Kubernetes Pourquoi une livraison pilotée par Git et basée sur le pull change la façon de déployer, de sécuriser et de restaurer les clusters. -
Installer Flux et bootstrapper un cluster Installez la CLI Flux, lancez les vérifications préalables et bootstrappez Flux pour qu'il se gère lui-même depuis Git. -
Déployer votre première application avec un GitRepository et une Kustomization Pointez Flux vers des manifestes dans Git à l'aide d'une ressource Kustomization et regardez la synchronisation se faire. -
Gérer Flux avec la CLI Flux Vérifiez, inspectez, réconciliez, comparez, tracez, suspendez et dépannez les ressources Flux depuis le terminal. -
Flux CD ou Argo CD : choisir un outil GitOps Comparez l'architecture, l'interface, Helm, les secrets, la multi-tenance et l'automatisation d'images pour choisir le bon outil.
Kubernetes
6 guides-
Ce qu'est Kubernetes et les problèmes qu'il résout Pourquoi les conteneurs seuls ne passent plus à l'échelle, et comment Kubernetes transforme un groupe de machines en une seule plateforme. -
Comment fonctionne un cluster Kubernetes : plan de contrôle et nœuds Les composants qui font tourner un cluster, et ce qui se passe entre kubectl apply et un conteneur en cours d'exécution. -
Configurer un cluster local et prendre en main kubectl Lancez un cluster à nœud unique avec minikube, connectez-vous avec kubectl et apprenez les commandes que vous utiliserez tous les jours. -
Écrire votre premier manifeste Kubernetes L'essentiel du YAML, les quatre champs que tout objet possède, et la boucle créer, inspecter, supprimer avec un Pod. -
Deployments : mise à l'échelle, auto-réparation et mises à jour progressives Exécutez des réplicas d'un Pod, mettez-les à jour sans interruption et revenez en arrière quand une version tourne mal. -
Déboguer un Pod en échec : describe, logs, exec et port-forward Une checklist reproductible pour comprendre pourquoi un Pod est Pending, plante ou ne répond pas.
containerd
2 guides-
De Docker à containerd : brève histoire des runtimes Kubernetes Pourquoi Kubernetes a cessé de dialoguer directement avec Docker, et ce qu'est réellement containerd par rapport à lui. -
Les outils CLI de containerd : ctr, nerdctl et crictl Trois outils en ligne de commande, trois rôles différents : lequel choisir et quand.
Grafana
4 guides-
Opérer Grafana comme du code : vue d'ensemble Ce qui peut vivre dans des fichiers, ce qui nécessite une API, et comment les pièces s'assemblent. -
Lancer Grafana avec Docker Compose et un dossier de provisionnement Démarrez Grafana depuis un fichier compose avec toute la configuration montée sous forme de fichiers. -
Configurer le serveur Grafana avec grafana.ini et les variables d'environnement Sachez où se trouvent les fichiers de configuration, comment les surcharges sont ordonnées et comment garder les paramètres dans Git. -
Provisionner les sources de données depuis du YAML Définissez sources de données, identifiants et en-têtes personnalisés dans des fichiers plutôt que dans l'interface.
Helm
4 guides-
Anatomie d'un chart Helm : charts, values, templates et releases La structure de dossiers commune à tous les charts, et les trois concepts qui font de Helm bien plus qu'un simple assembleur de YAML. -
Créer votre premier chart Helm à partir de manifestes existants Transformez un Deployment, un Service et une ConfigMap en chart templatisé, puis installez-le et mettez-le à niveau. -
Gérer les releases : installer, mettre à niveau, annuler et désinstaller Les commandes qui couvrent tout le cycle de vie d'une release, et comment l'historique des révisions rend le rollback possible. -
Trouver et installer des charts publiés depuis Artifact Hub Recherchez un chart déjà écrit par quelqu'un d'autre, inspectez-le avant de l'installer et ne surchargez que ce dont vous avez besoin.
OpenTelemetry
5 guides-
OpenTelemetry expliqué : SDK, OTLP et Collector Comprenez les éléments en jeu et les trois endroits où vit la configuration avant d'écrire du YAML. -
Exécuter un OpenTelemetry Collector avec Docker Compose Démarrez un Collector à partir d'un fichier de configuration monté, envoyez-lui des données de test et observez-les dans l'exporter debug. -
Le modèle de configuration du Collector : composants, pipelines et providers Apprenez les règles du YAML du Collector : nommage, pipelines, connectors, fusion de fichiers et variables d'environnement. -
Configurer les SDK avec les variables d'environnement OTEL_* Définissez le nom du service, les exporters, l'échantillonnage et les limites pour n'importe quel langage avec des variables standard. -
Instrumenter des applications sans modifier le code : Java, Python et Node.js Attachez des agents OpenTelemetry uniquement avec des variables d'environnement et des options de ligne de commande.
Prometheus
4 guides-
Architecture de Prometheus et modèle pull Pourquoi Prometheus scrape au lieu de recevoir, et comment cibles, exporters et découverte de services s'articulent. -
Le modèle de données de Prometheus : métriques, labels et types de métriques Ce qu'est réellement une série temporelle dans Prometheus, et le format texte brut dans lequel les cibles les exposent. -
Superviser un hôte et ses conteneurs avec node_exporter et cAdvisor Exécutez ensemble Prometheus, node_exporter et cAdvisor, scrapez les deux, et confirmez que les cibles sont saines. -
Visualiser les métriques dans Grafana : sources de données, panneaux et tableaux de bord communautaires Connectez Grafana à Prometheus, construisez un panneau de zéro, puis importez un tableau de bord prêt à l'emploi au lieu de tout construire à la main.
Fluentd
2 guides-
Pourquoi centraliser les logs : le problème que Fluentd résout Ce qui dysfonctionne quand les logs se répartissent dans des dizaines de fichiers et de formats, et comment le pipeline collecter-transformer-expédier de Fluentd y remédie. -
Bases de la configuration de Fluentd : source, filter, match et tags Les directives dont toute configuration Fluentd est faite, comment les tags les relient, et comment valider une configuration avant de l'exécuter.
Envoy
2 guides-
Architecture d'Envoy : listeners, clusters et chaînes de filtres Comment une requête circule réellement dans Envoy, du socket où elle arrive jusqu'à l'upstream vers lequel elle est envoyée. -
Où se place Envoy : edge, front proxy et service mesh Le même proxy, déployé de trois façons différentes, et pourquoi « assez léger pour tourner par instance » rend les trois possibles.
Istio
2 guides-
Architecture d'Istio : sidecars, plan de données et plan de contrôle Ce que fait réellement istiod, comment les sidecars Envoy s'intègrent, et pourquoi ni votre application ni ses manifestes n'ont besoin de savoir qu'Istio existe. -
Installer Istio avec istioctl et activer l'injection de sidecar Faites tourner un mesh sur un cluster local, confirmez qu'il est sain et faites injecter le sidecar de votre premier workload.
Cilium
2 guides-
Comment Cilium utilise eBPF : identité, politique et sockets Ce qui se passe réellement dans le noyau quand un Pod démarre, communique avec un autre Pod ou fait l'objet d'une décision de politique sur un paquet, et pourquoi c'est rapide. -
Préparer un cluster pour Cilium : désactiver d'abord le CNI par défaut Cilium remplace entièrement le réseau de votre cluster, ce qui rend l'ordre des opérations plus important qu'avec la plupart des add-ons.