基于 Traefik Hub 的新一代 API 管理

2023-07-08 16:08:53 浏览数 (2)


Hello folks,我是 Luga,今天我们来聊一下云原生生态网关统一管理平台-Traefik Hub 的新一代 API 管理功能。

Traefik Hub API 管理的普遍可用性,是一种用于发布、保护和管理 API 的现代 Kubernetes 原生解决方案,具有行业首个对包括 NGINX 在内的主要第三方入口控制器的支持。

01

关于 Traefik Hub 的设计初衷

在全球化的今天,随着人工智能的快速推进以及云原生生态的日渐完善,设计、开发和启动 API 的能力已成为专注于云原生、容器化和数字化转型计划的组织的战略要务。

据不完全数据统计,API 是当今几乎所有数字产品和服务的结缔组织,约占 Internet 总请求的 83%,并且增长速度比所有其他 Web 流量快 2 倍。然而,现有的 API 管理解决方案正在努力提供云原生体验和快速实现价值,其用户面临着陡峭的学习曲线、不断增加的操作复杂性以及缺乏部署灵活性。

02

为什么要进行 API 管理?

作为当前比较流行的云原生网关,诞生于 2015 年, Traefik Proxy 宗旨在于解决采用云原生技术日益复杂的问题。凭借对简化和自动化的疯狂关注,Traefik Proxy 开源项目迄今已获得超过 30 亿次下载和 43,000 个 GitHub 星数。从高级家庭实验室用户到财富 100 强企业架构师,许多人一直在使用 Traefik Proxy 作为他们的统一入口和 API 网关,根据 Ossinsight 上发布的排名,Traefik Proxy 连续几年达到并保持在云原生网关类别中的领先地位。

在过去的十年里,随着企业越来越依赖 API,API 管理有了很大发展。传统的 API 管理平台可以满足安全、监控和治理等关键需求。然而,这些整体解决方案往往复杂、不灵活且缺乏便携性。

鉴于如此庞大且分布在全球的 Traefik 用户安装基础,Traefik 实验室经常聆听并目睹与 API 管理相关的主要挑战。

1、大型单体系统: API 管理生态系统充斥着大型和专有的单体系统,这些系统灌输了一种全有或全无的心态。这与提倡选择、模块化和轻量级足迹的现代云原生原则直接冲突。

2、与 DevOps 操作模型不一致:现有的 API 管理解决方案是围绕 UI 点击式工作流而不是 Kubernetes 原生脚本和自动化设计的,因此在满足采用 CI/CD 和以 GitOps 为中心的方法的组织的需求时会造成摩擦和效率低下。

3、缺乏部署灵活性:现有的 API 管理解决方案与一组有限的部署环境紧密耦合,为采用混合、多云和边缘策略的组织创造了操作限制。

通过大量讨论和用户调查,我们验证并得出结论,迫切需要一种现代 API 管理解决方案来满足不断增长的 Kubernetes 和云原生用户社区的需求。鉴于我们公司在解决类似棘手问题方面的往绩和 DNA,我们感到有必要迎接这一新挑战并提供一流的 Kubernetes 原生 API 管理解决方案。

03

第一个 Kubernetes 原生 API 管理解决方案

Traefik Hub 是业界第一个用于发布、保护和管理 API 的 Kubernetes 原生 API 管理解决方案,同时支持 Traefik 和主要的第三方入口控制器,包括 NGINX、HAProxy、Ambassador 等。

基于其设计初衷,Traefik Hub 是从头开始构建的,以提供符合以下设计原则和目标的成果:

1、选择自由

Traefik Hub 提供了多维度的选择:用户可以选择任何领先的入口控制器,包括 Traefik Proxy 或第三方解决方案,如 NGINX。用户还可以在多个部署环境中标准化他们的 Traefik Hub 安装,包括本地、多云中的托管 Kubernetes 和边缘。

此外,Traefik Hub 架构既是开放的又是模块化的,提供与第三方 API 设计、测试、模拟和安全解决方案的无缝集成能力,同时利用行业最佳实践和标准,例如 OpenTelemetry 和 OpenAPI 规范(OAS)

2、DevOps 优先理念

Traefik Hub 是一种现代解决方案,体现了 DevOps 优先的思维方式。初始配置和正在进行的更改可以表示为代码,并通过 GitOps 和 CI/CD 友好的工作流程进行部署。

3、安全第一的心态

如果不解决 API 成为新攻击媒介的概念以及缓解它们的方法,任何关于现代 API 管理系统的讨论都是不完整的。

Traefik Hub 提供强大的安全功能,例如,基于角色的访问控制 (RBAC),并支持现代行业标准的身份验证和授权机制,例如 OAuth 2.0 和 JSON Web Tokens (JWT)。此外,Traefik Hub 的开放式和模块化架构提供了与领先的第三方 API 安全解决方案的集成能力,以提供额外的保护层。

4、Kubernetes 原生方法

Traefik Hub 通过与 Kubernetes API 的深度集成提供了一种 Kubernetes 原生方法。从现有微服务的自动发现开始,Traefik Hub 利用熟悉且强大的 Kubernetes 对象和原语(例如自定义资源定义(CRD)、标签和选择器)来大规模创建、管理和保护 API。

5、快速实现价值

Traefik Hub 控制平面为刚开始在单集群或多集群 Kubernetes 环境中发布 API 的用户提供了简单直观的点击式体验,同时还让高级 Kubernetes 用户可以访问其完全自动化和 GitOps 功能。这种双重运营模式加速了 Kubernetes 原生采用并最大限度地提高了业务敏捷性,使组织能够以前所未有的速度和规模推出新的 API 和服务。

04

Traefik Hub 哪些功能场景?

1、从任何 Kubernetes 微服务发布 API

从任何现有的 Kubernetes 微服务发布 API 变得无忧无虑。无论 Kubernetes 分布如何,跨混合、多云或边缘环境,或者我们选择的入口控制器,Traefik Hub 都会自动发现和编目所有 Kubernetes 微服务,而无需对现有技术堆栈进行任何更改。由于其 Kubernetes 原生设计,Traefik Hub 完全符合 GitOps 标准,进一步确保部署标准化、速度和合规性。

(1)多合一入口 API网关 API管理

(2)支持 Traefik 和 NGINX 入口控制器(更多即将推出)

(3)使用 Kubernetes 自定义资源定义 (CRD) 进行管理

2、面向开发人员的自助式API 门户

Traefik Hub API 门户为 API 所有者和管理员提供了完全的自由,可以通过点击和 GitOps 机制来组织他们的 API 资产。此外,对开发人员友好的 API 门户提供重要的自助服务功能,例如 API 发现、文档、测试、访问控制以及错误和使用分析。

(1)门户 RBAC(基于角色的访问控制)

(2)OpenAPI 规范 (OAS) 3 支持

(3)可自定义的 API 开发人员门户,支持白标

3、统一管理和可观察性的中央控制平面

Traefik Hub 的中央控制平面为所有 API、用户和基础设施组件提供单一管理点,从而减少错误和不一致,同时最大限度地提高运营效率。API 所有者和开发人员获得单一事实来源来管理和观察他们最有价值的 API 资产的采用、性能和安全性。

(1)访问控制(OIDC、JWT)、速率限制和证书管理

(2)OpenTelemetry 支持

(3)插件支持(基于 Go)

05

总结‍‍

总体而言,对于寻求更现代、更轻量级的 API 管理解决方案的企业来说,Traefik Hub 是一个有吸引力的替代方案。其开源基础、微服务架构以及与 Kubernetes 等工具的集成解决了传统 API 管理平台的许多痛点。

对于已经大量投资于传统平台的企业来说,由于所涉及的挑战和风险,迁移到 Traefik Hub 可能没有意义。但对于新项目或已经采用微服务的项目,Traefik Hub 可以提供适合其需求的有效 API 管理基础。

随着 Traefik Hub 的成熟和普及,许多潜在的缺点应该随着时间的推移而减少。目前,企业应该仔细评估他们的具体 API 管理要求确定 Traefik Hub 是否提供了足够的好处来证明采用新平台的潜在风险。

总之,Traefik Hub 的 API 管理新方法具有开创为微服务和云原生架构量身定制的新一代 API 管理的巨大潜力。但传统解决方案对一些企业来说仍然具有优势,在这一点上超过了迁移的好处。权衡将在很大程度上取决于每个组织的具体需求和技术背景。

0 人点赞