Google云计算针对GKE推出托管持续交付服务Google Cloud Deploy,使得用户对GKE的持续交付工作更容易快速。Google提到,持续交付指得是将容器镜像文件部署到各种环境中的工作,而这项工作复杂度很高,在Kubernetes环境中,目前没有公认的最佳实践,要构建和扩展持续交付工具、工作管线和可重复流程,是一项需要大量经验的工作。
Google Cloud Deploy是官方发布来简化GKE持续交付工作的服务,其提供三方面的优势,分别是拥有成本、安全和审核,以及集成。Google提到,用户自己创建Kubernetes持续交付的运营成本很高,执行包括找出最佳且可重复的实践,扩展交付工具和工作管线,并且维持更新状态等工作,不只需要大量资源,也会占用企业发展核心业务的时间。
Deploy为一项托管服务,让用户能够以声明的方式,定义结构、交付工作管线和目标,并且因为每个发布版本分开存储,Google表示,当用户的交付工作管线变更时,发布版本的生产路径仍维持不变,因此交付工作管线的变更,不会影响正在执行的版本。
操作持续交付系统的用户具有不同的角色,并且需要做出各种决策,但是并非所有用户和决策,都使用相同的权限。像是能够定义交付工作管线并进行更新的用户,不代表应该具有创建发布版本的权限;而能够发布更新版本,也不代表有权限能够核准并且使其进入生产阶段。
而Google Cloud Deploy提供高精细度的控制,提供离散资源访问控制,和执行等级安全性,管理员可以使用流程管理功能,像是发布升级、回退或是核准等,方便地赋给用户的权限。
Google还强化这项托管持续交付服务,和GKE交付工具生态系统集成的能力,用户可以通过连接到持续集成系统、核准或操作工作流程,以及支持第三方的Pub/Sub通知,与既有的系统集成。Google提到,要将Google Cloud Deploy连接到现有的持续集成工具很简单,在用户构建容器后,Deploy便会创建一个交付工作管线版本,并且启动Kubernetes清单配置和部署程序。
Google还提到,交付至Kubernetes通常会随时间产生变化,Deploy通过Kubernetes开发工具Skaffold,让用户标准化开发和产品环境中的配置。对于刚开始使用Kubernetes的企业,可以使用原始的清单,当交付工作逐渐变复杂,便可以使用Helm、Kustomize和kpt等高端工具,Deploy与Skaffold的组合,供用户简单地过渡使用这些高端工具,而不会影响交付工作管线。
领取专属 10元无门槛券
私享最新 技术干货