Cloud & DevOps
Une infrastructure prête pour l'IA, c'est une infrastructure déclarée, reproductible et gouvernée, pas une succession de clics dans une console.
Tout est infrastructure-as-code (Terraform), modularisé et versionné, avec un état distant verrouillé et une détection de dérive systématique : la console n'est jamais la source de vérité. Les environnements sont reproductibles par construction (modules paramétrés, landing zones, politiques de comptes), ce qui rend le provisioning d'un nouvel environnement déterministe et auditable. Pour les images, nous privilégions l'immuabilité (Packer) : on remplace, on ne patche pas en place.
Sur Kubernetes (ou OpenShift), la topologie est pensée pour la résilience et le coût : répartition multi-AZ, node pools différenciés (dont GPU pour les charges IA), requests/limits calibrés sur la consommation réelle, et autoscaling à plusieurs niveaux, HPA/VPA pour les pods, autoscaler de nœuds, et KEDA pour le scaling événementiel des charges asynchrones. Le réseau (CNI, NetworkPolicies), les secrets (Vault, jamais en clair dans les manifests) et la gestion d'identité des workloads sont traités dès la conception, pas ajoutés après coup.
La livraison suit le modèle GitOps : l'état désiré vit dans Git, ArgoCD (ou Flux) réconcilie le cluster en continu, ce qui donne traçabilité, rollback et cohérence multi-cluster. Les pipelines CI/CD intègrent les contrôles qualité et sécurité comme des portes bloquantes (lint, tests, scan d'images, policy-as-code via OPA / Kyverno), pour que la conformité soit vérifiée à chaque changement plutôt qu'auditée trop tard.
/// stack
- Terraform / Pulumi
- Packer
- Kubernetes / OpenShift
- Helm / Kustomize
- ArgoCD / Flux
- KEDA
- Vault
- OPA / Kyverno (policy-as-code). Le choix se fait sur la cible
- pas sur la mode
/// ce que nous mesurons
- lead time for changes
- fréquence de déploiement
- change failure rate
- MTTR (les quatre métriques DORA)
- dérive d'infrastructure
- taux d'images scannées
/// anti-patterns éliminés
- modifications manuelles hors IaC
- secrets en clair
- requests/limits absents (et donc OOMKills et gaspillage)
- pipelines sans portes de sécurité
- et le « cluster pet » qu'on n'ose plus reconstruire
