Soixante conteneurs sur un seul serveur
Une seule machine bare-metal fait tourner des dizaines à des centaines de conteneurs Hoody. La déduplication KSM et BTRFS rend le coût marginal quasi nul.
Annonce d'embarquement. Le job de rapport quotidien est calé à 7h UTC, mais le destinataire est à Tokyo et l'horaire est faux. vous ouvrez l'URL du crontab sur votre téléphone, vous tapez la ligne, vous changez deux champs, vous faites Save. Le PATCH passe. Le job se déclenche ce soir sur la nouvelle planification. Pas de session SSH, pas de jump box, pas de laptop.
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. Le crontab système est ré-injecté 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 merge dans l'entrée existante, recalcule next_run, et ré-injecte la ligne dans le crontab système. Pas de session SSH, pas de jump host, pas de laptop.
Toute l'édition tient entre l'appel d'embarquement et la file prioritaire. Ouvrez l'URL. Changez le champ. Marchez jusqu'à 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 de votre téléphone. L'auth, c'est l'URL. Pas de bastion, pas de prompt AnyConnect, pas de rituel clé-sur-laptop.
Chaque entrée gérée est un objet JSON avec schedule, command, comment, enabled. vous tapez la ligne, le champ schedule devient éditable, vous remplaces 0 7 * * * par 30 4 * * 1-5. Les autres champs ne sont pas touchés.
Save déclenche un PATCH sur /users/me/entries/[id]. La réponse dit 200 OK et renvoie le nouveau next_run. Le crontab système est mis à jour dans la seconde. vous fermez l'onglet et vous marchez.
Hoody Cron expose un petit CRUD sur le crontab. Chaque entrée géré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, mute, lister ou supprimer un job.
Endpoints d'après le service Hoody Cron. Les chemins sont relatifs à https://PROJECT-CONTAINER-cron-1.SERVER.containers.hoody.com.
Les chiffres qui comptent pour quelqu'un debout à une porte avec un écran de 6 pouces.
schedule, command, comment, enabled, expires_at. Chacun peut être envoyé seul. Les autres champs restent intacts, donc le commentaire que vous avez écrit hier à 9h survit à l'édition aéroport.
Un PATCH depuis le téléphone. Une réponse 200 avec le nouveau next_run. Le crontab système est ré-injecté 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. Le crontab est une URL et l'auth est l'URL. La clé matérielle de 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 le crontab n'était pas joignable depuis un téléphone. Quand la planification est une URL, les rituels pour y arriver disparaissent avec.
vous étiez debout à la porte et vous avez changé l'heure à laquelle le job se déclenche ce soir.