Google流程自动化工具Skaffold如何提升k8s使用体验?

谷歌最近向开发者社区发布了一个叫Skaffold的命令行工具,它可以自动化Kubernetes开发工作流程。目前,该工具已经正式可用(https://skaffold.dev/),有150个贡献者进行了5000多个commit。

2019年,Kubernetes(以下简写成k8s吧)已经成了容器编排事实上的标准,是许多云原生应用的关键部分,是帮助应用在云环境中运行的非常重要的底层工具。

尽管k8s很强大,而且应用的越来越普遍了,但k8s的部署环节还是太麻烦了,而且集群配置过程中需要许多精巧的处理和调试操作。(译者也尝试过部署k8s,但每次都以失败告终)。

作为k8s的创建者,谷歌为了解决这些问题,早前发布了一个叫Istio的项目,这是一个开源工具,它可以安全地连接和监控k8s下的微服务,该项目也是个热门项目。

但是k8s的问题还是很多,于是才有了这个Skaffold。

Google流程自动化工具Skaffold如何提升k8s使用体验?

Skaffold的内部工作流程图

为啥要开发Skaffold?Skaffold是干啥的?

Google的软件工程师Nick Kubala解释说:我们注意到k8s的用户在构建和管理容器镜像方面花的时间太长了,需要手动更新k8s清单,即使进行很少的代码更新都要重新部署一次应用。于是我们就打算开发个工具来自动化完成这些任务,让用户可以专注于代码本身,而不是做这些重复性工作。

Skaffold的skaffold dev命令可以随时监测代码更改,然后随时rebuild和redeploy到用户的集群里,它还支持用Go,NodeJS,Java以及Python代码直接做debug。

原来,这是一个类似于热部署之类的技术。

Skaffold在用户端运行,不需要在集群上做什么配置,这是一个特别轻量级的工具。

TNG首席顾问马丁·霍弗尔(Martin H Fer)给Skaffold点赞。他表示:“Skaffold非常棒,它可以简化开发和交付流程,它非常好的解决了两个问题。一个是覆盖从本地开发到测试和交付的整个开发流程,一个是可以让用户在Linux,MAC还有Windows上进行开发,而不局限在某个平台上。”

谷歌指出,Skaffold能自动化完成很多典型的开发任务,它会自动跟踪用户部署工作负载时的日志,将远程应用转发到本地机器,从而直接对服务端点进行迭代,从而用内建的工具实现真正的云原生开发。

展开阅读全文

页面更新:2024-04-09

标签:马丁   流程   工具   贡献者   简写   创建者   流程图   早前   负载   集群   容器   代码   项目   数码   用户   工作

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top