嵌入式DevOps:在嵌入式开发中实现CI/CD
由米歇尔Genard
DevOps和其他现代持续集成/持续开发(CI/CD)实践正在企业软件开发中迅速被采用,并正在向嵌入式世界进军。
市场对更复杂的系统和更快的开发周期的需求意味着采用更有效的开发方法正迅速成为嵌入式系统公司的绝对必要。即使你有无限的预算,也没有足够的合格工程师来完成工作。使用传统的嵌入式开发方法不会带来采用更有效的方法所带来的收益。
组织需要能够支持嵌入式DevOps流程实现的解决方案。探索风河公司的解决方案组合是如何使之成为可能的。
市场需求需要更快的开发周期,进一步需要实现嵌入式Devops方法。
快速回顾:什么是嵌入式DevOps?
DevOps是一种方法,它是软件开发、IT、运营和质量保证(QA)的巅峰。这组合过程已经演变满足组织对更快开发周期的需求。
1.传统的开发:传统的开发竖井包含在嵌入式DevOps中的三个过程。让独立的团队编写、安排和测试代码在“瀑布式”软件开发方法中工作得很好,但是太慢了,无法满足当今市场的需求。
2.敏捷方法:这些方法为嵌入式DevOps提供了一种新方法,使以更快的速度发布新代码成为可能。这是将这些不同的过程和团队组合到“DevOps”术语下的第一步。
3.持续集成/持续部署(CI/CD):DevOps方法的这种迭代是随着团队开始以前所未有的速度推出新代码而开发的。对每个迭代都进行卸载/重新安装是不现实的。使用CI/CD方法可以将代码放入生产环境中,而不需要停止任何功能。
4.完全集成DevSecOps:随着开发团队越来越忙,新代码也经常发布,安全性风险也随之增加。DevOps现在的任务是将安全性作为团队工作流程的一部分。
嵌入式DevOps流程不断发展,因为团队必须满足安全需求,并在最短的停机时间内定期部署代码。
结合嵌入式DevOps和CI/CD
想要保持竞争力的组织必须有效地实施DevOps和CI/CD流程。尽管这些方法在技术上是独立的,但是为了组织的成功,它们必须被集成,并在整个过程中得到不同工具集的支持。
当新代码在工作流中移动时,团队必须实时协作。团队使用的开发工具和云平台必须支持这些方法才能使它们有效。
嵌入式DevOps的挑战
嵌入式DevOps对嵌入式系统制造商来说越来越流行。虽然这些先进的流程加快了上市时间,改善了协作,并帮助创建更好的产品,但许多组织必须克服各种各样的挑战才能成功实现。
DevOps愿景的障碍:
·公司文化:嵌入式DevOps需要许多团队的协调。组织不能只是说他们想要实施这些新方法;他们必须有效地转换他们的管理过程和技术堆栈。
·确保安全:应用程序安全性可能具有挑战性,并可能阻碍更敏捷方法的实现。最终,更多的释放意味着更大的攻击表面积和更大的风险。必须在整个嵌入式开发过程中满足安全性需求。
·工具集的兼容性:DevOps进程在嵌入式世界中仍然相对较新。许多组织仍然在使用为支持传统瀑布方法而设计的工具。必须实现新的工具集来驱动嵌入式DevOps和CI/CD进程。
·硬件访问:传统的开发将代码创建与特定的目标硬件绑定在一起。随着生产周期的缩短,几乎不可能按照要求快速提供物理硬件。团队需要在不依赖物理硬件的情况下进行开发和测试。
利用Wind River在嵌入式DevOps中实现敏捷实践
Wind River的工具组合使DevOps和CI/CD能够应用于嵌入式系统。该作品集遵循已建立的DevOps和CI/CD工作流:
·风河系统公司Linux&VxWorks包括开发测试工具集,可以从原型到生产,包括满足安全要求。
·螺旋平台&云平台简化代码的部署。螺旋平台支持边缘设备上的单计算系统,用于应用整合,云平台是Kubernetes的生产级解决方案,旨在支持5G。
·西米奇消除对物理硬件的需要。它可以模拟从最简单的到最复杂的互联系统的任何东西,以改进协作并加速开发人员、QA和Ops团队的过程。
不要让人员限制阻碍你实现支持嵌入式DevOps未来的解决方案。
Wind River组合提供嵌入式团队系统和工具,方便DevOps支持嵌入式系统开发的特定需求。组织不再需要因为人员限制而受到限制。随着风河(Wind River)进入嵌入式DevOps的未来,风河是提供智能优势软件的领导者。