Aller au contenu

Gestionnaire de

PodMesh : migration à chaud de

PodMesh gère des sur des qui restent libres : les déplacer à chaud avec leur mémoire, les répliquer sur les hôtes qu’on choisit, basculer si une machine tombe. Pas de cluster à rejoindre, pas de système de fichiers répliqué comme sur Proxmox : c’est le manager qui est répliqué. On le pilote en tandem -humain, mode Jarvis, interface minimale.

Pourquoi partir de Proxmox

Proxmox reste un bel outil, beaucoup utilisé ici. PodMesh est né de ce qui y manquait pour notre travail : bouger du à chaud, relier un hôte déjà occupé, répliquer sans cluster, sauvegarder ailleurs que sur la copie live.

Pas de cluster à rejoindre

Chaque reste lui-même : serveur, VM, . On relie pour le travail, on détache, on remet. Un hôte déjà occupé garde son identité.

Le manager est répliqué, pas le filesystem

Sur Proxmox, le stockage suit. Ici, ce sont les faits du manager qui convergent, au mieux sur tous les hôtes. Un seul gouverne à la fois.

Le principe, simplement

Un tourne sur un hôte. On le déplace à chaud vers un autre hôte : la mémoire suit, ce qui tourne dedans ne repart pas de zéro. La même technique sert à garder une réplique prête à basculer.

OK en labo

Migration à chaud

Prouvé en labo entre deux hôtes : le compteur intérieur continue, il ne reprend pas à zéro.

OK en labo

dans

Un extérieur qui porte un autre . On déplace tout ensemble, pas une couche seule.

Ce qui marche en labo

Mesuré sur les trois hôtes de labo, en service de développement. Pas encore packagé, pas de production.

OK en labo

Répliquer sur les hôtes qu’on veut

Par : vers un hôte, plusieurs, ou tous. Maintenant ou à l’horaire. La réplique reste prête, ce n’est pas une archive.

OK en labo

Bascule si une machine tombe

Prévue ou après panne : fence de l’ancien actif, délai de marge, promotion de la copie. C’est l’ qui décide, pas un minuteur automatique.

OK en labo

UUID stables, hôte chaud accepté

Hôtes et identifiés par UUID. On relie un hôte avec ou sans dessus, on le détache, on le remet, sans l’écraser.

OK en labo

Manager répliqué au mieux

Les faits convergent sur les hôtes, au mieux sur tous. Un seul gouverne, l’adresse de service suit le gouvernant.

OK en labo

Pilotage : voir, cloner, pauser

Inventaire, journal, cycle de vie, clone, pause, resume, resources, move simple, console. Mêmes opérations partout.

En cours de validation

Ça tourne en labo mais ce n’est pas fini : preuves, paquet ou cas réels manquent encore.

En validation

Manifests signés, origine vérifiée

Aujourd’hui un point de reprise dit ce qu’il contient, pas qui l’a produit. La signature reste à brancher.

En validation

Réseau géré, volumes généraux

Le move ne marche que sans réseau géré ni volumes montés. Le reste est refusé avant de toucher quoi que ce soit.

En validation

Fencing réel, vraie panne

Le self-fence est prouvé en labo. Le fencing hors-bande et la perte d’une vraie machine restent à prouver.

En validation

Dernier code packagé

Ce qui marche en labo n’est pas ce qui est dans l’APT. Le paquet est en retard d’un cran.

En validation

Stockage ZFS, Btrfs, LVM

La réplication continue disque attend un backend qualifié. Les disques dédiés ne sont pas encore ajoutés.

Backup Server : répliquer n’est pas sauvegarder

Une réplique recopie aussi une erreur. Le Backup Server garde autre chose : ce que le était, versionné, ailleurs.

Design

Points de reprise versionnés

Identité, configuration, volumes, dumps. Design validé, pas de code : on ne peut pas encore restaurer depuis ça.

Design

À part des copies live

Indépendant des répliques. La réplication ne remplace pas ça, et ça ne remplace pas la réplication.

Pilotage en tandem, mode Jarvis

Comme se fabrique en tandem humain-, PodMesh se pilote en tandem -humain : l’ fait, l’humain décide. Interface minimale, mêmes opérations partout.

OK en labo

et CLI d’abord

Des opérations claires, pas des scripts. La console et la ligne de commande font les mêmes gestes.

En validation

Interface minimale complète

La console sait voir, répliquer, basculer. Le formulaire générique et les vues restantes arrivent.

La prouesse : ce qu’Astra a résolu

Des dans un , déplacés d’une machine à l’autre. Avec Xavier, OpenAI Codex (GPT-6 Astra) a adapté le fork vzcriu et le kit de reproduction pour Debian 13. Le reste appartient aux auteurs d’origine, CRIU et OpenVZ.

OK en labo

Namespaces de PID séparés, réconciliés

Deux , deux espaces de PID. À l’arrivée, le même UUID de tâche, le PID intérieur 30 retrouvé, le compteur qui repart (78 puis 80). Les attributs LSM sont restaurés via thread-self à travers les PID imbriqués.

OK en labo

Sockets UNIX nommés via proc-fd

Au dump, les noms de sockets relatifs à proc-fd sont résolus. Au restore, le chemin getsockname change : une application qui exigerait l’orthographe exacte reste disqualifiée.

OK en labo

Boot ID et crun remaquillés

Après reprise validée, le boot ID en cache du intérieur et l’heure de démarrage en cache de crun sont mis à jour. Réparation volontairement étroite : pas de remise en état générique.

En validation

Limites dites, kit public

Trois migrations mesurées, 8 à 10 secondes côté contrôleur, sans réseau ni volumes. Le kit de reproduction est public, les archives mémoire restent privées. Rseq contourné, move_mount standard, cgroups intérieurs partagés.

Et ?

peut s’appuyer sur PodMesh quand une activité tourne dans un . On le fait en interne. PodMesh tourne aussi tout seul : ce n’est pas un module Shaper.

Le code et le paquet, en public

Le dépôt , c’est le code. L’APT signé, c’est le paquet, en retard d’un cran sur le labo. Les deux se lisent.

Questions fréquentes

Pourquoi ne pas rester sur Proxmox ?
On l’a beaucoup utilisé. PodMesh existe pour ce qu’on n’y avait pas : du à chaud, des libres, la réplique prête à basculer, un Backup Server qui n’est pas la copie live.
La bascule est automatique ?
Non. L’ décide, la machine prouve l’exclusion : fence, marge, promotion. Pas de minuteur qui bascule tout seul .
PodMesh, c’est ?
Non. , c’est l’outil de votre activité. PodMesh, c’est le gestionnaire de .

Vous venez de Proxmox ? Venez voir.

Trente minutes sur votre cas : à bouger, hôtes à relier, répliques à prévoir. Le code se lit sans rendez-vous.