À propos du projet

Il s'agit d'un laboratoire d'apprentissage personnel conçu pour maîtriser le cycle complet « construction → vérification du fonctionnement → investigation d'anomalies → récupération » d'un serveur Linux. L'objectif n'est pas de démontrer une expérience opérationnelle professionnelle, mais d'enregistrer distinctement les étapes réalisées et celles non effectuées. La licence est MIT et l'auteur est Noriyuki Shimada. La configuration centrale consiste en une application Flask avec authentification (utilisant psutil dans un conteneur pour renvoyer l'état) et un serveur nginx comme point d'entrée, le tout lancé via Docker Compose. L'accès s'effectue via 127.0.0.1:8080 pour vérifier les réponses de santé et la différence entre les codes 200 et 401 selon l'authentification Basic. Le système de surveillance comprend Prometheus pour la collecte périodique de l'application et de node-exporter, Grafana pour la visualisation, ainsi qu'une agrégation de logs (Alloy / Loki) et des notifications via Alertmanager. Il est précisé que les métriques globales de l'hôte doivent être consultées via node-exporter. L'automatisation de la construction utilise Ansible, avec une distinction entre foundation.yml (infrastructure de base, incluant les rôles common / docker) et site.yml (full-stack, incluant la surveillance). Des enregistrements sur la vérification de l'idempotence et l'application de l'infrastructure sur Ubuntu et AlmaLinux sont disponibles. Le projet traite également des aspects opérationnels tels que les procédures de récupération, la gestion des changements, les SLO et les budgets d'erreur. La validation est automatisée via les workflows python-check et full-stack-e2e de GitHub Actions, avec un enregistrement de 167 tests pytest. Le registre des preuves (docs/evidence) gère la date d'exécution, l'environnement, le commit cible, le résultat et les zones non réalisées. Le 22-08-2026, le test E2E full-stack a validé 23 ID (construction groupée, idempotence, récupération, restauration). Le 04-09-2026 a enregistré la construction de base sur Ubuntu et AlmaLinux, et les 07-08 septembre ont documenté la construction manuelle sur Ubuntu via Hyper-V (IP fixe, authentification par clé SSH, sudo, UFW, synchronisation temporelle, mises à jour automatiques) et le lancement d'une configuration Docker minimale. Les résultats sont détaillés (PASS 14 / PASS-ADAPTED 4 / PARTIAL 2 / NOT RUN 1). En revanche, l'application réelle sur AWS et sa suppression, l'envoi réel vers Slack, le fonctionnement à long terme du labo de surveillance et la restauration après panne hôte (D-2) sont explicitement marqués comme NOT RUN, avec un plan de mesure prévu séparément. Concernant les enregistrements manuels, il est noté qu'il s'agit d'exercices sur l'OS seul sans utiliser Ansible ou le code du dépôt, qu'ils ne constituent pas l'acceptation d'un projet spécifique, que l'IA a aidé pour les procédures et l'édition, et que la reproduction autonome ou le fonctionnement à long terme ne sont pas visés. La documentation est exhaustive pour les apprenants : un guide pour débutants (5 étapes commençant par 2 services minimum), un parcours d'apprentissage linéaire du Niveau 0 au 5, un glossaire de 408 termes de base sur les serveurs, un recueil de mots-clés de construction, un modèle de rapport de stage, des packs de projets (exigences → conception → construction → test → preuve → exploitation → changement), des décisions de conception, des études de cas basées sur des échecs et un kit d'exploitation. L'étendue de l'utilisation de l'IA est également publiée, précisant la politique de distinguer ce qui a été exécuté/expliqué par l'utilisateur, ce qui a été aidé par l'IA et ce qui reste non vérifié.