目前微服务网关支持从注册中心添加服务和从EDAS关联服务两种场景,本文介绍从EDAS关联服务的配置流程。

前提条件

已经部署微服务(微服务应用Demo)到EDAS,请参见部署应用到EDAS

背景信息

微服务部署到EDAS后,可采用从EDAS关联服务方案,免去在微服务网关侧添加注册中心和服务的步骤,提升服务发布效率。

如果您的微服务是部署到阿里云其他产品上,只能选用从注册中心添加服务的方案。

Kong网关不支持从EDAS关联服务。

绑定EDAS命名空间

  1. 登录微服务网关控制台
  2. 在顶部菜单栏选择地域。
  3. 在左侧导航栏选择网关管理
  4. 网关管理页面单击网关名称。
  5. 网关详情页面左侧导航栏单击网关详情
  6. 网关详情页面基本信息区域,单击绑定EDAS
    说明 Kong网关不支持从EDAS关联服务。
  7. 绑定EDAS对话框,选择目标EDAS命名空间,单击确认
    绑定EDAS
    绑定EDAS命名空间后,在基本信息区域显示EDAS命名空间的信息。基本信息-EDAS命名空间

新建API

  1. 网关管理页面单击网关名称。
  2. 网关详情页面左侧导航栏单击API管理
  3. API管理页面左上角单击新建API
  4. 新建API对话框设置API参数,然后单击确认
    新建API
    参数 说明
    API名称 仅限字母、数字和下划线(_),最多64个字符,必须以字母开头。
    API访问路径 该API的访问路径,例如/order/query
    API中文名称 API的中文名称,最多16个字符。
    API描述 API的描述信息。
    关联的服务 当您需要从EDAS关联服务时,此处无需设置。

为API添加策略

  1. API管理页面单击API名称。
  2. API详情页面的策略区域确定目标链路,不同链路的策略作用范围不同。
    • 请求处理:网关接收到API请求后,最先执行的处理环节。
    • 响应处理:网关在生成API请求后,最后执行的处理环节。
    • 后端请求处理:网关在发起后端微服务的请求前,最后执行的处理环节。
    • 后端响应处理:网关在接收后端微服务的响应后,最先执行的处理环节。
    说明 一般只需配置请求处理响应处理两个环节,若涉及需特别强调时机差异处理时可配置后端处理。
  3. 在目标链路内添加策略,您可以选择以下任一方式添加策略:

    添加策略包含创建策略选择已有策略两种方式。

    说明
    • 当您是从EDAS关联服务时,必须为API添加路由策略,否则API无法发布。
    • 当您是从EDAS关联服务时,为API添加策略时必须使用真实的serviceIdserviceId请从EDAS控制台微服务治理 > Spring Cloud > 服务查询页面的目标命名空间下获取,该命名空间页面下的服务名即是serviceId
    • 如果需要添加鉴权策略,则需要先创建凭证。具体操作,请参见新建凭证
    • 创建新策略
      1. 在目标链路区域单击创建策略
      2. 创建策略对话框选择策略类型,并设置策略信息,然后单击确认创建新策略
        参数 说明
        策略名称 仅限字母、数字和下划线(_),最长255个字符,必须以字母开头。
        策略别名 易于辨识策略的别名信息。
        策略类型 根据需要选择策略,本示例选择路由-ZUUL
        启用状态 策略的启用状态,默认开启。
        策略配置 根据需要配置策略,也可以在模板基础上配置其它参数。
    • 选择已有策略
      1. 在目标链路区域单击选择已有策略
      2. 已有策略对话框选中目标策略,单击确认选择已有策略
      3. 在目标链路内单击策略名称,在编辑策略对话框中开启策略启用开关,然后单击确认开启策略启用开关
        说明 选择已有策略,默认不启用该策略,未启用的策略携带未启用标识标识。如果需要启用,请开启启用状态开关。
  4. 可选:同一个链路中如果存在多条策略,鼠标悬停在策略名称上并移动出现的移动按钮 图标,调整策略的优先级。

发布API

  1. 网关详情页面左侧导航栏单击API管理
  2. API管理页面单击API名称。
  3. API详情页面左下角单击保存并发布
    保存并发布该API后,会触发API发布流程,在发布详情对话框中可以查看API发布的进度和状态。发布详情

    返回API管理页面,该API的运行状态已发布

结果验证

在浏览器地址栏输入http://微服务网关绑定的EIP:80/demo/user/rest,按enter键,界面返回Hello from [8080]!demo返回示例值
  • 微服务绑定的EIP,即是网关入口SLB绑定的EIP。关于绑定EIP的详细操作,请参见绑定EIP
  • 访问路径中的“/demo”只是示例,实际情况取决于您在路由策略中设置的path属性值。
说明 如果您需要访问设置了鉴权策略的服务,请参见鉴权结果验证