将Kubernetes移植到浏览器!Sam Rose用大语言模型开发Webernetes的经验分享

发布时间:2026/7/2 20:31:23
将Kubernetes移植到浏览器!Sam Rose用大语言模型开发Webernetes的经验分享 Ngrok产品与资源介绍Ngrok官网提供了各类产品、资源及博客信息。其导航栏包含产品、交付、开发、连接性、娱乐、开发者、资源、博客等分类如产品有网关、AI网关、共享本地主机等开发者板块提供下载、文档、快速入门等内容博客则有AI网关对Native Anthropic SDK的支持等文章。将Kubernetes移植到浏览器2026年6月30日Sam Rose发布了将Kubernetes部分功能移植到TypeScript的成果webernetes让在浏览器中运行集群成为可能。他在629个文件中提交了552次生成近10万行代码整个过程花了两个月时间。Webernetes集群演示演示展示的webernetes集群完全在浏览器中运行能完成许多与真实Kubernetes集群相同的工作如Pod生命周期管理、集群DNS和网络等。蓝色圆点代表Pod之间相互发送的请求。关于Webernetes的疑问解答有人问是否把Kubernetes编译成WebAssembly答案是否定的。因为将整个Kubernetes编译成WebAssembly会导致传输数据达数兆字节且Kubernetes调用了浏览器中不可用的系统级API编译时会出错。Webernetes的构成webernetes是对Kubernetes的“kubelet”二进制文件进行部分移植移植了几个Kubernetes“控制器”基于浏览器实现容器网络接口和容器运行时还有用于与集群交互的API。它有自己基于浏览器的镜像仓库可使用TypeScript API定义镜像。部署镜像与交互示例展示了将镜像部署到集群和使用webernetes API与集群交互的代码示例在webernetes仓库中有更多示例。webernetes旨在创建交互式的Kubernetes内容并非适用于生产环境的发行版。未来扩展计划Sam Rose打算扩展webernetes以支持更多Kubernetes功能目前它还不支持ConfigMaps、Secrets等功能。若开发者基于webernetes开发遇到不支持的功能可联系他。代码生成与审查webernetes的几乎所有代码由大语言模型生成Sam Rose认为该项目并非粗制滥造他逐行审查了所有代码并创建数百个测试确保其行为与真实集群一致。审查代码的原因大语言模型在移植代码方面存在问题如走捷径、过于热心、内容缺失等。Sam Rose认为要对大语言模型移植的内容有信心就需要审查其输出。测试情况为确保代码能正常工作Sam Rose编写测试让相同代码同时在webernetes和k3s集群上运行。webernetes有204个集成测试和1855个单元测试大部分单元测试从Kubernetes的Go代码库移植过来。审查和测试的作用Sam Rose认为审查和测试足以避免粗制滥造。大语言模型可弥补人类的弱点将自己的能力与大语言模型的优势结合是职业生涯中可能性的一次大飞跃。项目数据统计展示了Webernetes每周代码行数统计、大语言模型令牌消耗随时间的变化、每周等效API大语言模型令牌成本等数据。早期工作在博客网站背后的仓库分支中进行第一个提交到后来的仓库的代码是在4月21日。最后一周因开发演示应用投入大量令牌解决问题令牌使用效率低。结论与邀请读者可观看Sam Rose和同事Ryan Blunden录制的系列视频了解webernetes的开发过程。邀请大家试用webernetes提交问题有成果或问题可发邮件给Sam Rose希望项目能蓬勃发展。