获取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,所以请保持一切正常运行,继续进行下一步。

相关推荐
程序员爱中国20 小时前
GateWay服务网关
gateway·服务网关
TOMORROW6COME3 天前
SpringCloud-服务网关-Gateway
spring·spring cloud·gateway
读书笔记控4 天前
计算机相关术语科普之什么叫网关(Gateway)
gateway
Lill_bin5 天前
面试题--SpringBoot
spring boot·后端·spring·spring cloud·zookeeper·gateway·mybatis
怪兽也会哭哭6 天前
微服务应用与开发知识点练习【Gateway,OpenFeign,Dubbo,RocketMQ和RabbitMQ,JPA,Redis,Mycat】
微服务·gateway·rabbitmq·dubbo·rocketmq
怪兽也会哭哭6 天前
Spring Cloud Alibaba之网关组件Gateway
spring boot·gateway·学习笔记
池塘边的菜园子7 天前
学习gateway网关路由时遇到的问题
网络·学习·gateway
池塘边的菜园子7 天前
微服务-网关Gateway
linux·微服务·gateway
请叫我鹏鹏君8 天前
微服务 | Springboot整合GateWay+Nacos实现动态路由
spring boot·微服务·gateway
luo♛8 天前
微服务-网关
java·分布式·spring cloud·微服务·架构·gateway