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

使用服务发现配置上游

与直接配置上游不同,你可以使用如 Consul、Eureka、Nacos 或 Kubernetes 服务发现(Service Discovery)等服务发现机制来动态探测上游节点。

信息

服务(Service)一旦发布,便无法直接在已配置的上游节点和服务发现之间切换。你必须通过金丝雀发布来配置。

前提条件

  1. 安装 API7 企业版
  2. 网关组中至少包含一个网关实例

Kubernetes

添加服务注册中心连接

  1. 从侧边导航栏选择你的网关组下的 服务注册中心(Service Registries),然后点击 添加服务注册中心连接(Add Service Registry Connection)
  2. 在对话框中,执行以下操作:
  • 名称(Name) 字段中,输入 Registry for Test
  • 发现类型(Discovery Type) 字段中,选择 Kubernetes
  • 填写 API Server 地址(API Server Address)Token 值(Token Value) 字段。
  • 点击 添加(Add)
  1. 等待并确保该服务注册中心的状态变为 正常(Healthy)

配置上游

  1. 从侧边导航栏选择你的网关组下的 已发布服务(Published Services),然后点击 添加服务(Add Service)

  2. 选择 手动添加(Add Manually)

  3. 添加服务(Add Service) 对话框中,执行以下操作:

    • 名称(Name) 字段中,输入 httpbin
    • 服务类型(Service Type) 字段中,选择 HTTP (七层代理)
    • 上游协议(Upstream Scheme) 字段中,选择 HTTP
    • 如何寻找上游(How to find the upstream) 字段中,选择 使用服务发现(Use Service Discovery)
    • 服务注册中心(Service Registry) 字段中选择 Registry for Test,然后依次选择对应的 命名空间(Namespace)服务名称(Service Name)
  4. 点击 添加(Add)。这将会创建一个处于“无版本(No Version)”状态的新服务。

下面是一个交互式演示,提供了连接 Kubernetes 服务发现的实际上手介绍。你可以通过点击并按照步骤操作,以更好地了解如何在 API7 网关中使用该功能。

Nacos

添加服务注册中心连接

  1. 从侧边导航栏选择你的网关组下的 服务注册中心(Service Registries),然后点击 添加服务注册中心连接(Add Service Registry Connection)
  2. 在对话框中,执行以下操作:
  • 名称(Name) 字段中,输入 Registry for Test
  • 发现类型(Discovery Type) 字段中,选择 Nacos
  • 主机(Hosts) 字段中,填写主机地址和端口。
  • 获取 Token 方式(How to Get Token) 字段中,选择一种获取 Token 的方式并配置相关参数。
  • 点击 添加(Add)
  1. 等待并确保该服务注册中心的状态变为 正常(Healthy)

配置上游

  1. 从侧边导航栏选择你的网关组下的 已发布服务(Published Services),然后点击 添加服务(Add Service)

  2. 选择 手动添加(Add Manually)

  3. 添加服务(Add Service) 对话框中,执行以下操作:

    • 名称(Name) 字段中,输入 httpbin
    • 服务类型(Service Type) 字段中,选择 HTTP (七层代理)
    • 上游协议(Upstream Scheme) 字段中,选择 HTTP
    • 如何寻找上游(How to find the upstream) 字段中,选择 使用服务发现(Use Service Discovery)
    • 服务注册中心(Service Registry) 字段中选择 Registry for Test,然后依次选择 命名空间(Namespace)组(Group)服务名称(Service Name)
  4. 点击 添加(Add)。这将会创建一个处于“无版本(No Version)”状态的新服务。

下面是一个交互式演示,提供了连接 Nacos 服务发现的实际上手介绍。你可以通过点击并按照步骤操作,以更好地了解如何在 API7 网关中使用该功能。

其他资源