写点什么

极狐 GitLab 探秘系列|极狐 GitLab 初探 (下)

用户头像
极狐GitLab
关注
发布于: 12 小时前
极狐 GitLab 探秘系列|极狐 GitLab 初探(下)

我们在上期《极狐 GitLab 探秘系列(上)》中重点讨论了极狐 GitLab 的敏捷开发管理、代码托管、CI/CD 几大解决方案,除此之外,极狐 GitLab 还有哪些关键的解决方案?一体化 DevOps 平台究竟有什么好处?本期《极狐 GitLab 探秘系列(下)》,为你详细解答!



极狐 GitLab 揭秘

(5) DevSecOps

安全永远是一个很重要的话题,以往的瀑布式开发中,安全是被滞后的(在测试甚至更靠后的阶段),留给安全的时间是相对比较充裕的;随着项目开发的敏捷化,早发布、快发布已经成为了主旋律,在这种情况下,安全需要被提前,也就是常说的安全左移(Security Shift Left),左移至编码,甚至计划阶段,并且对于安全测试也要做到自动化。


测试领域有一个原理:在需求阶段发现并修复一个缺陷或问题如果如需要花费一美分,那么在开发阶段修复同样的问题则需要花费十美分;在测试阶段话花费一美元,在生产环境则需要十美元。


基于此,极狐 GitLab 提供了覆盖软件开发生命周的 DevSecOps 解决方案。包含但不仅限于下述的内容:


  • 敏感信息扫描:很多时候,开发人员为了方便本地调试代码,会将数据库用户名密码、API token 等敏感信息做一些硬编码(Hard Code)。此类代码提交后,就造成了敏感信息泄漏,存在系统被黑客攻击的重大风险。极狐 GitLab 针对这种情况,会有一个敏感信息扫描机制,及时发现代码仓库中的敏感信息,并将结果进行展示、告警,通知相关人员及时快速处理。

  • 镜像扫描:如果说容器是云原生时代的一大核心,那么镜像就是容器的灵魂。保证镜像的安全,及时发现镜像存在的漏洞,会在很大程度上保证应用程序的安全。极狐 GitLab 的容器镜像仓库自带镜像扫描机制,能在第一时间对推送的镜像进行扫描并给出相应的报告。

  • 安全测试:极狐 GitLab 提供常用的安全测试,诸如 SAST(Static Application Security Testing)、DAST(Dynamic Application Security Testing) 来对源码及应用进行安全测试。通过分析代码找出已知安全漏洞,出具漏洞报告。

  • Web API 模糊测试:极狐 GitLab 通过向 API 来发送随机的输入来触发例外或者系统崩溃,从而发现系统存在的缺陷或者漏洞。此项功能是基于极狐 GitLab 的自有技术,当然我们推荐和其他扫描手段或工具一起使用来保证应用的安全和质量。

  • 依赖分析与扫描:通过分析依赖关系中的漏洞来对应用程序的安全性进行评估。

  • license 扫描:企业对于开源的使用率在逐年上升(有数据显示,企业的开源采用率甚至达到 80% 以上)。开源的使用能够加速企业创新,但是使用开源必须要遵从开源合规。基于此,极狐 GitLab 会对项目中包含的相关 license 进行合规扫描,并出具 license 合规报告。

  • 漏洞管理与分析:针对扫描出来的漏洞能够输出详细的文档,诸如漏洞影响、漏洞修复步骤等,可以帮助用户快速修复漏洞并进行追踪。

(6) GitOps

云原生是时下非常火热的一个词语,其目的是充分利用云平台的红利,但是云原生应用的管理始终是一个复杂的问题。GitOps 提供了一种云原生应用管理的新模式:以声明式系统(如 Kubernetes)为基座,以 Git (极狐 GitLab 、GitHub 等)为单一可信源来帮助开发、运维人员方便有效的管理云原生应用。

为了更好的推动 GitOps 的发展,极狐 GitLab 联合中国信息通信研究院、云原生计算基金会(CNCF)共同发起了“开源 GitOps 产业联盟”(Open GitOps Industry Alliance,简称 OGA 联盟)。更多关于 OGA 的信息可以查看新闻速递 | 极狐(GitLab)携手CNCF成立“开源GitOps产业联盟” 推动中国开源生态发展

(7) 度量

没有度量就没有进步。度量是 DevOps 中非常重要的一环(DevOps 的 CALMS 模型中的 M 就代表度量(Measurement))。极狐 GitLab 提供了四个关键指标来对 DevOps 做出度量,分别是:


  • 前置时间:开始编码到部署所耗费的时间。如果变更前置时间过长,可能意味着开发或部署过程的某些环节出现了问题或阻碍。

  • 部署频率:吐吞量的另一种度量方式,更频繁的部署往往意味着单次部署包含的变更更少,但对于某个特性来说,可以更快地获得产生价值,获得实际反馈。

  • 变更失败率:发生变更后出现故障的几率。如果变更失败率居高不下,可能意味着在过程或工程实践中出现了某些问题或阻碍。

  • 服务恢复时长:当服务中断或降级后,需要花费多少时间将服务恢复正常。每次部署包含的变更多寡、技术债务积累程度对该指标有一定影响。


当然,除此以外,极狐 GitLab 还有针对系统的总用户 、研发项目、流水线、合并请求等的众多内置度量分析。分析的结果均以可视化的方式呈现。

(8) 日志和监控

日志和监控其实是伴随软件开发的整个生命周期的,极狐 GitLab 提供的日志和监控系统能够为开发、测试、运维等人员提供关于应用程序的详细情况,方便人们随时掌握应用程序的状况。

当然,极狐 GitLab 还有其他关于安全方面的功能,也敬请期待我们后续文章文档对此类内容详细的讲解。


一体化 DevOps 平台的好处

(1) 提升开发体验

这一点就像大家去大型商场一样,购物、娱乐、餐饮应有尽有,消费者不用出商场就能满足一切需求,省去了大家在不同地点来回折腾的烦恼。极狐 GitLab 的一体化 DevOps 平台满足了用户的所有需求,用户只需要在这一个平台就能完成所有操作,不用在构建时切到构建工具的地址,镜像扫描切到镜像系统(上云的用户一般采用云厂商的镜像仓储系统,还需要登陆云厂商的系统去查看镜像信息)的地址,更不用说加入安全扫描等操作。这种情况增加了开发人员的工作负担,他们不仅需要记录这些地址,还需要对所有的系统或者工具有所了解,如果系统或者工具发生变更,重复的操作还要再来一遍。对于开发人员来说,能在极狐 GitLab 上完成开发所需的所有内容,开发体验提升了,效率自然而然也就提高了(使用自己熟悉而且喜欢的工具,工作起来总是很舒服)。



(2) 合规审计变得容易

极狐 GitLab 将作为所有操作(代码变更、镜像构建、安全测试等)的统一入口,相关的操作都会有相应的记录,可以看到哪些人员在哪些时候对哪些项目做了哪些操作,一目了然,所见即所得。这就让合规审计变得简单。

(3) 提高安全性

当使用多种工具来完成软件开发时,针对每个用户都需要对不同工具做权限管理,尤其当我们选择一些自身并不带权限管理的工具时,权限管理就变成了一个比较头疼的事情。而极狐 GitLab 是一个一体化,它会作为相关人员权限管理(鉴权/授权,Authentication / Authorization)的唯一入口,能够对相应人员做到细粒度的权限管理。安全性就得到了一定程度的提高。


而这一切都来源于极狐 GitLab 的三个一(一个界面、一个用户模型、一个数据模型)


  • 一个界面:平台对使用用户提供了统一的交互界面,增强工具整体的使用效率的同时提升用户体验。区别于由多种工具拼接的 DevOps 工具链,因多界面登录和切换情况带来的低效使用方式;

  • 一个用户模型:平台的权限管理采用统一的用户认证和授权模型,实现一套用户体系统一管理平台中多个功能领域的特性,提升平台安全性的同时降低用户管理成本。区别多种工具拼接的 DevOps 工具链,用户和权限管理分散在各系统中,需要投入成本进行集成或二次开发才能勉强达到统一的权限管理模式;

  • 一个数据模型:平台内数据的统一采集、存储、分析和展现能力,支撑用户进行 DevOps 端到端全过程研发效能和安全合规的可视化与高效管理。区别于多种工具拼接起来的 DevOps 工具链,数据散落在各工具中形成孤岛,需要投入很大的成本甚至根本无法实现数据的统一管理。


写在最后

来来来,敲黑板总结一下我们的极狐 GitLab 之初探秘:

•  极狐 GitLab 不仅仅是一个代码托管平台

•  极狐 GitLab 是一个一体化的 DevOps 平台

•  极狐 GitLab 是开源的,坚持开源开放,人人贡献;开源开放,人人布道;开源开放,人人有利


如果你喜欢小马哥的文章,敬请期待后续更多的探秘文章,我们将逐一揭秘上述功能是如何具体实践的。

用户头像

极狐GitLab

关注

开源开放,人人贡献 2021.05.19 加入

开放式一体化DevOps平台,助力行业高速协同增长!

评论

发布
暂无评论
极狐 GitLab 探秘系列|极狐 GitLab 初探(下)