Kubernetes porté dans le navigateur web
Original : I ported Kubernetes to the browser
Pourquoi c'est important
Démontre comment les technologies cloud complexes peuvent être adaptées pour éducation et expérimentation au navigateur.
Un développeur a porté Kubernetes en TypeScript pour le navigateur. Le projet webernetes, générant 100 000 lignes de code en 2 mois, simule des clusters complets avec pods, DNS et réseautage, pesant seulement 140 KiB compressé.
Sam Rose, développeur senior chez ngrok, a annoncé la sortie de webernetes, un port partiel de Kubernetes en TypeScript exécutable entièrement dans le navigateur. Le projet représente 100 000 lignes de code générées en 2 mois à travers 552 commits et 629 fichiers. Webernetes n'est pas une compilation WebAssembly de Kubernetes (qui dépasserait les mégaoctets), mais plutôt une implémentation partielle incluant : un port du kubelet pour exécuter les pods, plusieurs contrôleurs (planificateur, gestion des espaces de noms, kube-proxy, contrôleur de déploiement), une interface réseau de conteneurs simulée (CNI) permettant la communication entre pods, et un runtime de conteneurs basé navigateur. Le projet reste volontairement léger à 140 KiB compressé. Plutôt que de récupérer des images réelles depuis Docker Hub, webernetes utilise son propre registre navigateur où les images sont définies via une API TypeScript. La démonstration interactive affiche des pods envoyant des requêtes HTTP les uns aux autres, simulant le fonctionnement d'un véritable cluster Kubernetes avec gestion des cycles de vie des pods, allocation IP, suivi des déploiements et nettoyage des conteneurs.