This article is available in French.
1. La philosophie Cloud Native #
Plus qu'une technologie, une approche méthodologique (The 12-Factor App).
L'immuabilité #
Une application Cloud Native est conçue pour être résiliente. On ne répare jamais un serveur cassé, on le remplace automatiquement par un nouveau. C'est le passage du modèle 'Pets' (on prend soin de chaque serveur) au modèle 'Cattle' (le serveur est une ressource remplaçable).
2. Microservices et Conteneurs #
L'application est découpée en petits services indépendants communiquant via des APIs. Les conteneurs (Docker) garantissent que l'application fonctionnera de la même manière sur l'ordinateur du développeur et en production.
3. Orchestration et CI/CD #
Kubernetes devient le chef d'orchestre qui gère le déploiement de ces milliers de conteneurs. Couplé à une pipeline CI/CD automatisée, le Cloud Native permet de déployer des mises à jour des dizaines de fois par jour sans interruption de service.
Mise en pratique : une application cloud native #
12 facteurs, conteneurs et déploiement continu.
Les piliers du cloud native #
# De l'application au cluster, étapes types
docker build -t registre.exemple.fr/shop/api:1.0 . && docker push registre.exemple.fr/shop/api:1.0
kubectl apply -f k8s/ # déploiement déclaratif
kubectl rollout status deployment/api
# GitOps : le cluster se synchronise depuis Git
argocd app create shop --repo https://git.exemple.fr/shop/deploy.git --path k8s --dest-server https://kubernetes.default.svc --dest-namespace prod
argocd app sync shopBonne Pratique : Une application cloud native est sans état : sessions, fichiers et configuration vivent dans des services externes (base, cache, objet, ConfigMap), ce qui permet de supprimer et recréer n'importe quelle instance.
My progress
Sign in to track your progress and take notes. Sign in
Recommended Articles
License consumption types
Understand the evolution of billing in Dynatrace: the difference between the old licensing model ...
Grafana Alloy: The importance of Self-Monitoring
Discover why and how to configure Grafana Alloy so that it monitors itself, collecting its own lo...
Grafana Alloy: Understanding and exploiting the User Interface (UI)
Discover how to enable, secure, and use Grafana Alloy's built-in web interface to visualize your ...
Grafana Alloy: Introduction and Architecture
Discover the fundamental concepts of Grafana Alloy, the transition from the static Agent to Alloy...
Grafana Alloy: Syntax and Configuration (Alloy Language: River)
As part of a Grafana training or observability training, master the declarative syntax of Grafana...
Grafana Alloy: Metrics Collection (Prometheus & Ecosystem)
Learn how to configure Grafana Alloy to collect, transform, and forward metrics using the Prometh...
Grafana Alloy: Log Management with Loki
Discover how to configure Grafana Alloy to read log files, journald, or network streams, process ...
Grafana Alloy: Trace Management with Tempo
Dive into distributed trace processing. Learn how to ingest OTLP, Jaeger, or Zipkin traces with G...
Grafana Alloy: Continuous Profiling with Pyroscope
Discover how to configure continuous profiling in your environments using Grafana Alloy and Pyros...