Threads (@oneday0013)
dev-toolsai-engineering
Original source

Webernetes — 在瀏覽器裡跑 Kubernetes

Summary

ngrok 工程師用 TypeScript 完整重寫了 Kubernetes,讓它可以在瀏覽器裡運行,專案叫 Webernetes

技術重點

  • 重寫了 pod、DNS、網路、排程器,全部跑在瀏覽器分頁中
  • 沒用 WASM — 把 Go 編成 WASM 光一個 hello world gzip 完就超過 540KiB,整包 TypeScript 重寫反而只有 140KiB
  • 直接重寫 kubelet、各種 controller 和一個瀏覽器版容器 runtime
  • 規模:10 萬行程式碼、629 個檔案、204 個整合測試 + 1855 個單元測試,花了 2 個月

LLM 使用心得

  • 大量使用 LLM 輔助,但結論是「LLM 很不會 port 程式碼」
  • LLM 會偷懶抄捷徑、亂發明沒用的 helper、漏掉測試
  • 真正讓它能動的是堅持自己 review 每一行,再把測試拿去對真的 k3s cluster 跑
  • Token 花費約 $5,000 美金,最兇一週 $1,811 — 「一個人做一個專案」的現代價碼

來源

ngrok blog: https://ngrok.com/blog/ (Webernetes 文章)