发布服务版本
为了对已部署的 API 进行版本控制,可以利用 API7 企业版将可复用的服务模板发布到不同的网关组形成不同的服务版本,而不是在网关组上直接进行配置编辑。
通常,API 版本会在发布到生产环境之前,先发布到测试和暂存环境中。API7 Gateway 通过网关组管理这种环境隔离,其中 API 属于具有共享上游的单个已发布服务。
本教程将指导你在 API7 企业版上将 httpbin 服务发布到网关组。你将学习如何:
- 手动和通过 OpenAPI 文件创建服务。
- 通过配置上游节点和使用服务发现机制发布服务。
前提条件
- 安装 API7 企业版。
- 确保网关组中至少有一个网关实例。
新增服务模板并添加路由
手动新增
- 控制台
- ADC
- 在左侧导航栏中选择 服务中心, 然后点击 新增服务。
- 选择 手动新增。
- 在表单中执行以下操作:
- 服务类型 选择
HTTP (七层代理)。 - 名称 填写
httpbin。 - 点击 新增。
- 进入服务内,点击 新增路由。
- 在表单中,执行以下操作:
- 名称 填写
get-ip. - 路径 填写
/ip。 - HTTP 方法 选择
GET。 - 点击 新增。
创建一个 ADC 配置文件,包含服务及其上游和路由:
adc.yaml
services:
- name: httpbin
upstream:
name: httpbin upstream
scheme: http
nodes:
- host: httpbin.org
port: 80
weight: 100
routes:
- uris:
- /ip
name: get-ip
methods:
- 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 网关中使用:
- 控制台
- ADC
- 在左侧导航栏中选择 服务中心, 然后点击 新增服务。
- 选择 导入 OpenAPI。
- 在表单中执行以下操作:
- 上传你的 YAML/JSON 文件。
- 点击 下一步。
- 确认以下信息:
- 名称:来自 OpenAPI 文件的
title。 - 标签:来自 OpenAPI 文件的
tag。 - 描述:来自 OpenAPI 文件的
description。 - 路由: 来自 OpenAPI 文件的
Paths。 - 点击 新增。
使用 ADC 将 OpenAPI 文件转换成 ADC 配置文件:
adc convert openapi -f openapi.yaml -o adc.yaml