龙空技术网

强大的API管理平台Gravitee.io APIM

尿床草 11479

前言:

现在各位老铁们对“linux访问wsdl”大约比较看重,大家都想要剖析一些“linux访问wsdl”的相关文章。那么小编同时在网络上汇集了一些有关“linux访问wsdl””的相关资讯,希望看官们能喜欢,各位老铁们快快来了解一下吧!

本文适用于版本3.18.0。

1. 背景

1.1 组织在API管理方面存在挑战

组织需要 API 管理解决方案将其 API 发布给外部开发人员、内部开发人员和其他合作伙伴。API管理可以释放组织数据和服务的潜力,并促进向OpenAPI和OpenData的转型,扩展公司的数字平台产品,开辟新的沟通渠道,并寻找新客户。

当然,不断增长的客户群带来了新的挑战,例如:

如何减少注册新合作伙伴所需的时间如何识别合作伙伴并管理其 API 使用如何从消费者和/或生产者的角度衡量消费如何共享现有 API 以及如何发现它们如何管理 API 生命周期、版本控制、文档等

1.2 Gartner 预测 2022:API要求提高安全性和管理

随着组织采用“API 优先”方法,软件工程领导者正在努力管理快速增长的复杂 API 部署,同时改善其 API 安全状况。由于采用了不同的API类型和协议,复杂性和安全挑战更加严重。

根据Gartner的说法,“API安全挑战已成为大多数软件工程领导者最关心的问题,因为非托管和不安全的API会产生漏洞,可能会加速数百万美元的安全事件”。

在这份报告中,Gartner分析师分享了他们的主要发现,因为他们预测2022年对API安全性和管理的需求将会增加。

2. 概述

Gravitee.io APIM 是一种灵活、轻量级且速度极快的开源 API 管理全局解决方案,易于使用又功能强大,可让您的组织完全控制谁在何时以及如何访问您的 API。

3. 特性

使用图形流程图构建和配置 API 策略,并轻松配置配额、速率限制等。

使用随附的分析仪表板可视化和了解 API 使用情况,或与 Grafana 或 Kibana 等流行工具集成。

通过发布一个开发人员门户来创建 API 用户社区,并完整记录所有 API。

3.1 高性能网关

Gravitee API Gateway已被证明比其它流行的解决方案更快,性能至少高出4倍。基于 Java 构建,可以确保拥有超快的现代 API 管理体验。

3.2 轻松创建策略

预置50个策略,通过使用直观的流量编辑器配置配额、速率限制和自定义属性等所有内容,轻松调整到达网关的流量,API 将立即可供使用。

3.3 支持多种现代后端协议

使用 Gravitee 服务管理生态系统通过 Gravitee API Gateway 代理现代后端协议。准备好超越 REST API,拥抱现代协议、后端服务和事件驱动架构 (EDA)。

3.4 多种负载平衡和完全故障转移

Gravitee 支持多种负载平衡类型,以确保完全控制和扩展您的流量,以及完全故障转移控制,以确保始终满足 API 请求。

3.5 API用户门户

发布 API 是一回事,但确保它们是可发现和可消费的是另一回事。轻松发布开发人员门户,帮助 API 使用者了解和使用您的 API。

3.6 日志记录和审核跟踪

高度精细的日志记录意味着永远不必担心错过信息,而复杂的审计跟踪有助于监控随时间推移的行为。

3.7 设计时调试

在设计阶段轻松调试 API 流,避免常见设计错误。在 API 问题成为 API 使用者的问题之前,快速识别并解决这些问题。

3.8 分析仪表板

通过随附的仪表板可视化和了解 API 使用情况。

3.9 计划和订阅管理

管理订阅和计划是 APIM 的一项关键功能,发布者可以使用它来提供和管理对 API 的访问。

计划为使用者应用程序在 API 之上提供服务和访问层。计划指定访问限制、订阅验证模式和其它配置,以针对特定应用程序进行定制。

要使用 API,开发人员必须创建链接到其中一个 API 计划的应用程序(除非该计划是无密钥的,如上所述)。然后,他们可以订阅该 API。APIM 使用订阅来决定是接受还是拒绝传入请求。

3.10 通知

支持API发布者在平台级别或 API 级别与用户通信。

3.11 支持

完全控制跨域资源共享。

3.12 响应模板

您可以使用响应模板来覆盖策略提供的默认响应。

响应模板可以覆盖由特定于策略的错误键触发。每个响应模板定义在触发模板时要为一个或多个状态代码返回的新值。除了创建与特定错误键关联的模板外,还可以为创建两种独立于策略的全局模板。

3.13 API 评级和顶级 API

API 评级是推广 API 的好方法。只有具有正确权限的 API 成员才能对其进行评分。

发布者还可以根据需要配置任意数量的顶级 API。

4. 核心概念

应用程序接口

API 是 APIM 定义和使用的根本概念。可以将其视为向网关公开服务的起点。

发行人

在我们的平台中,我们将发布者(也称为 API 发布者)定义为声明和管理 API 的角色。

消费者

在我们的平台中,我们将使用者(也称为 API 使用者)定义为使用 API 的角色。

使用者只能在订阅 API 后使用 API。

应用

应用程序是使用者和 API 之间的中间级别。使用者使用应用程序订阅 API,然后才能使用它。

5. 架构

Gravitee.io APIM 分为四个主要组件:

APIM 网关APIM APIAPIM 控制台APIM Portal

5.1 APIM 网关

APIM 网关是 APIM 平台的核心组件。您可以将其视为智能代理。

与传统的 HTTP 代理不同,APIM 网关能够根据您的需要将策略(即规则)应用于 HTTP 请求和响应。借助这些策略,您可以通过添加转换、安全性和许多其它令人兴奋的功能来增强请求和响应处理。

5.2 APIM API

此 RESTful API 公开服务以管理和配置 APIM 控制台和 APIM 门户 Web UI。所有公开的服务都受到身份验证和授权规则的限制。

5.3 APIM 控制台

此 Web UI 允许轻松访问一些关键的 APIM API 服务。API 发布者可以使用它来发布 API。管理员还可以配置全局平台设置和特定门户设置。

5.4 APIM Portal

此 Web UI 允许轻松访问一些关键的 APIM API 服务。API 使用者可以使用它来搜索、查看、试用和订阅已发布的 API。他们还可以使用它来管理其应用程序。

6. 插件

插件是可以插入 APIM 网关或 APIM API 的附加组件,可以自定义组件的行为,以完全满足您的需求和技术限制。

插件的类型包括:身份提供商、协议、策略、报告、存储库、资源、服务、通知、警报等。

身份提供程序代理与外部用户提供程序的信任,以进行身份验证并获取有关最终用户的信息。

策略修改 APIM 网关处理的请求或响应的行为。它可以由请求策略链或使用逻辑顺序的响应策略链进行链接。可以将策略视为代理控制器,保证在请求/响应处理期间满足给定的业务规则。

APIM 网关实例使用报告器来报告多种类型的事件。

存储库是用于 API 配置、策略配置、分析等的可插拔存储组件。

资源可以在整个生命周期内添加到 API 中,如Cache和OAuth2等。

通知程序用于发送通知。目前,唯一可用的通知程序是电子邮件通知程序,但其它通知程序(包括 slack 和门户)即将计划。

警报用于向警报引擎发送触发器或事件,可以使用配置的插件通知程序处理触发器或事件以发送通知。

7. 安装

APIM可以在AWS、Docker、Kubernetes、Linux等上安装。

7.1 在Docker上安装

需要依次安装gravitee-mongo、gravitee-elasticsearch、apim-gateway、apim-management-api、apim-management-ui和apim-portal-ui等容器镜像。

7.2 在Kubernetes上安装

可使用Helm Chart来安装。

Bash

helm repo add graviteeio

helm install graviteeio-apim3x graviteeio/apim3 --create-namespace --namespace gravitee-apim

7.3 混合部署

混合架构(即内部部署和云部署的组合)在不同数据中心部署APIM组件时具有独特的技术和/或成本限制。APIM 混合部署解决方案(以混合组件或插件的形式)克服了这些限制,使你能够自由地定义所需的体系结构和部署愿景。

8. 升级

如果计划在升级时跳过版本,请确保阅读每个中间版本的特定于版本的升级说明。升级过程中,可能需要一些手动操作。

请务必在正确的数据库上运行脚本,因为它并不总是默认数据库!通过运行show dbs来检查数据库名称;

9. 使用

9.1 命令行

graviteeio-cli是一个CLI(命令行界面),可用来管理 Gravitee.io 生态系统。它允许通过调用其管理 API 来自动执行平台所有模块的操作。

Shell

#使用 pip 安装client的最新稳定版本

pip3 install graviteeio-cli

9.2 Web 控制台

您可以使用安装期间创建的 URL 来访问 APIM 控制台。

在 APIM 安装过程中,将创建一个默认的管理员帐户。您可以使用此帐户执行 APIM 提供的所有管理任务,例如创建 API、注册用户和配置安全性。

默认情况下,APIM 控制台管理员帐户的登录详细信息为 admin / admin

9.2.1 主仪表板

登录后,您将被定向到您的主仪表板,您可以在其中访问与您的API相关的信息和统计信息:

在仪表板可以:

更改时间段或单击“刷新”以更新显示在 API 状态选项卡中查看 API 运行状况检查在“分析”选项卡中查看其它仪表板和日志通过在页面底部的列表中单击特定 API 事件的详细信息,向下钻取到该事件的详细信息

9.2.2 创建您的 API

使用 APIM 控制台,可以从头开始创建新的 API 定义,或从API Defination、Swagger、WSDL等导入现有定义。

9.2.2.1 使用设计工作室创建API

在使用者可以订阅您的 API 之前,必须发布一个或多个计划。

在“文档”步骤中,您可以添加一些 Markdown 和 OpenAPI 文件。

在部署 API 信息之前,请检查它。准备就绪后,单击“创建并启动 API”。

祝贺!您已经创建了全新的 API,发布了一个计划,并且如果 APIM 网关实例正在运行,则部署了您的 API。

在 API 可供使用者使用之前,需要再完成一个步骤:单击“发布 API”以在 APIM 门户中显示 API。

9.2.2.2 导入 API

也可以导入现有的 API 规范。

9.3 开发者门户

有两种方法可以访问 APIM 门户:

如果您已登录到 APIM 控制台,请使用开发人员门户按钮:apim console devportal

如果直接在浏览器中,使用在安装过程中创建的 URL

APIM 门户的普通用户需要从管理员处获取用户凭据。

10. 企业版

要运行 Gravitee.io 企业节点,必须具有有效的许可证文件。

获取许可证的方法:

向 contact@graviteesource.com 发送电子邮件以请求许可证从 Gravitee.io 网站下载试用版(即将推出)

订阅 Gravitee.io 提供的支持服务时,可以在两个支持选项之间进行选择:

短期支持 (STS)长期支持 ( LTS)

LTS 适用于以 0 或 5 结尾的版本(例如:1.25、1.30、1.35)。STS 即所有非 LTS 版本。

LTS 版本的支持期约为 1 年,而 STS 版本的支持期为 3 个月。

标签: #linux访问wsdl