
Soixante conteneurs sur un seul serveur
Une machine bare-metal exécute des dizaines à des centaines de conteneurs Hoody. La dédupplication KSM et BTRFS rend le coût marginal quasi nul.
Annonce d'embarquement. Le job de rapport quotidien est réglé sur 7h UTC, mais le destinataire est à Tokyo et l'heure est mauvaise. Vous ouvrez l'URL de la crontab sur votre téléphone, tapez sur la ligne, changez deux champs, appuyez sur Enregistrer. Le PATCH passe. Le job se déclenche ce soir avec la nouvelle planification. Pas de session SSH, pas de jump box, pas d'ordinateur portable.
Le service cron parle JSON sur HTTPS. Le navigateur du téléphone envoie un PATCH sur l'UUID de l'entrée avec le nouveau champ schedule. La crontab système est ré-injectée par le service. Le prochain déclenchement est dans le corps de la réponse.
Le PATCH ne porte que le champ qui a changé. Le service le fusionne dans l'entrée existante, recalcule next_run et ré-injecte la ligne dans la crontab système. Pas de session SSH, pas de jump host, pas d'ordinateur portable.
Toute l'édition tient entre l'appel d'embarquement et la file prioritaire. Ouvrez l'URL. Changez le champ. Marchez vers l'avion.
Le service cron a sa propre URL — cron.containers.hoody.com/users/me/crontab. La même page s'ouvre dans n'importe quel navigateur, y compris celui sur votre téléphone. L'auth, c'est l'URL. Pas de bastion, pas de prompt AnyConnect, pas de rituel de clé-sur-laptop.
Chaque entrée managée est un objet JSON avec schedule, command, comment, enabled. Vous tapez sur la ligne, le champ schedule devient éditable, vous remplacez 0 7 * * * par 30 4 * * 1-5. Les autres champs ne sont pas touchés.
Enregistrer déclenche un PATCH sur /users/me/entries/[id]. La réponse dit 200 OK et renvoie le nouveau next_run. La crontab système est mise à jour en moins d'une seconde. Vous fermez l'onglet et marchez.
Hoody Cron expose un petit CRUD au-dessus de la crontab. Chaque entrée managée a un UUID ; chaque entrée peut être patchée isolément. Voici les quatre endpoints que le téléphone utilise pour éditer, mettre en sourdine, lister ou supprimer un job.
Endpoints selon le service Hoody Cron. Les chemins sont relatifs à https://PROJECT-CONTAINER-cron-1.SERVER.containers.hoody.com.
Les chiffres qui importent à une personne debout à une porte avec un écran de 6 pouces.
schedule, command, comment, enabled, expires_at. Chacun peut être envoyé seul. Les autres champs restent intouchés, donc le commentaire que vous avez écrit hier à 9h survit à l'édition à l'aéroport.
Un PATCH depuis le téléphone. Une réponse 200 avec le nouveau next_run. La crontab système est ré-injectée par le service dans le même appel — pas de seconde requête, pas de polling.
Pas de SSH, pas de bastion, pas d'AnyConnect. La crontab est une URL et l'auth est l'URL. La clé hardware sur votre laptop reste dans votre sac.
Votre crontab est une URL, donc l'éditer est une URL.
Quand la planification est joignable depuis un navigateur, l'endroit où vous vous trouvez cesse d'avoir de l'importance. La porte d'embarquement est un bon bureau. Le téléphone est un bon terminal. Le PATCH est le changement.
La plupart de ces choses n'existent que parce que la crontab n'était pas joignable depuis un téléphone. Quand la planification est une URL, les rituels pour y accéder disparaissent avec elle.
Vous êtes resté debout à la porte et vous avez changé l'heure à laquelle le job se déclenche ce soir.