CODING X C-Life:云端 DevOps 加速企业数智化

CODING —— 云原生时代的研发工具领跑者 本文为 CODING 创始人兼 CEO 张海龙在腾讯云 CIF 工程效能峰会上所做的分享。 文末可前往峰会官网,观看回放并下载 PPT。 大家上午好,很高兴能有机会与大家分享 CODING 最近的一些新动作。今天主要分享的内容是 CODING 的战略升级和新产品介绍。在讲整个战略升级之前,我们先来讲一讲“为什么要做云原生时代的标准化工具”。大家都知道 CODING 一直在做开发者相关的工具,从代码托管开始,后来又做了 CI/CD、项目管理、制品库等等一系列工具。那么为什么我们认为在这个时代做这些工具会有. 阅读详情

数联天下,智造生活

数字化开始从抽象化、标准化走向智能化

2020 给全民普及了什么是线上化、数字化、智能化,也加速了企业的数字化转型。“全数字化”时代,已经不仅仅是简单粗放的数据采集、映射、抽象。数字化开始迈入高级阶段——数据驱动的智能化:基于云管端 + AIoT 等为代表的新技术群落开始大量涌现,数智化企业思考的核心问题转向了如何以客户运营为核心,通过智能化手段提高客户全生命周期的体验。

作为物联网大数据行业的排头兵,深圳数联天下智能科技有限公司(以下简称数联天下)倾力打造的 C-Life 大数据综合计算服务平台,致力于为个人、行业、政府提供全周期、全链条、全维度、全方位的专业级运营顾问式服务。依托着公司强大的研发投入与技术实力,数联天下在智慧养老、智慧健康校园、智慧美业、智慧家庭、智慧酒店、智慧农业、智慧水生态等多个智慧领域,打造了一批又一批的标杆示范项目。

DevOps 带动研发流程数字化

企业的敏捷性、适应性、反脆弱性,决定其在这场数字化颠覆中的胜与负

在交付各个领域的智慧项目过程当中,数联天下的研发部门逐渐发现问题:研发团队面对的是一个更加不确定、个性化、碎片化的市场需求。行业项目虽然存在着一定的通用性,但也因地制宜的存在大量定制化需求。如何让个性化与规模化齐头并进?多变的客户需求带动了研发组织开展与业务相适应的调整。通过研发流程数字化提升研发流程的敏捷性、适应性、反脆弱性,数联天下开启了研发提效之路。

数联天下研发团队和我们分享道:“客户项目周期紧张,需求变化比较频繁,开发团队需要在短时间内完成软件开发并发布上线。而在之前的研发流程当中:发布流程长,审批环节多,发布节奏缓慢,开发运维之间没有良好协作来提升发布效率。所以亟需打破跨部门之间的壁垒,减少开发、测试、运维之间的沟通环节、沟通成本。DevOps 是我们在较短开发周期内开发高质量软件的首选方法,希望通过使用 DevOps 平台 —— CODING 来提升客户满意度。”

区别于之前通过多个工具自建研发流程,数联天下团队首先基于 CODING 的持续集成、制品库、持续部署逐步提升交付带宽,再将项目管理、研发数据管理等流程统一至 CODING ,渐进式实现研发流程从需求提出到应用部署的价值交付,从而让研发团队各个角色基于统一平台通力协作,按期保质交付项目。

持续交付驱动业务加速

在使用 CODING 的过程中,数联天下研发团队遵循着循序渐进的路线。首先基于 CODING 持续集成、制品库、持续部署建立持续交付流水线。区别于自建 Jenkins 与 Nexus,CODING 的持续集成与制品库开箱即用,研发团队通过持续集成构建好的 Docker 镜像可以直接推送到 CODING 制品库中,再通过持续部署拉取指定版本镜像进行部署。

在这里插入图片描述

  • 开箱即用的持续集成

CODING 持续集成在构建脚本语法上全面兼容 Jenkins,支持数联天下无缝地迁移 Jenkins 的构建到 CODING 中。并且支持 Docker 镜像的构建,在基础功能上满足了研发团队对构建制品的迁移需求。

在使用上,CODING 比自建 Jenkins 要方便许多,打开浏览器就可以使用,不需要繁琐的机器配置、构建环境搭建、软件插件安装。而且 CODING 提供了多地域境内外构建节点,并优化国内访问海外主流镜像链路,支持构建任务中开启缓存,大大提升了构建速度。在构建资源的灵活性上,既支持数联天下使用 CODING 云主机进行构建,也支持数联天下将使用中的腾讯云机器设置为构建资源。

在这里插入图片描述

  • 企业级的制品仓库

在使用 CODING 制品库之前,数联天下团队基于开源项目自建制品库,在使用自建私服制品库常常遇到性能问题或易用性问题,比如一上传大容量的 Docker 镜像时,自建的制品库就常常服务不可用,导致后续一系列的版本发布受阻,使用 CODING 后这类问题就迎刃而解了。CODING 制品库是专为生产环境打造的企业级制品库,无论是制品库的容量、分发效率都经过产品团队精心优化。数联天下团队将所有制品推送至 CODING 制品库,利用 CODING 制品库提供的版本策略、权限控制、安全扫描等能力对制品进行了规范管理。

不仅仅是 Docker,CODING 制品库提供了十多种主流制品类型,包括 Helm、通用文件、npm、Maven、PyPI 等等,可以支持研发团队多样化制品托管需求。同时制品库提供的精细化的权限设置,支持每个制品库设置项目内、团队内、公开的开放范围,针对多团队并行开发的场景,数联天下可以轻松地将通用组件设置为团队内开放,将项目独有的制品设置为项目内可见,既能加速公共制品在企业研发内部的共享与流动,也能确保项目独有制品的权限安全。

在这里插入图片描述

对于频繁进行商业交付的研发团队,安全也是商业客户关心问题之一。CODING 制品库除了解决数联天下团队的制品托管问题,还对制品的安全质量进行了规范。通过制品扫描设置质量红线标准,杜绝问题组件发布至生产环境,扫描方案还提供了详细扫描记录和缺陷统计,方便研发团队快速修复。这在一定程度上提高了制品的安全性,减少了应用在生产环境出现的安全漏洞问题。

在这里插入图片描述

  • 清晰易用的持续部署

接下来就是打通持续交付的最后一环——持续部署。通过持续部署,研发团队可以自动、频繁地将软件部署到各种生产环境,使软件产品能够快速地交付使用。

1. 清晰灵活的流程编排

数联天下运维团队首先根据测试流程、上线流程以及部署环境规划好每个应用的部署流程。针对开发环境、测试环境、类生产环境、生产环境分别创建不同的流程分支。基于 CODING 持续部署,可以快速地编排出串行或者并行的部署流程:例如针对类生产与生产环境,必须要在类生产的集成测试(自动化+人工)通过之后,才可以进入生产环境发布;而多地域的生产环境发布,就可以并行部署,提高效率。

基于 CODING 持续部署清晰灵活的流程编排,应用所有的部署分支流程一目了然。

在这里插入图片描述

2. 人工审批加上自动通知机制

针对过去运维发布过程中的多环节、多审批、多等待的情况,数联天下团队根据发布流程的级别差异将测试、产品经理等角色加入审批环节,配合自动化部署过程和通知机制,解决了从前需要人工反复确认部署环节的问题;也解决了从前开发人员只能等待运维人员定时部署版本的难题,开发和运维人员都可以随时随地按需部署应用。

在这里插入图片描述

每个环节的通知除了支持常见的站内通知、企业微信、钉钉、Bearychat 等方式,还支持团队通过 Webhook 的方式接入企业使用的其它协作工具,满足团队的个性化通知需求。

在这里插入图片描述

3. 规范的制品版本规则

在项目紧张的开发周期当中,数联天下的制品构建地十分频繁,制品数量也在急剧增长,其中包含了开发自测的 snapshot 版本和正式转测的版本。如何确保测试环境、生产环境等能够始终选择主干发布的稳定版本,避免因为手误选到开发自测版本?通过在持续部署中的制品分支策略制定所选制品的规则,杜绝以往人工选择临时分支版本导致的错误情况。

在这里插入图片描述

4. 统一的部署控制台

在数联天下团队的日常应用部署管理过程当中,CODING 持续部署提供了以应用为视角的控制台。运维人员可以对所有应用的配置信息、基础设施、资源分配、部署流程进行全面管理,无需在各个项目视图之中来回切换。这对于需要面对繁多项目的数联天下研发团队来说,统一的部署控制台面板,大大提升了应用部署管理效率。

在这里插入图片描述

在应用部署完成后,就可以在 Kubernetes 集群面板中方便地检查部署好的资源,包括集群内资源的工作负载情况。一气呵成的部署操作帮助运维或者开发人员一站式完成部署资源准备、部署流程编排、应用部署、部署后的检查工作。

在这里插入图片描述

  • 端到端价值交付

紧接着研发团队将代码管理、项目管理迁移至 CODING 的代码托管、项目协同中。告别了过去的 SVN 代码管理,基于 CODING 代码托管进行 Git 式开发,基于代码扫描与 Code Review 建立研发质量的基线。切换到项目协同进行项目管理后,真正打通了从需求->代码->制品->应用的全部链路,数联天下研发团队基于统一云平台真正实现端到端的价值交付。和以前基于多个工具自建研发平台的方式对比,统一研发管理平台带来的好处有:

  1. 减少自建工具、维护工具、打通各个工具的成本
  2. 享受统一平台带来的一致的 UI、账号管理、权限设置的超融合体验
  3. 端到端追溯需求从提出到发布上线的过程
  4. 更加规范的研发质量管理
  5. 全面的研发数据管理

在这里插入图片描述

基于 CODING 的 DevOps 实践,数联天下的交付带宽达到了较大提升。DevOps 实践给数联天下的研发团队带来的不仅仅是流程上、工具上的改变,也进一步加深了团队的业务共识。所有角色都坐在了一起:测试、运维、开发、产品、项目管理等,研究如何基于统一平台通力协作,按期保质地交付项目,服务好客户。

让研发数据服务于研发

数据已经成为生产的要素之一

研发数字化不仅仅是自动化流程的搭建,更重要的是在数字化落地过程当中,如何将有机串联的研发环节发挥出 1 + 1 > 2 的效果?如何让研发数据服务于研发?

目前数联天下的研发团队已经将研发全流程切换到 CODING,慢慢积累的研发数据也给研发管理带来了新的指引。通过效能度量,可以清晰分析成员工作负载;通过仪表盘可以清晰看到代码提交数、事项完成数、构建次数、发布次数等等多个维度的数据展示。这些数据也将支撑着研发团队快速地调整和检视以适应更加多变的未来。

在这里插入图片描述

渐进式转型,变革与交付两不误

数联天下研发团队负责人告诉我们:“最开始选择 CODING,因为 CODING 持续集成全面兼容 Jenkins 的持续集成服务,支持 Java、Python、Node.js 等所有主流语言,并且支持 Docker 镜像的构建。这与公司现有的发布方式,架构体系相吻合。在使用了一段时间后,不仅仅是持续集成,包括 CODING 制品库、/在内的 DevOps 工具给我们的研发流程带来不少提升,也期待 CODING 能够在研发工具链上给我们带来更多惊喜。”

在全面了解数联天下的 DevOps 实施路径之后,我们也发现企业的研发变革不是一蹴而就的,需要从流程上环环打通,选择一个迁移成本低、使用门槛低、功能灵活的一站式研发管理工具,能够让变革事半功倍。

我们欣喜地看到,数联天下一直走在提升内部效率的道路上,这家志在提升各行业数智化水平的企业全然拥抱了研发数字化,我们期待 C-Life 凭借着变革初心与极速交付能力,逐步成为智慧生活的强有力支撑平台。在这场数字化颠覆中,CODING 也会坚定地与研发团队站在一起,依托 DevOps、云原生、敏捷等研发利器,帮助各行各业改进、提升并创新。

CODING x 百果园,水果零售龙头迈出 DevOps 体系建设第一步 CODING 的“三步走”战略,全面助力百果园打造一体化研发管理体系 阅读详情

相关推荐

CODING 代码资产安全系列之 —— 构建全链路安全能力,守护代码资产安全

为代码资产管理者提供一个审视安全的基本框架

CODING 博客 3155

DevOps 的分与合

抽象的 DevOps DevOps 是使软件开发和 IT 团队之间的流程自动化的一组实践,以便他们可以更快,更可靠地构建,测试和发布软件。 DevOps的概念建立在建立团队之间协作文化的基础上,这些团队过去一直在相对孤岛中运作。 类似于这种的 DevOps 相关的描述听起来特别抽象,非常学术,非常教科书,让人感觉无法落地,不知道该如何入手。很多团队在了解 DevOps,实践 DevOps 的时...

CODING 博客 806

打造数字化软件工厂 —— 一站式 DevOps 平台全景解读

本文为 CODING 协同产品总监张路宇 在腾讯云 CIF 工程效能峰会上所做的分享。文末可前往峰会官网,观看回放并下载 PPT。 欢迎各位朋友,来到腾讯云 CIF 工程效能峰会的分论坛,我是 CODING 的产品经理路宇,很高兴能以这种方式与大家见面。在接下来的主题环节中,会由我先为大家带来 CODING DevOps 研发平台的产品理念和全景解读,我们还邀请了几位今年下半年的新产品负责人给大家带来关于项目协同、WePack、以及全新产品持续部署 Oribt 和研发流程管理 Compass 的分享 (.

CODING 博客 2698

真香!CODING DevOps “极速构建计划”,再也不用担心构建慢了!

前言 随着Web应用的发展,运行在浏览器端的Web应用能够承担更多且更复杂的业务交互需求,前后端分离模式得以流行,并催生了如 Vue 、 React 等单页应用框架。这些框架简化了开发流程,但对于Web应用的部署并没有统一的解决方案。许多项目团队中,前端开发者在提交代码后仍然需要人工通知项目经理、运维等相关同事进行手动或者繁琐的更新操作。而将持续集成的概念引入前端开发将是未来解决前端代码部署的可行...

CODING 博客 1084

OKR 八问 —— 关于 OKR 的常见问题与思考

写在前面 随着 OKR 在国外英特尔、谷歌等公司,国内字节跳动、华为等公司的成功实践,越来越多的企业意识到 OKR 对于组织发展的重要性,开始纷纷引入 OKR。引入 OKR 企业文化,一款强大的 OKR 工具必不可少,CODING OKR 可以为企业提供丰富的过程实践和协作提醒,提升员工敬业度并促进公司运营和产研运维一体化的成功。下文将以 CODING OKR 为例,阐述大多数企业在推行 OKR 时会遇到的问题以及一些思考。 网络上常见的 OKR 定义 1、OKR 与 KPI 的区别 OKR 的定位首先是

CODING 博客 2102

代码扫描 | 把控代码质量的利器

本文作者:潘金赤 —— CODING 产品总监 腾讯云研发平台负责人,十年研发能效建设经验 CODING 代码扫描产品负责人 有位小伙子在办公大楼门口抽烟,一位路人经过他的身边对他说:“你知不知道这个东西会危害你的健康?你有没有注意到香烟盒上的那个警告(Warning)?” 小伙子说:“没事儿,我是一个程序员。” 路人说:“这又怎样?” 程序员回答道:“我们从来不关心 Warning,只关心 Error。” 以笑开场,这是一篇写给极少使用/了解代码扫描工具的用户的“启蒙”读物。一方面因为代码扫描.

CODING 博客 2006

拥抱开源,共建生态 - 开源生态与效能提升专场 | CIF 精彩看点

随着软件技术日新月异的发展,GitHub 已经进化成为人类软件的基因库,遇到问题第一时间在 GitHub 上寻求合适的解决方案,已经逐渐变成工程师处理问题的常见方法。据 GitHub 年度报告显示,2020 年 GitHub 上已有超过 5600 万开发人员。虽然目前全球最大开发者来源由美国以 22.7% 的比例占据,但相比 2015 年的 30.4% 还是有所下降;而占比 9.76% 的中国与占比 5.2% 的印度正快速追赶,GitHub 预计 2030 年中国有望成为全球最大开发者来源。 可以看到,在

CODING 博客 1万+

CODING DevOps 助力中化信息打造新一代研效平台,驱动“线上中化”新未来

看传统化工龙头企业如何落地数字化转型战略

CODING 博客 1742

CODING 持续集成 | 自定义插件,满足你多样化的构建需求

企业级的应用构建对构建速度、代码质量、构建性能、流水线易用性及易维护性都有较高的要求,企业研发团队通常需要集成第三方系统工具或插件,不断提升整个构建过程中的效率、质量和体验。基于不同的管理及构建场景需求,每个团队对于插件的能力要求各异。 近期,CODING 持续集成在为用户提供了 10 余种常用的官方插件的基础上,推出了用户自定义插件能力,让团队内成员将得心应手的工具或命令封装成「自定义插件」,便于在构建流程中快速配置所需的插件能力,并支持在团队内共享,方便团队内其他成员快速复用。 自由定制 自定义插件不限

CODING 博客 780

迷雾中的自动化测试体系建设

曾经风风火火的“去测试化”风潮的回落,正说明了测试的角色不会消失,测试开发最终还是测试,只是让测试角色“回归”到工程师的本源。

CODING 博客 1565

CODING 携手 Thoughtworks 助力老百姓大药房打造”自治、自决、自动”的敏捷文化

老百姓大药房是中国具有影响力的药品零售连锁企业,中国药品零售企业综合竞争力百强冠军、中国服务业 500 强企业、湖南省百强企业。 自 2001 年创立以来,现已成功开发了湖南、 陕西、浙江、江苏等 **22 **个省级市场, 拥有门店 8000 多家,全国仓储面积超过 19 万平方米。 数字智联时代,如何更好地服务“老百姓”? 随着业务规模不断扩大,老百姓大药房累计会员逼近 6 千万大关,每年服务 1.25 亿忠实顾客。在数字化时代,尤其是全球疫情流行的大背景下,消费者对服务体验和质量提出了更高的要求.

CODING 博客 1287

DevOps 完整入门:瀑布、敏捷、CI/CD 核心概念通俗解析

敏捷开发(Agile Development) 的核心是*迭代开发*(Iterative Development) 与 *增量开发持续集成( Continuous integration , 简称 CI )指的是,频繁地(一天多次)将代码集成到主干。**持续集成的目的,就是让产品可以快速迭代,同时还能保持高质量。**它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。

weixin_63581562的博客 540

做云原生时代标准化工具,实现高效云上研发工作流

本文为 CODING 研发总监 王振威,在腾讯云 CIF 工程效能峰会上所做的分享。 文末可前往峰会官网,观看回放并下载 PPT。 大家好,我是王振威,CODING 研发总监。非常高兴能在这里给大家分享过去一段时间 CODING 的产品思考和升级,并为大家介绍 CODING 战略升级后的重磅新品。 首先,我们来看一下 CODING 的全景产品矩阵。这里标识出了过去一年里, CODING 做出的重要产品更新,其中有大量产品是全新推出的,也对一些现存的产品进行了升级,这张图几乎囊括了 CODING 现存的所.

CODING 博客 1181

DevOps进阶

SonarQube 是开源代码质量管理平台,,支持 30+ 语言,对接 CI/CD 流水线提交即扫描。

fengkai4545的博客 133

持续测试 | 让测试更自由:在 CODING 中实践自动化执行用例

本文作者:程胜聪 - CODING 产品经理 自动化测试是持续测试的基础 在 DevOps 的高频交付场景下,团队容易陷入在速度和质量之间“二选一”的困境:为了拥抱需求变更,采用较短的交付周期,然后变更频繁导致问题变多,于是开发提测延迟,最后导致测试时间被压缩、难以进行充分的测试。面对这样的情况,团队该如何提升测试的执行效率呢?大家第一个会想到的应该就是自动化测试——通过自动化测试来替代重复性的手工测试,执行更快从而节省测试时间。此外,由于自动化每次执行时间相对固定,而且程序预设的测试行为带来了高一致性.

CODING 博客 888

使用 Nocalhost 开发 Kubernetes 中的 APISIX Ingress Controller

体验 Nocalhost 带来的云原生开发全新方式

CODING 博客 814

DevOps进阶-下篇-Harbor私有仓库与自动化部署

环节现在的状态问题代码GitLab 托管,Tag 管版本✅ 没问题构建Jenkins 跑 Maven,产出 jar✅ 没问题质量SonarQube 扫描 + 门禁✅ 没问题制品jar 直接 SCP 到服务器,服务器上❌这里全是洞部署服务器本地重建容器❌ 无版本、无回滚、无审计镜像没有统一存放地。每台机器自己build,同一个 tag 在不同机器上可能是不同的东西——"环境一致性"直接破功;无法回滚。jar 覆盖了就没了,出事想退回上一版?

weixin_45488455的博客 350

Nocalhost —— 让云原生开发回归原始而又简单

本文为 CODING Nocalhost 研发负责人王炜在腾讯云 CIF 工程效能峰会上所做的分享。文末可前往峰会官网,观看回放并下载 PPT。 大家好,欢迎参加 CIF 大会,今天我跟大家分享的内容是:破解 Kubernetes 应用开发困局。首先做个简单的自我介绍,我是来自腾讯云 CODING DevOps 的王炜,目前是 Nocalhost 项目研发负责人,同时也是 CNCF 大使。话不多说,让我们进入正题。 这次分享主要分为五个方面: 首先是 K8s 环境下的开发困局; 以及主流的云原生开发方.

CODING 博客 776
上一篇: CODING 联合 TKE,让应用发布更便捷
下一篇: Git 代码回滚与找回的艺术
腾云 CODING
博客等级 码龄8年 203粉丝 260原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值