谷歌、红帽、IBM等8家共同开源Grafeas API,化解软件供应链的难题!
谷歌公司正联合一大批大大小小的科技公司,着力化解软件供应链治理和审计方面的部分难题。
这个互联网巨头的一长串盟友名单包括:JFrog Ltd.、Red Hat Inc.、IBM Corp.、Black Duck Software Inc.、Twistlock Ltd.、Aqua Security Software Ltd.和CoreOS Inc.。它们都携起手来,打造一种名为Grafeas(http://grafeas.io/)的新型应用编程接口(API)。这是一个开源项目,旨在为现代软件供应链的审计和治理定义统一的方式。”
这个新项目适逢这样一个时期:现代DevOps技术/方法正迅速改进公司构建和部署软件的方式。如今,许多公司日益使用微服务来构建应用程序,微服务器是一种软件架构方法,它将应用程序细分成更小的组件,从而能够提高敏捷性。这更高的敏捷性意味着,新型的“持续更新”(每天可以更新好几次)取代了每季度更新的旧方法。这些全新类型的应用程序还在一种新型的架构:软件容器上构建,那样应用程序不用改变,就可以在不同的计算机环境下运行,进一步加快了速度。
谷歌在今天宣布Grafeas的博文中声称,简而言之,软件开发正变得更快速、更分布式、更动态,这给需要了解并控制软件供应链的公司企业带来了重大影响。
这种新型软件开发方法存在的问题是,公司要知道谁构建了什么软件、在哪里构建。它们还要知道软件是否符合自己的流程和规定,是否易受攻击还是安全。它们还要明白眼下什么应用程序在运行、它们在哪里运行,另外还要保持控制性。
这就是开发Grafeas的初衷。该软件旨在为关键的元数据提供一个中心结构化知识库,治理软件供应链需要这些元数据。
开发者平台产品经理斯蒂芬•埃利奥特(Stephen Elliott)和容器安全产品经理郭佳宁(Jianing Guo)在谷歌的博客上撰文:“Grafeas为企业组织提供了一个中心真相来源,可以跨越来越多的软件开发团队和管道跟踪和执行策略。构建、审计和合规工具可使用Grafeas API来存储、查询和检索各种软件组件方面的综合元数据。”
下面这个图更清楚地显示了Grafeas的实际功能。正如埃利奥特和郭特别指出,在软件供应链的每一个阶段:包括编程、构建、测试、部署和运维,元数据由各个工具和软件程序生成。该元数据可能指开发人员的姓名、签入代码的日期、发现的安全漏洞、通过和未通过的测试等等。Grafeas的任务就是记录下所有这些元数据,并且让用户易于访问它们,从而让用户更清楚地了解整个软件供应链的情况。
除了Grafeas外,上述这些公司还开发了旨在与它配套使用的第二个工具:Kritis。它们称,Kritis是一种“Kubernetes策略引擎”,旨在帮助执行运用于软件供应链的策略。借助Kritis,用户可以将软件部署到Kubernetes容器集群时,根据存储在Grafeas中的策略,实时执行容器的属性。
Constellation研究公司的副总裁兼首席分析师霍尔格•米勒(HolgerMueller)表示,宣布这两款工具表明了整个Kubernetes生态系统成熟起来的速度有多快。
米勒说:“我们看到了Kubernetes的下一个发展阶段,即围绕部署和规模来构建项目。很高兴看到这个理念普遍出现于技术供应商和企业,因为这带来了级别更高的验证和信心,表明这些会是成功的项目。”
Grafeas和Kritis都采用开源许可证来发布,现在可通过GitHub(https://github.com/grafeas)来下载。