Par où commencer
Cette page est le point d’entrée du dépôt pour un nouvel arrivant. Elle dit à qui ce projet s’adresse, ce qu’il faut savoir avant de plonger, et propose un parcours numéroté pour ne pas se perdre.
🔰 Gardez le glossaire ouvert à côté : tous les sigles (Kubernetes, etcd, OSD, PVC, CNI, erasure coding, quorum…) y sont définis en langage simple. Pour comprendre le projet avant de le faire, le manifeste le raconte de bout en bout.
Public visé
Section intitulée « Public visé »- Administrateur / exploitant d’un cluster Kubernetes de recherche hyperconvergé (calcul + stockage sur les mêmes machines).
- Développeur data qui veut consommer la plateforme depuis son code (sans l’opérer) : commencez par Se brancher sur la plateforme ou, pour développer en local, le tutoriel Monter le banc local.
- Contributeur au dépôt (manifestes, playbooks, documentation).
Ce dépôt n’est pas une distribution clé en main, ni l’infrastructure d’un déploiement particulier : c’est un catalogue de topologies réutilisables (mono-nœud, multi-nœuds, bare-metal hyperconvergé…), une activée par déploiement, en valeurs d’exemple génériques (ADR 0023). Les valeurs réelles (IP, disques, hostnames) vivent dans une config locale non versionnée. Le manifeste raconte le pourquoi de bout en bout.
Prérequis de connaissances
Section intitulée « Prérequis de connaissances »Vous serez plus à l’aise avec des notions de base de :
- Linux / SSH / Ansible (les serveurs sont préparés par des playbooks) ;
- Kubernetes (pods, services, déploiements) — sinon, le glossaire suffit pour démarrer ;
- stockage distribué (la partie Ceph est la plus spécialisée) ;
- Git / Pull Requests (toute modification passe par une PR — cf. CONTRIBUTING).
Pas besoin d’être expert : la documentation est conçue pour être suivie pas à pas. Les sections avancées sont signalées.
Parcours numéroté
Section intitulée « Parcours numéroté »-
Se repérer. Lire ce fichier et garder le glossaire ouvert à côté. Pas besoin du pourquoi de chaque décision pour démarrer : il est raconté dans le manifeste, à lire avant ou après, sans interrompre l’installation.
🔰 Première fois ? Montez d’abord « votre premier cluster », sans risque. Avant de toucher des serveurs réels, le tutoriel Monter le banc local déploie un cluster complet sur des VM Lima jetables (un
run-phases.shcodé, rien à enchaîner à la main) : on y apprend la séquence de bout en bout sans wipe disque ni machine de prod. L’étape 2 ci-dessous est la vraie installation (serveurs), à faire une fois le banc apprivoisé. -
Installer le cluster. Suivre la séquence de référence pas à pas :
bootstrap/RUNBOOK.md— préparation OS,kubeadm, CNI Cilium, jonction des workers. Chaque playbook se lance vianestor ansible <playbook>(inventaire dérivé de la topologie, ADR 0098). -
Déployer le stockage.
storage/ceph/RUNBOOK.md— opérateur Rook,CephCluster, StorageClasses. À faire une fois les nœudsReady. -
Déployer les services et applications. Registry, dashboard (
platform/), RStudio et exemples (apps/,storage/ceph/wordpress/). -
Exploiter au quotidien. Vérifier l’état (
bootstrap/state.sh), sauvegarder etcd (etcd-backup+ copie hors-nœudetcd-fetch), monter de version (k8s-upgrade), surveiller (kubectl topvia metrics-server, SMART via smartd).
Avant de toucher la production
Section intitulée « Avant de toucher la production »- Tout se valide d’abord sur le banc Lima (
bench/) — voir SAFEGUARDS.md pour les garde-fous (hooks, CI, banc). - Le banc se monte en couches (layers). L’ordre des couches n’est plus une
table figée : il est dérivé d’un graphe atomique de dépendances
(ADR 0083). On déclare ce
qu’on veut via
layers:dans latopology.yaml—layers: [atlas]= chaîne MLOps complète (metrics → obs → gitops → dataops → gitops-seed → mlflow). Les anciens chemins nommés (atlas,atlas-ceph…) restent des alias rétrocompatibles rejouables via--target <nom>. Détail : Monter le banc local. - L’état d’avancement se lit dans les plans de mise en œuvre
(
docs/plans/, ADR 0057) et les passages d’audit datés (docs/audit/, ADR 0058) ; l’état live du cluster vient debootstrap/state.sh.
Si quelque chose ne va pas
Section intitulée « Si quelque chose ne va pas »bootstrap/state.shaffiche le drift par couche et propose la prochaine étape.- Une faille de sécurité ? Ne pas ouvrir d’issue publique — suivre SECURITY.md.