一文带你了解什么是GitOps
摘要:说起GitOps,可能很多朋友马上会联想到DevOps,那么GitOps和DevOps之间有什么关系、又有什么区别呢?
本文分享自华为云社区《浅谈GitOps》,作者: 敏捷的小智。
GitOps与DevOps
说起GitOps,可能很多朋友马上会联想到DevOps,那么GitOps和DevOps之间有什么关系、又有什么区别呢?
DevOps是一种文化
DevOps包含了Development和Operations两个部分,是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
如今很多团队当中都在践行着DevOps文化,其中核心的一条理念就是“自动化一切可自动化的”。而GitOps,也正是基于这种理念下而诞生的一种持续交付方式。
GitOps是一种持续交付方式
GitOps核心思想是将应用系统的声明性基础架构和应用程序存放在Git版本库中。
将Git作为交付流水线的核心,每个开发人员都可以提交拉取请求(Pull Request)并使用Git来加速和简化应用程序部署和运维任务。通过使用Git,开发人员可以更高效地将注意力集中在创建新功能而不是运维相关任务上(例如,应用系统安装、配置、迁移等)。
同时,GitOps还是一整套CI/CD流水线方案。
在GitOps中可以自由地为流水线的不同部分选择最佳工具。可以从开源生态系统中选择一组工具,也可以从封闭源中选择一组工具,或者根据使用情况,甚至可以将它们组合在一起。
不过目前业界已经有了不少端到端的DevOps平台,华为云DevCloud就可以一站式端到端地覆盖CI/CD全流程。让开发者不必再纠结于如何选择流水线中的不同部分。从项目管理、代码开发,到编译构建、部署发布、测试运维,软件开发的全生命周期都可以在华为云DevCloud上完成。
当然,也可以只使用华为云DevCloud中的个别服务与已有流水线进行拼接,搭建成新的CI/CD流水线。例如,在DevCloud中可以由代码托管服务CodeHub来作为本期主题GitOps中的Git仓库。
GitOps 流水线
GitOps 基于拉模式构建交付流水线。在DevCloud中以GitOps的方式搭建的交付流水线,流程如下:
1、 源码存储于CodeHub,开发人员推送提交包含新功能的代码到代码仓库的对应分支中;代码审核通过后将被合并至对应分支。
2、 合并请求通过后会触发构建(CloudBuild)并进行测试,构建好的镜像将被推送至镜像仓库SWR中。
3、 GitOps检测到有新的镜像,会提取最新的镜像标记,然后同步到 Git 配置仓库(Config)的清单中。
4、 GitOps检测到集群状态过期,会从配置仓库(Config)中拉取更新后的清单,并将包含新功能的镜像通过CloudDeploy部署到集群(CCE)里。
对于不同环境而言,可以在Config仓中创建多个子目录或者子分支管理不同环境对应的多个集群,从而实现多环境的GitOps。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
最新版:Apache Pulsar 针对 Log4j 漏洞解决方案
作者:Matteo Merli,StreamNative CTO,Apache Pulsar PMC 主席;Addison Higham,StreamNative 主管工程师,Apache Pulsar Committer。 本文译自 StreamNative 英文博客,原文链接:https://streamnative.io/blog/engineering/log4-mitigation-en/,更多详情请参考 StreamNative 公众号。 此文于本周二更新,详细添加了最新的 Log4j 漏洞如何影响其他 Pulsar 生态系统工具的详细信息。 上周末,Apache 开源项目 Log4j 2.16.0 被曝出新的漏洞,Log4j 紧急发布 2.17.0 版本。本文为大家提供最新版Apache Pulsar 有关 Log4Shell 关键漏洞(即 log4j)的更新。以下列举了开源版本 Apache Pulsar 中漏洞的状态,以及需要解决安全漏洞所需采取的措施。 漏洞影响与项目状态更新 目前总共发现了三个影响 log4j 的 CVE。在这三个漏洞中,默认情况下只有两个影响 A...
- 下一篇
SOFAStack 背后的实践和思考|新一代分布式云 PaaS 平台,打造企业上云新体验
近几年云计算的发展如火箭般迅猛,异构变革日新月异,这是基础设施层明确的发展趋势。值得关注的是,随着基础设施的复杂度越来越高,也为整个基础设施的统一资源调度带来了极大挑战。 在越来越复杂的异构基础设施上,存量应用和增量应用应该如何上云?面对大量异构基础设施带来的挑战,企业如何最大化上云价值? 12 月 15 日,在以“引领分布式云变革,助力湾区数字经济”为主题的全球分布式云大会上,蚂蚁集团数字科技事业部产品总监马振雄分享了分布式云异构基础设施之上,蚂蚁集团在构建分布式云 PaaS 平台 SOFAStack 背后的实践和思考。 PART. 1 服务网格定义新的应用上云路径 随着云原生的发展,企业在技术升级的过程中伴随着大量的历史包袱,这些历史包袱是所有存量的异构功能,这些异构功能有以下几个特征:技术架构异构、通信协议异构、开发框架异构。 这些存量的应用如何在异构的基础设施上统一纳管,背后就涉及到了应用的全生命周期,从研发时的应用改造成本,到运行时如何对异构应用做统一服务治理,再到运维时如何对基础设施进行统一元数据管理、统一变更、统一容灾、统一应急以及资金安全,这些都是存在于 PaaS 层的...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果