跳到主要内容
版本:3.2.13.0

将已发布的服务版本同步到其他网关组

在网关组之间同步已发布的服务版本是进行 API 版本控制的一项非常有效的功能。例如:

  1. 当使用网关组来分隔环境(如测试和生产)时,你可以在运行测试后将服务版本从测试同步到生产。
  2. 或者,如果你使用网关组来划分区域或团队,同步服务可以帮助在它们之间分发服务。
备注
  • 同步使服务版本在网关组之间保持一致,而发布则每次创建一个新的服务版本。

前提条件

  1. 安装 API7 企业版
  2. 有两个网关组作为来源网关组和目的网关组,例如用于测试和生产环境的两个网关组,每个网关组中至少有一个网关实例。
  3. 在测试环境对应的网关组中发布一个服务版本

步骤

  • 同一个服务版本发布/同步到不同网关组时,可以使用不同的上游地址对应不同环境里的后端服务。
  • “无版本”状态的服务也可以同步到其他网关组,同步之后将同时在两个网关组上都拥有一个相同版本号。
  • 你只能同步当前运行的服务版本,不能同步旧的服务版本。

使用上游节点

  1. 从侧边栏选择服务来源网关组的 已发布服务,然后点击你要同步的服务版本,例如版本为 1.0.0 的服务 httpbin API
  2. 点击页面标题中 启用/禁用 旁边的按钮,然后选择 同步到其他网关组
  3. 在表单中执行以下操作:
    • 网关组 选择要同步到的目的网关组,例如 生产网关组,然后单击下一步
  4. 在表单中执行以下操作:
    • 如何查找上游 选择使用节点
    • 点击添加节点。在表单中执行以下操作:
      • 主机端口 填写 httpbin.org 作为主机,80 作为端口。
      • 权重使用默认值 100
      • 点击添加
    • 确认服务信息,然后点击同步

使用服务发现

  1. 从侧边栏选择服务来源网关组的 已发布服务,然后点击你要同步的服务版本,例如版本为 1.0.0 的服务 httpbin API
  2. 点击页面标题中 启用/禁用 旁边的按钮,然后选择 同步到其他网关组
  3. 在表单中执行以下操作:
    • 网关组 选择要同步到的目的网关组,例如 生产网关组,然后单击下一步
  4. 在表单中执行以下操作:
    • 如何查找上游,选择 使用服务发现
    • 服务注册表 选择 生产用注册中心,以及注册表中的命名空间和服务名称。
    • 确认服务信息,然后点击同步

验证同步之后的 API

发送一个请求来验证同步到 生产网关组 上的 API:

# 替换成生产网关组对应的地址
curl "http://127.0.0.1:9080/headers"

你应该能看到如下类似的响应:

{
"headers": {
"Accept": "*/*",
"Host": "httpbin.org",
"User-Agent": "curl/7.74.0",
"X-Amzn-Trace-Id": "Root=1-6650ab7e-32c90eba787abbeb4e3dbb0c",
"X-Forwarded-Host": "127.0.0.1"
}
}

相关阅读