微服务网关SIA-GateWay使用指南

一、DeskTop

DeskTop展示当前注册的各个网关组,点击一个 网关组 将选中该网关组并跳转至首页。

每个网关组包括如下四项:

  • 角色值:网关应用名前缀,用于区分网关组
  • 拥有实例:网关组实例个数
  • 网关状态:网关组当前状态
  • 网关描述:网关组描述信息,可修改

二、首页

首页展示网关当前的运行情况。

主要包含如下部分:

  • 网关调用趋势:每小时各节点调用量,共30小时
  • 网关健康状况:每小时各节点健康状况,共30小时
  • 监控告警:运行过程中发送的警告
  • 网关集群状态:各节点CPU、JVM和连接数监控,其中CPU和JVM数据取自Actuator

三、路由管理

路由管理分如下四部分:

3.1 新建路由

新建路由填写如下选项:

  • 路由ID:路由唯一标示,也是数据库表primary key
  • 网关集群组名:填写当前网关组名,右上角可见
  • 应用名称:选填,一般填应用名
  • 匹配路径:后端服务的path
  • 后端服务策略:存在如下三种选择:
后端服务策略 说明
后端服务ID 填写注册到注册中心的应用名,路由匹配时将根据注册中心的服务列表匹配对应实例
后端服务URL 路由匹配后直接转发到填写的URL
ListofServer 路由匹配后使用轮询策略选择一个实例转发
匹配路径

3.2 路由导入导出

路由导入导出可用于测试环境与生产环境路由数据同步

路由导出
路由导入

3.3 路由操作

路由操作分为以下两部分:

  • 修改路由状态:路由状态分为编辑、发布、下线三种状态,对应有发布、下线、修改、删除和查看操作
  • 路由组件管理:API网关提供了功能丰富的组件,在组件管理中绑定了路由后,可在该路由下查看或配置组件,各组件功能和用法参考组件管理

3.4 路由拓扑

点击 路由拓扑图 展示路由的实时拓扑图,拓扑图分为三段:应用->网关->后端服务,如果该路由没有请求则路由拓扑图为空。

四、组件管理

网关提供了功能丰富的公共组件,同时支持用户上传第三方组件。使用组件时首先需要在 组件管理 中绑定路由,然后在 路由管理 中查看或配置组件。

4.1 公共组件

公共组件描述说明了组件的功能和用法,分为如下几种:

  • 日志:分为请求日志组件和影响日志组件
  • 灰度:分为蓝绿部署组件和金丝雀组件
  • 监控:统计组件,统计路由访问情况
  • 限流:限流组件,限制路由单位时间请求数
  • 安全:安全认证组件和黑白名单组件

4.2 第三方组件

第三方组件由用户自定义实现,上传后即可使用。点击 第三方组件 查看已经上传的第三方组件,点击 组件上传 可上传自定义的第三方组件。

五、网关监控

网关监控分为两部分:运行状态监控和拓扑图

5.1 运行状态监控

运行状态监控包含如下监控项:

  • 监控:集成Hystrix dashboard
  • 日志:展示当前日志文件内容,数据来自Actuator
  • JVM:监控负载、类加载、线程等,数据来自Actuator
  • 内存:监控JVM内存,数据来自Actuator
  • 垃圾回收:监控parnew和CMS回收器,数据来自Actuator
  • 配置:包括内部和外部的配置文件,数据来自Actuator

5.2 拓扑图

拓扑图展示了该网关的服务流图,是全部路由拓扑图的集合。

六、日志管理

日志管理集成了Kibana,用户点击 日志管理 时将跳转至Kibana展示网关组ES索引的日志数据。如果路由绑定了日志请求组件或日志响应组件,

可在 路由管理操作 -> 请求日志组件响应日志组件 跳转。

七、熔断管理

熔断管理展示了网关运行过程中被Hystrix熔断的请求信息,包括熔断类型、错误信息和堆栈信息等。

八、注册中心管理

注册中心管理主要包括两部分:注册信息查询和动态修改注册中心地址

8.1 注册信息查询

注册信息来自于当前网关组所在的Eureka,点击 查询 符合条件的应用。

8.2 动态修改注册中心地址

Eureka服务端地址默认使用本地配置,用户可通过 设置Eureka 修改Eureka地址,设置成功后新设置的Eureka地址将保存在数据库中,

同时通知该网关组节点修改内存中注册中心地址并重新注册。点击 重置Eureka 将清除数据库中的Eureka地址并通知该网关组节点使用本地配置。

设置/重置后将弹窗提示结果。

注册中心地址设置/重置成功条件:

发布

九、路由联通性测试

支持GET和POST两种方式测试路由是否联通。

十、网关Swagger

网关Swagger整合了注册中心注册的服务的全部网关接口文档,可通过右上角选择不同服务查看接口文档。

十一、系统黑名单

系统黑名单可设置全局黑名单,目前支持IP拦截策略,设置后所有来自该IP的请求都将被拦截。

十二、网关审计

网关审计展示了所有在网关管理端操作的用户、行为和性能,方便监控和分析用户行为。

十三、网关设置

网关设置分为三部分:预警邮箱、日志级别操作、查看版本号

13.1 预警邮箱

发生预警时将发送预警邮件至设置的邮箱

13.2 日志级别操作

网关日志级别默认为INFO,用户调试时可查看或动态调整日志级别。日志名可选com.creditease和root,日志级别可选INFO和DEBUG。

在Logback等日志框架中,logger层级类似于java继承,以名称组织,使用”.”将logger名切分父logger与子logger,当子logger未设置日志级别,

则使用父日志级别,直到ROOT,ROOT相当于Java中的Object。子日志级别被设置后,父(含ROOT)日志级别将不再对子日志有效,

类似于java子类重写父类方法。

13.3 查看版本号

网关版本号用于区分网关各实例的版本,默认配置下版本号形式为:sag_x.y_timestamp,timestamp为打包时间戳,

可在配置文件中通过 zuul.version 修改。

SIA相关开源产品链接