获取Kong

Kong Gateway是一个轻量、快速和灵活的云原生API网关。Kong Gateway位于您的服务应用程序前面,动态地控制、分析和路由请求和响应。Kong Gateway通过使用灵活、低代码、基于插件的方法来实现您的API流量策略。

此教程将帮助您通过设置本地安装并进行一些常见的API管理任务来入门Kong Gateway。

本页面将引导您运行Kong Gateway并使用Admin API进行验证。完成后,可以执行以下任务来完成教程:

  • 了解和配置服务(Services)和路由(Routes)
  • 配置速率限制以保护上游服务(Services)
  • 使用代理缓存提高系统性能
  • 使用负载均衡实现水平服务扩展
  • 使用密钥认证保护服务

先决条件

  • 使用Docker在本地运行Kong Gateway和支持的数据库
  • curl用于发送请求到Kong Gateway。大多数系统上都预先安装了curl。
  • jq用于在命令行上处理JSON响应。虽然很有用,但在完成本教程的任务时不是必需的。如果您希望在没有jq的情况下继续,请修改命令以移除jq处理。

获取Kong

为了完成本教程,我们提供了一个快速启动脚本,可快速运行Kong Gateway及其支持的数据库。该脚本使用Docker来运行Kong Gateway,并使用PostgreSQL数据库作为后端数据库。

  1. 使用快速启动脚本运行Kong Gateway:
Lua 复制代码
curl -Ls https://get.konghq.com/quickstart | bash

注意:快速启动脚本以免费模式运行Kong Gateway企业版。如果您希望使用许可证运行Kong,请通过环境变量将许可证传递给脚本。有关此和其他高级用法的说明,请参阅代码存储库的文档。

该脚本会运行Kong Gateway和支持的PostgreSQL数据库的Docker容器。脚本还创建了一个Docker网络,以供这些容器之间进行通信。最后,数据库会根据适当的迁移步骤进行初始化,一旦Kong Gateway准备就绪,您将看到以下消息:

Lua 复制代码
Kong Gateway Ready 
  1. 验证Kong Gateway是否正在运行:

Kong Gateway在默认端口8001上提供了一个管理API(Admin API)。管理API可用于查询和控制Kong Gateway的状态。下面的命令将查询管理API,仅获取头信息:

Lua 复制代码
curl --head localhost:8001

如果Kong Gateway正常运行,它将以类似以下的方式响应200 HTTP状态码:

Lua 复制代码
HTTP/1.1 200 OK
Date: Mon, 22 Aug 2022 19:25:49 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Access-Control-Allow-Origin: *
Content-Length: 11063
X-Kong-Admin-Latency: 6
Server: kong/3.5.0
  1. 评估Kong Gateway的配置:

Admin API的根路由提供了关于正在运行的Kong Gateway的重要信息,包括网络、安全和插件信息。完整的配置在返回的JSON文档的`.configuration`键中提供。

Lua 复制代码
curl -s localhost:8001 | jq '.configuration'

您应该会收到一个包含Kong Gateway配置信息的大型JSON响应。

  1. 访问Kong Manager

在本指南的其余部分中,我们将演示如何使用Admin API配置Kong Gateway,但您还可以使用Kong Manager来管理您的服务(Services)、路由(Routes)、插件(Plugins)等等。要访问Kong Manager,请打开以下URL:http://localhost:8002

注意:如果您安装的是Kong Gateway (OSS),您将使用Kong Manager开源版。其他所有Kong Gateway安装使用Kong Manager企业版。

本教程的每个步骤都需要一个正在运行的Kong Gateway,所以请保持一切正常运行,继续进行下一步。

相关推荐
tnan25223 天前
记录docker使用kong consul postgresql配置dns异常解决
docker·kong·consul
PXM的算法星球4 天前
spring gateway配合nacos实现负载均衡
spring·gateway·负载均衡
1990_super4 天前
使用ceph-deploy安装和配置RADOS Gateway (RGW)并使用S3访问集群
ceph·gateway
北极糊的狐7 天前
接口返回504 Gateway Time-out 错误,这意味着请求在网关或代理服务器等待上游服务器响应时超时。以下是可能的原因和排查建议:
数据库·gateway
sg_knight8 天前
Spring Cloud Gateway全栈实践:动态路由能力与WebFlux深度整合
java·spring boot·网关·spring·spring cloud·微服务·gateway
放纵日放纵10 天前
微服务—Gateway
微服务·架构·gateway
你我约定有三11 天前
分布式微服务--GateWay(1)
java·开发语言·分布式·微服务·架构·gateway
William一直在路上14 天前
KONG API Gateway中的核心概念
网络·gateway·kong
freesharer14 天前
kong网关集成Safeline WAF 插件
kong