首页 > 解决方案 > 将 WSO2 定义迁移到 AWS API Gateway?

问题描述

免责声明:我对 API 开发的知识几乎为零。

目标不是编写 API,而是移植现有定义。

我们当前的 API 设置是驻留在 3 个不同 EC2 实例中的 WSO2 集群 API 管理器。一个用于发布者和商店,一个用于网关,一个用于密钥管理器。

我已经花时间查看了配置,所以我至少知道这三个组件是如何相互“对话”的。

到目前为止,我发现 API 定义位于路径“*/gateway/repository/deployment/server/synapse-configs/default/api/”中的某个位置,并且其中有定义 API 的 XML。通读一遍,这些字段似乎与我在 AWS API Gateway 中看到的字段相同。所以我知道一定有办法把它们移植过来。

然而,除此之外,我完全不知道下一步是什么。我应该对 API 有多深的理解才能成功地做到这一点?是否有可用于将 API 导入 AWS API Gateway 的工具?还是从 WSO2 导出?我有点卡住了,因为我现在能看到的唯一对我有帮助的是学习 WSO2 和 API 定义,但由于时间限制,我们没有足够的时间来做这件事。

朝着正确方向迈出的任何一步都将不胜感激。谢谢!

编辑:我们正在考虑迁移的原因是因为维护一直是一场噩梦。每当我们必须进行一些定期清理时,我们都会遇到很多关于 API 的关键问题,更不用说 3 个 EC2 实例也会让我们付出代价,因此我们正在寻找更轻量级、更易于维护的选项.

标签: amazon-web-serviceswso2aws-api-gatewaymigrateapi-gateway

解决方案


如果您只需要迁移 API 定义,您可以尝试使用 Swagger 文件(即 OpenAPI 定义)[1] 将 API 导入 API Gateway。

您可以尝试从 WSO2 API 管理器中导出 Swagger 文件吗?如果是,您可以按照 [1] 中的说明在 API 网关中导入 API。

关于 API Manager 的整体迁移(即 API 定义、端点定义、安全策略、缓存/节流策略等),我建议您进行适当的可行性研究,以确保您的 API Manager 中使用的功能是否可以被翻译成 API Gateway 提供的功能。

[1] https://docs.aws.amazon.com/apigateway/latest/developerguide/import-export-api-endpoints.html


推荐阅读