产品简介
持续部署 (Continuous Deployment)
持续部署指在软件开发过程中,以自动化方式,频繁而且持续性的将软件部署到生产环境,使软件产品能够快速的交付使用。作为持续集成的延伸,持续部署以 CODING 上下游产品优势为根基,是实现 DevOps 闭环的最后流程。
CODING 持续部署用于把控构建之后的项目发布与部署交付流程。能够无缝对接上游 Git 仓库、下游制品仓库以实现全自动化部署。同时还支持 Webhook 等外部对接能力,高效集成各种开发、运维工具。在稳定的技术架构、运维工具等基础上,具备蓝绿发布,灰度发布(金丝雀发布),滚动发布,快速回滚等能力。
主要功能
CODING 持续部署的主要功能包括应用中心、云账号管理、权限控制与发布单等。
应用中心:CODING 持续部署以“应用”为视角管理和统筹部署流程,应用中心用于管理团队内的所有应用。应用是对部署的软件集合的抽象概念,通常代表你想要部署的服务、配置、以及运行所需的基础设置。
云账号管理:在云原生的场景下,云账号就是管理云基础设施的凭证,如 Kubernetes 常用凭据、腾讯云 TKE 与腾讯云账号。
权限控制:团队管理员可以通过自定义不同类型的角色来授予对应的部署设置权限,限制并规范成员行为。
发布单:对应流程由运维类角色在部署控制台预置,由开发类角色在项目中提起;将发布单与审批流结合使用,可以方便地实现人工审查,审计,风险控制等功能。
产品优势
发布多种构建产物:不论是 Docker 镜像、War 包、Helm 包,还是软件源代码,都可以配置在 CODING 持续部署中并作为待发布制品,可无缝对接持续集成和制品库,从而实现全流程 CI/CD。
支持多种运行环境:借助 Spinnaker 对基础设施完善的抽象机制,CODING 持续部署可以对接各类常见的运维系统和云原生环境,例如 CVM 云服务器、SCF 云函数、TKE 容器服务、Kubernetes 集群等。
灵活的发布流程编排:发布流程将持续部署流水线化,可以方便的组织起具备多个微服务的应用在不同集群环境(如:生产、测试、预发布)之间的发布流程控制,并具备过程预编排、错误回退等能力。
强大的审批系统:预编排的审批流程可以让发布过程更为稳定可靠,用户可根据发布流程的级别差异自动适配不同审批流程。测试、产品经理和技术主管等角色都可以根据需求加入发布的审批环节中,配合自动化过程和通知机制使发布过程更加高效。
完善的扩展生态:CODING 部署控制台基于持续交付基金会旗下开源项目 Spinnaker 实现,在其国际化的开源生态的基础上做了大量优化和改造,使控制台能够流畅地对接 CODING 中的上下游研发流程,提供开箱即用的开发体验。
产品概览
应用
CODING 持续部署将「应用」定义为基本部署单位。应用包括若干功能集群以及安全组和负载均衡器等。同时应用也可以理解为您想要部署的服务、配置和运行所需基础设置等集合的抽象概括。推荐将单个应用对应微服务架构中的一个服务。
云账号
云账号是访问云平台的凭据。点击首页左侧的“基础设施”中的“云账号” tab 页进行绑定与管理。目前支持 Kubernetes、腾讯云账号、腾讯云 TKE 三种账号。其中 Kubernetes 支持 Kubeconfig 文件和 Service Account 两种常用凭据。云账号设置完成后,应用中心才能通过对应云平台的接口完成部署过程,点击阅读详细说明。
权限控制
在默认情况下,CODING 持续部署的权限控制:
- 团队负责人:具备部署管理权限
- 团队管理员:具备部署管理权限
- 团队普通成员:不具备部署管理权限
您可以在【团队管理】->【权限配置】中新增用户组中调整对应权限,点击阅读详细说明。
部署流程
部署流程由一系列阶段组成,旨在流水线化工作流。针对云平台基础设置,CODING CD 抽象概括出了部署、伸缩容和禁用等操作,并且还内置了人工确认与 Webhook 等功能以实现对持续部署工作流的精细化管理需要,点击了解更多部署流程详情。
在阅读中是否遇到以下问题?*
您希望我们如何改进?*
如果您希望得到回复,请留下您的邮箱地址。