微服務閘道器SIA-GateWay使用指南

宜信技術學院發表於2019-08-14

一、DeskTop

DeskTop展示當前註冊的各個閘道器組,點選一個 閘道器組 將選中該閘道器組並跳轉至首頁。

每個閘道器組包括如下四項:

  • 角色值:閘道器應用名字首,用於區分閘道器組
  • 擁有例項:閘道器組例項個數
  • 閘道器狀態:閘道器組當前狀態
  • 閘道器描述:閘道器組描述資訊,可修改

二、首頁

首頁展示閘道器當前的執行情況。

主要包含如下部分:

  • 閘道器呼叫趨勢:每小時各節點呼叫量,共30小時
  • 閘道器健康狀況:每小時各節點健康狀況,共30小時
  • 監控告警:執行過程中傳送的警告
  • 閘道器叢集狀態:各節點CPU、JVM和連線數監控,其中CPU和JVM資料取自Actuator

三、路由管理

路由管理分如下四部分:

3.1 新建路由

新建路由填寫如下選項:

  • 路由ID:路由唯一標示,也是資料庫表primary key
  • 閘道器叢集組名:填寫當前閘道器組名,右上角可見
  • 應用名稱:選填,一般填應用名
  • 匹配路徑:後端服務的path
  • 後端服務策略:存在如下三種選擇:
後端服務策略 說明
後端服務ID 填寫註冊到註冊中心的應用名,路由匹配時將根據註冊中心的服務列表匹配對應例項
後端服務URL 路由匹配後直接轉發到填寫的URL
ListofServer 路由匹配後使用輪詢策略選擇一個例項轉發
  • 後端服務URL:後端服務策略選擇後端服務URL和ListofServer時填寫後端ip:port
  • 字首是否生效:選擇是則真正的匹配路徑= 匹配路徑 +公共字首

3.2 路由匯入匯出

路由匯入匯出可用於測試環境與生產環境路由資料同步

  • 路由匯出:預設匯出當前閘道器組全部路由,可選擇部分路由匯出,點選 路由匯出 將下載routerList.json檔案
  • 路由匯入:點選 路由匯入 選擇匯入的路由檔案,匯入後將提示匯入成功和失敗的路由ID,匯入的路由為編輯狀態

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相關開源產品連結

  • 微服務任務排程框架 :https://github.com/siaorg/sia-task
  • 微服務路由閘道器 :https://github.com/siaorg/sia-gateway
  • Rabbitmq佇列服務PLUS:https://github.com/siaorg/sia-rabbitmq-plus


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69918724/viewspace-2653628/,如需轉載,請註明出處,否則將追究法律責任。

相關文章