使用服务发现配置上游
与直接配置上游不同,你可以使用如 Consul、Eureka、Nacos 或 Kubernetes 服务发现(Service Discovery)等服务发现机制来动态探测上游节点。
信息
服务(Service)一旦发布,便无法直接在已配置的上游节点和服务发现之间切换。你必须通过金丝雀发布来配置。
前提条件
- 安装 API7 企业版。
- 网关组中至少包含一个网关实例。
Kubernetes
添加服务注册中心连接
- 从侧边导航栏选择你的网关组下的 服务注册中心,然后点击 新增服务注册中心。
- 在对话框中,执行以下操作:
- 在 名称 字段中,输入
Registry for Test。 - 在 发现类型 字段中,选择
Kubernetes。 - 填写 API 服务器地址 和 令牌值 字段。
- 点击 新增。
- 等待并确保该服务注册中心的状态变为
正常(Healthy)。
配置上游
-
从侧边导航栏选择你的网关组下的 服务,然后点击 新增服务。
-
选择 手动新增。
-
在 新增服务 对话框中,执行以下操作:
- 在 名称 字段中,输入
httpbin。 - 在 服务类型 字段中,选择 HTTP(七层)。
- 在 上游协议 字段中,选择
HTTP。 - 在 如何找到上游 字段中,选择 自动发现服务。
- 在 服务注册中心 字段中选择
Registry for Test,然后依次选择对应的 命名空间 和 服务名称。
- 在 名称 字段中,输入
-
点击 新增。这将会创建一个新服务。
下面是一个交互式演示,提供了连接 Kubernetes 服务发现的实际上手介绍。你可以通过点击并按照步骤操作,以更好地了解如何在 API7 网关中使用该功能。
Nacos
添加服务注册中心连接
- 从侧边导航栏选择你的网关组下的 服务注册中心,然后点击 新增服务注册中心。
- 在对话框中,执行以下操作:
- 在 名称 字段中,输入
Registry for Test。 - 在 发现类型 字段中,选择
Nacos。 - 在 主机(Hosts) 字段中,填写主机地址和端口。
- 在 获取 Token 方式(How to Get Token) 字段中,选择一种获取 Token 的方式并配置相关参数。
- 点击 新增。
- 等待并确保该服务注册中心的状态变为
正常(Healthy)。
配置上游
-
从侧边导航栏选择你的网关组下的 服务,然后点击 新增服务。
-
选择 手动新增。
-
在 新增服务 对话框中,执行以下操作:
- 在 名称 字段中,输入
httpbin。 - 在 服务类型 字段中,选择 HTTP(七层)。
- 在 上游协议 字段中,选择
HTTP。 - 在 如何找到上游 字段中,选择 自动发现服务。
- 在 服务注册中心 字段中选择
Registry for Test,然后依次选择 命名空间、组 和 服务名称。
- 在 名称 字段中,输入
-
点击 新增。这将会创建一个新服务。
下面是一个交互式演示,提供了连接 Nacos 服务发现的实际上手介绍。你可以通过点击并按照步骤操作,以更好地了解如何在 API7 网关中使用该功能。