GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab :gitlab.cn 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。
更多关于极狐GitLab :gitlab.cn 或者 DevOps 的最佳实践,可以关注文末的极狐GitLab 公众号。
学习极狐GitLab 的相关资料:
平台工程和 DevOps 一起工作来提高工作效率和生产力。而不是其中一个替代另外一个。
当谈及到平台工程和 DevOps 的时候,它们并不是一个或的关系或者解决方案。
更具体一点说,平台工程和 DevOps 并不是同一回事。对于这两种实践存在一些困惑。其中一个会替代另外一个吗?不。他们能一起愉快的玩耍吗?绝对的!!!!
下面我们看看到底什么是平台工程以及它是如何与 DevOps 亲密玩耍的。
DevOps 和平台工程师:区别和收益
你可能对 DevOps 已经非常熟悉了。它是一种方法、流程和工具的集合,将研发和运维人员有效地结合起来来提高软件研发的效率、速度以及安全性。DevOps 的工作可以在一个单一的端到端平台上高效进行,此平台允许团队将通常复杂且令人困惑的众多工具整合到一个完整的软件开发生态系统中。
另一方面,平台工程是一种新兴的软件研发方法,它通过为 DevOps 团队提供单一的工具和工作流程自助服务门户来加快生产和部署速度。通过改善研发人员的日常体验,平台功能提高了团队的效能、减轻了研发人员的认知负担以及让软件交付变得更大规模、更快以及更具可重复性。
DevOps 和平台工程听起来很相似。它们有着相同的目标。但是这么来思考:DevOps 或者一个 DevOps 平台,可以作为平台工程的一个框架。平台工程是优化或增强 DevOps 平台的一种方法。
为什么 DevOps 和平台工程能够很好的一起协作
组织通常在其软件研发团队已经在实践 DevOps 之后再采用平台工程。那是因为通过使用一个已经内置了很多自动化的工具的 DevOps 平台,平台工程师不必集成工具并为他们的流程和方法构建自己的平台来工作。他们只需要对端到端的工具做进一步的优化就行,这能够节省大量的时间和劳动力。
随着 DevOps 的增长,随着 DevOps 的发展,对平台工程师的需求越来越大,平台工程师是各种职位列表中的前沿角色。一个平台工程师或者一个团队,是 DevOps 团队的一个扩展或延伸,针对特定组织的特定开发、安全性和合规性需求定制 DevOps 平台。企业正在招募具备多种技能的平台工程师------ 从自动化能力到用基础设施即代码、云部署、Kubernetes 以及安全编码实践等。
"使用一个 DevOps 平台是平台工程的完美起点," 极狐GitLab 架构师说到。"因为它们都是聚焦在改善研发流程和研发体验上。他们是一起协作的关系。"
平台工程师如何优化 DevOps 平台
平台工程师聚焦在创造效率和优化上。也就是说平台团队能够帮助业务更好的服务客户,保持对于竞争对手的领先以及避免高昂的成本以及具备伤害性的安全事故。
为了帮助组织充分利用 DevOps 平台,平台工程师可以:
在 DevOps 平台中使用及定制化监控工具来发现什么时候有瓶颈点,具体的原因是什么,然后去修复这些问题。
确保团队不会忽略工具的使用,比如漏洞扫描和访问管理,在平台中这些都将帮助改进工作流。
在平台中定制化工具,比如针对 CI 进行微调的自动化脚本,以满足组织的特定需求。
创建一个最佳实践列表以确保它们都能被遵守。
设置且定制化平台模版以标准化流水线,这样研发人员就不必每次都从头开始创建流水线。
建立流水线效率,例如与组织基础设施或特定应用程序相关的自定义代码。
配置安全和合规策略以确保扫描在开发过程中的特定时间或点运行,或者由某些事件触发,例如针对分支运行的流水线。
建立监管执行的平衡机制。
设置常规的安全审计。
平台工程师如何帮助 DevOps 团队
通过设立明确的步骤和指南,以及提高软件开发生命周期的效率,平台工程师可以对 DevOps 流程以及团队产生巨大影响。
带来的收益有:
通过简化工作流来提高研发效率。
通过给团队成员更多的时间和精力来一起工作来改善协作。
使构建安全软件更加高效和一致。
通过建立培训、政策和平衡来简化监管合规性。
通过使用自动化工具减少重复性的动手工作,减少团队成员的认知负担
通过自动化最大限度地减少人为错误
通过减少手动工作来让研发人员变得开心,让他们有更多的时间和精力去做创造性、挑战性的工作。
"平台工程就是为研发赋能的",极狐GitLab 安全工程师经常说。"这是通过确保团队使用所有可用的工具并充分利用它们来增强 DevOps 平台已经提供的功能。它实际上是让人们致力于让开发人员的工作变得更轻松。"