跳到主要内容
版本:3.6.x

发布服务版本

为了对已部署的 API 进行版本控制,可以利用 API7 企业版将可复用的服务模板发布到不同的网关组形成不同的服务版本,而不是在网关组上直接进行配置编辑。

通常,API 版本会在发布到生产环境之前,先发布到测试和暂存环境中。API7 Gateway 通过网关组管理这种环境隔离,其中 API 属于具有共享上游的单个已发布服务

本教程将指导你在 API7 企业版上将 httpbin 服务发布到网关组。你将学习如何:

  1. 手动和通过 OpenAPI 文件创建服务。
  2. 通过配置上游节点和使用服务发现机制发布服务。

前提条件

  1. 安装 API7 企业版
  2. 确保网关组中至少有一个网关实例

新增服务模板并添加路由

手动新增

  1. 在左侧导航栏中选择 服务中心, 然后点击 新增服务
  2. 选择 手动新增
  3. 在表单中执行以下操作:
  • 服务类型 选择 HTTP (七层代理)
  • 名称 填写 httpbin
  • 点击 新增
  1. 进入服务内,点击 新增路由
  2. 在表单中,执行以下操作:
  • 名称 填写 get-ip.
  • 路径 填写 /ip
  • HTTP 方法 选择 GET
  • 点击 新增

导入 OpenAPI 文件

控制台和 ADC 都支持导入 OpenAPI v3.0 文件。

在 YAML/JSON 文件中定义你的 API,如下所示:

OpenAPI.yaml
openapi: 3.1.0
info:
title: httpbin
description: "httpbin API for the API7 Enterprise Getting Started guides."
version: 1.0.0
paths:
"/anything/*":
get:
tags:
- ip
summary: Returns the ip of the request.
operationId: get-ip
responses:
"200":
description: Successful Response
content:
application/json:
schema:
type: string
tags:
- name: ip
description: Return the ip of the request.

然后在 API7 网关中使用:

  1. 在左侧导航栏中选择 服务中心, 然后点击 新增服务
  2. 选择 导入 OpenAPI
  3. 在表单中执行以下操作:
  • 上传你的 YAML/JSON 文件。
  • 点击 下一步
  1. 确认以下信息:
  • 名称:来自 OpenAPI 文件的 title
  • 标签:来自 OpenAPI 文件的 tag
  • 描述:来自 OpenAPI 文件的 description
  • 路由: 来自 OpenAPI 文件的 Paths
  • 点击 新增

将服务版本发布到网关组

  1. 在左侧导航栏中选择 服务中心, 然后选择之前创建的 httpbin 服务。
  2. 点击 发布新版本
  3. 在表单中执行以下操作:,
  • 网关组 中选择你要发布的目标网关组,例如 默认网关组
  • 新版本 填写 1.0.0
  • 点击 发布

:::Note

首次发布服务之后,请在网关组中配置必要的服务运行时配置启用该服务以激活你的 API。对于后续发布,服务状态和运行时配置将继承先前版本。

:::

配置服务运行时配置

  1. 发布后,你将被重定向到网关组上的已发布服务。
  2. 从侧边导航栏中选择 上游
  3. 点击 新增节点
  4. 在表单中执行以下操作:
  • 主机 字段中,输入 httpbin.org
  • 端口 字段中,输入 80
  • 权重 字段中,输入 100
  • 点击 新增
  1. 从已发布服务的顶部标题栏中点击 启用 并确认。

验证 API

curl "http://127.0.0.1:9080/ip"

你应该会看到以下输出:

{
"origin": "127.0.0.1"
}

相关阅读