发布时间:2020年07月14日
DevSecOps:开启“即代码”思维方式
快速高效、保证应用稳定性的持续交付对企业等组织而言尤为重要。这就要提到DevOps——该系统整合开发和运营为一体,加强协作,使各团队之间不再孤立。
DevOps包含持续反馈机制,可在自动化的支持下进行持续改进。安全性解决方案加入之后,便有了“DevSecOps”这一概念,涵盖应用开发中的速度、质量和安全性。
DevSecOps“即代码”的思维方式
为保证管理方便并推进自动化,我们提倡“DevOps即代码”的思维方式,把持续集成和基础架构管理作为重点,以便使组件更易于维护,并为基础架构部署的管理提供便利。
让我们举个例子:在持续集成/持续开发(CI / CD)的情况下,“即代码”的思维方式能够使开发储备管道的定义、追踪和变更比以往更轻松。例如,使用Jenkinsfile的Jenkins开发管道实施时,开发团队可以像其他任何代码开发流程一样,设计、管理批准机制。这样更有利于变更管理和审核。可以跟踪变更的历史记录,并且当配置出错时,开发人员将可以轻松地回滚到以前的配置,而无需继续备份整个Jenkins作业配置。
在基础架构即代码的方式下,团队可以轻松替换整个环境,同时还能确保所有配置都是一致的。例如,在基于云的环境中,脚本可定义从虚拟机到防火墙规则以及网络布局的所有内容,并确保每次脚本运行时每个组件都具有相同的配置。
以“DevSecOps即代码”的思维方式来考虑问题,可以轻松管理应用开发环境,推进自动化部署;同时还能让所有组件都更具可维护性,也为基础架构模型的全面治理提供了解决方案。
工作站即代码
“即代码”的思维方式也可以应用于工作站的设置中。
开发应用和维护基础架构的系统和软件工程师在设置复杂的工作站时面临着持续的挑战。一般来说,刚加入开发团队的新成员会收到一些文档,其中包含了有关如何设置计算机的说明,通常涉及到安装不同的工具集,集成开发环境(IDE)和设置环境变量等,这些任务可能需要同事的帮助,往往需要一整天才能完成。
现有的团队成员需要更换笔记本电脑时,或者一位培训师需要为应用培训设置环境时,也需要再经历一遍如此繁冗的流程。这些都是可以用“即代码”的思维方式对工作站进行自动化设置的潜在用例。
例如,编写Windows环境设置脚本将带来以下优势:
安全性增强:
开发人员有可能会在没有验证下载内容或下载网站的真实性的情况下下载了错误的软件进行安装。只要在配置中设置“从受信任的库下载”,就可以确保员工始终能够下载正确、合法的软件,因此,“即代码”的方式可以消除这一类的风险。
速度:
通过自动从受信任的库中检索可执行文件,提高了部署和设置的速度。
版本管理得以提升:
可以轻松管理版本更新,并扩散到整个组织中。
成功设置:
由于软件的版本和配置会根据脚本安装运行,因此安装程序失败的可能性较小。
由此可见,“即代码”的工作方式将大大减少设置环境和工作站所需的工作量,使团队能够更快地实现价值,并为组织提供更大的灵活性和敏捷性。