新闻动态
嵌入式DevOps—在智能物联网开发中使用CI/CD


Michel Genard

DevOps做为新一代持续集成/持续开发(CI/CD)方法正被快速引入企业软件开发中,同时逐渐走入嵌入式世界。

当今市场需要更智能的系统以及更快的开发周期,因此对嵌入式系统提供商来说,采用更有效的开发方法势在必行。这是因为,即便你拥有无限的预算,也不一定有足够的合格工程师来完成工作。也就是说,使用传统的嵌入式开发方法已不能满足有效性的要求

让我们来了解一下风河的解决方案集是如何帮助企业高效率地完成嵌入式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和CI/CD流程,才能发挥其应有的作用。

在嵌入式DevOps中将会遇到的挑战

嵌入式DevOps越来越受系统制造商的欢迎。虽然这些高层次的方法可以加快产品上市时间、改善团队协作,而且有助于创建更好的产品,但在此过程中必须克服各种挑战,才能取得成功。具体来说,实现DevOps愿景会面临的挑战体现在一下几个方面:

  • 企业文化:嵌入式DevOps需要多个团队协作。这种协作不能仅仅停留在口头上,而是必须有效地转换管理流程和技术堆栈。
  • 确保安全性:更敏捷的方法意味着迭代节奏的频度加快,使得应用软件的安全性遭遇更大的挑战。因为,版本发布的越多,可能受到攻击的层面越多、风险也越高。因此,在整个嵌入式开发过程中满足安全性要求就必须得到保障。
  • 工具集兼容性:DevOps流程在嵌入式开发中相对较新。许多企业还在使用传统的“瀑布式”软件开发方法和工具。因此必须透过新的工具集来推动嵌入式DevOps和CI/CD流程。
  • 硬件取得时间:传统的开发方法中,代码编写与特定的目标硬件密切相关。随着生产周期的缩短,几乎很难及时取得物理硬件。团队需要在不依赖物理硬件的情况下进行开发和测试。

在嵌入式DevOps中应用风河工具集实现敏捷开发

风河的工具集可以帮助企业把DevOps和CI/CD成功地应用于嵌入式系统。其中:

  • Wind River Linux和VxWorks包含了开发测试工具集,覆盖从原型到生产的全过程,支持嵌入式快速开发,并满足安全性需求。
  • Helix Platform和Cloud Platform简化了代码部署。Helix Platform支持边缘设备上的单计算系统,以便实现应用集成,而Cloud Platform是一个支持5G的产品级Kubernetes解决方案。
  • Simics消除了开发过程对物理硬件的依赖。而且,从最简单的硬件到最复杂的互连系统它都能进行模拟,从而可以改善协作并加速开发人员、QA和Ops团队的工作进程。

不要因为开发人员方面的限制而阻碍您拥抱嵌入式DevOps解决方案的未来前景。风河产品集为嵌入式团队提供了系统和工具,可以帮助企业引入DevOps流程,支持嵌入式系统开发的特定需求。企业也不会再因开发人员不足而受到局限。携手智能边缘软件领先提供商风河公司,您将成功走向嵌入式DevOps的未来。

如欲进一步了解这些解决方案如何克服有关CI/CD的挑战,请下载我们的最新电子书——《在嵌入式系统中实现DevOps愿景》

更多相关内容请访问我们的全系统模拟器——风河SIMICS 中文专题网站了解更多。