开源和云原生技术如何实现 API 战略现代化

借助来自开源堆栈和 DevOps 工具到 AI 的新技术,通用的保护和管理层是 API 管理层。
3 位读者喜欢这篇文章。
A person holding on to clouds that look like balloons

Opensource.com

最近,我有机会在不同的活动中就最新的开源软件和云原生技术的 API 战略主题发表演讲,这些会议效果很好,并收到了积极的反馈。与我通常的做法不同,这次我先整理了幻灯片,然后再写文章。好消息是,通过这种方法,我在开始写作之前就从之前的讨论和反馈中受益。这个主题的独特之处在于,它不是从通常的 API 战略谈话要点来讨论的,而是从讨论最新技术以及开源软件和云原生应用程序的增长如何塑造 API 战略的角度来讨论的。

我将首先讨论创新。所有最新的软件创新要么是开源软件,要么是基于开源软件的。增强现实、虚拟现实、自动驾驶汽车、人工智能 (AI)、机器学习 (ML)、深度学习 (DL)、区块链等等,都是使用开源软件构建的技术,这些技术使用并集成了数百万个 API。

今天的软件开发涉及 API 的创建和使用。一切都通过 API 连接,在某些组织中,甚至存在 API 蔓延,指的是在没有控制或标准化的情况下广泛创建 API。

技术堆栈和云原生应用程序

在现代软件开发中,存在堆栈的概念。开发人员和组织有如此多的选择,他们可以挑选和选择技术组合来创建自己的堆栈,然后培训或雇用所谓的全栈开发人员来处理这些堆栈。堆栈的一个例子主要包括开源软件,例如 Linux、编程语言、数据库、流技术、运行时和 DevOps 工具,所有这些都使用并集成了 API。

从技术堆栈来看,有云原生应用程序,指的是基于容器的应用程序。今天,所有技术领域都有许多云原生选项;云原生云计算基金会景观是可用云原生生态系统的一个示例。

当组织从少量容器中的应用程序转移到数十甚至数百个容器中的应用程序时,他们需要帮助来管理和编排所有这些基础设施。这就是 Kubernetes 发挥作用的地方。Kubernetes 已成为我们这个时代最受欢迎的开源项目之一,它已成为云原生应用程序的事实基础设施,并促成了新的且不断增长的 Kubernetes Operator 生态系统的创建;大多数流行的软件现在都有自己的 Operator,以便更轻松地在 Kubernetes 环境中创建、配置和管理,当然,Operator 与 Kubernetes API 集成。许多可用的数据技术现在都具有 Kubernetes Operator,以促进和自动化与 Kubernetes API 集成的有状态应用程序的使用。

什么是 API 管理层?

云原生环境也有其堆栈、云基础设施、操作系统、容器编排、容器 Operator、应用程序代码和 API。所有这些都支持一种软件解决方案,该解决方案集成并将数据公开给移动设备、Web 应用程序或其他服务,包括 IoT 设备。无论技术组合如何,一切都应受到 API 管理平台功能的保护。API 管理平台是云原生应用程序之上的层,必须受到保护,因为数据和 API 会暴露在组织网络之外。

并且,在谈到 技术架构 时,API 管理平台具有灵活的部署选项非常重要。战略和设计应始终包括可移植性,即在不同架构(例如,PaaS、本地、混合云、公有云或多云架构)上移动和部署的能力。

[ 开发者 API 管理试用:Red Hat OpenShift API 管理 ]

云原生技术的 3 个 API 战略考虑因素

为了设计最新技术的 API 战略,有多种选择可以归纳为三个主要领域。首先是现代化战略,从将单体应用程序分解为服务,到实现云原生,当然,还要与大型机中的关键任务应用程序集成。对于此战略,构建和维护安全的 API。设计 API 战略的第二个领域是所谓的无头架构,即首先向 API 添加功能和特性的概念,然后可选择将该功能提供给用户界面。采用微服务设计的粒度架构,或完全基于 API 以促进集成和自动化。第三个 API 战略领域是关注新技术,从创建 API 生态系统以吸引贡献和使用公共 API 的客户和合作伙伴,到选择技术堆栈并将它们与新技术(例如 AI、无服务器计算和边缘计算)集成。最重要的是,每个 API 战略都必须包括 API 管理和安全思维模式。

API 管理平台应包括 API 设计、测试和安全性的完整生命周期功能。其他功能(例如分析、商业智能和 API 门户)使组织能够利用 DevOps 和完整生命周期管理来进行 API 的开发、测试、发布和使用。

以下是当今最新技术的其他几个示例,以及对它们的了解和使用如何成为 API 战略的一部分:第一个是 DevOps 集成。DevOps 自动化有各种商业和开源选项。关键部分包括持续集成和持续交付工具。另一个非常相关的领域是数据和 AI 技术,这是一个不断增长的领域,在 AI 开发生命周期的每个阶段都有 数千种选择,从数据收集和组织到数据分析以及 ML 和 DL 模型的创建和训练。AI 开发生命周期的最后一步应包括 ML 和 DL 模型的自动部署和维护。所有这些步骤都应与通过 API 实现的不同技术的完全集成相结合,对于外部集成,包括数据源,则需要重要的 API 管理平台层。

开源和 API 管理层

总之,借助来自开源堆栈和 DevOps 工具到 AI 的所有这些新技术,通用的保护和管理层是 API 管理层。应该有一个由 API 管理驱动的以安全为先的 API 战略,并且重要的是要记住,在这个时代,API 无处不在,现代技术堆栈将通过 API 与数据技术(数据库和存储)、DevOps 和 AI 集成,引领潮流。不要忘记在设计和管理 API 时要牢记安全性。无论选择用于现代化的 API 战略是作为无头架构还是基于新技术,API 战略都必须与您的技术选择和对未来的愿景齐头并进。

[ 参加免费在线课程:部署容器化应用程序 ]

接下来阅读什么
JAVIER PEREZ
Javier 热衷于技术和开源软件,是 Perforce Software 的首席布道师。负责开源和应用程序安全产品组合的技术思想领导和倡导。在加入 Perforce 之前,Javier 领导了 IBM Z 和 LinuxONE 平台上 IBM 的开源计划战略。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.