Edge Microgateway 總覽

您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件
資訊

Edge Microgateway 2.3.x 版

適用對象

本主題將概略介紹適合所有觀眾的 Edge Microgateway。

什麼是 Apigee Edge Microgateway?

Apigee Edge Microgateway 是一款安全的 API 訊息處理工具,適用於 API。該元件的主要工作是安全地處理往來與後端服務之間的要求與回應,同時以非同步的方式將寶貴的 API 執行資料推送至 Apigee Edge,供 Edge Analytics 系統使用。Edge Microgateway 容易安裝及部署,您只要幾分鐘就能設定好執行個體,並開始執行。

一般而言,Edge Microgateway 會安裝在鄰近後端目標服務的受信任網路中。這項服務可提供企業級的安全防護機制,並提供一些重要外掛程式功能 (例如尖峰流量防範、配額和數據分析),但不具備 Apigee Edge 的完整功能或足跡。您可以視需要將 Edge Microgateway 安裝在相同的資料中心,甚至是與後端服務相同的機器。

主要用途

混合雲 API 管理解決方案 (例如 Edge Microgateway) 的常見用途包括:

  • 縮短在鄰近位置執行服務的 API 流量延遲時間。舉例來說,如果您的 API 取用端和生產端相距不遠,您就不需要讓 API 通過中央閘道。

  • 基於安全性或法規遵循目的,將 API 流量保持在企業核准的範圍內。
  • 網際網路連線暫時中斷時,繼續處理訊息。
  • 另請參閱 Apigee 社群中的本用途討論。

主要特色與優點

  • 安全性。Edge Microgateway 能夠使用已簽署的存取權杖或 API 金鑰來驗證要求,該金鑰是由 Apigee Edge 核發給每個用戶端應用程式。
  • 快速部署。與 Apigee Edge 完整部署不同的是,您可以在幾分鐘內部署及執行 Edge Microgateway 執行個體。
  • 網路鄰近位置:您可以在與 Edge Microgateway 互動的後端目標 API 相同的機器、子網路或資料中心中,安裝及管理 Edge Microgateway。
  • Analytics (分析)。Edge Microgateway 以非同步方式將 API 執行資料傳送至 Apigee Edge,並由 Edge Analytics 系統處理。您可以使用完整的 Edge Analytics 指標、資訊主頁和 API。
  • 縮短延遲時間。所有與 Apigee Edge 的通訊皆為非同步狀態,不會做為處理用戶端 API 要求的一部分進行。這可讓 Edge Microgateway 收集 API 資料並傳送至 Apigee Edge,而不會影響延遲時間。
  • 熟悉。Edge Microgateway 能夠與 Edge 管理員熟知的 Apigee Edge 功能使用及互動,例如 Proxy、產品和開發人員應用程式。
  • 設定:您不需要編寫程式即可設定及管理 Edge Microgateway。所有作業都是透過設定處理。
  • 便利。您可以將 Edge Microgateway 與現有的應用程式監控及管理基礎架構和程序整合。
  • 簡單:安裝、設定及維護都很簡單。
  • Logging。記錄檔會詳細列出 Edge Microgateway 的 API 處理期間發生的所有一般和例外狀況事件。
  • CLI。指令列介面可讓您啟動、停止及重新啟動 Edge Microgateway、擷取作業統計資料、查看記錄檔、要求存取權杖等。

Edge Microgateway 基礎知識

本節說明 Edge Microgateway 的運作方式,以及基本架構、設定和部署。

為什麼要使用 Edge Microgateway?

將 API 管理元件移至後端目標應用程式可縮短網路延遲時間。雖然您可以在私人雲端環境中安裝 Apigee Edge 的地端部署環境,但完整的 Apigee Edge 不但龐大且複雜,也無法完整支援完整功能組和重要資料,例如金鑰管理、營利和數據分析。這表示各資料中心並非適合在地端部署環境中部署 Apigee Edge。

有了 Edge Microgateway,您就能在後端應用程式附近執行,且不會佔用太多空間應用程式。此外,您還可以充分運用 Apigee Edge 來提供數據分析、安全性和其他功能。

部署情境範例

本節說明 Edge Microgateway 的多種部署情境。

同一部機器

圖 1 顯示以最簡單可能的設定部署 Edge Microgateway 的要求處理路徑,其中 Edge Microgateway 和後端目標 API 安裝在同一部機器中。

圖 1:最簡便的 Edge Microgateway 部署作業

其他機器

由於用戶端之間的所有通訊 (Edge Microgateway) 和後端 API 實作項目都是 HTTP,因此您可以在與 API 實作項目不同的機器上安裝 Apigee Edge Microgateway,如圖 2 所示。

圖 2:與後端目標 API 分開的 Edge Microgateway

Proxy 多個應用程式

單一 Edge Microgateway 執行個體可用於前端多個後端目標應用程式,如圖 3 所示。

圖 3:Edge Microgateway 可讓多個 API Proxy 前端執行多個 API Proxy

使用負載平衡器

對於 SSL 終止和/或負載平衡, Edge Microgateway 本身可由標準反向 Proxy 或負載平衡器的前端前端,如圖 4 所示。

圖 4:使用負載平衡器執行 Edge Microgateway

內部網路部署

使用 Edge Microgateway 來保護內部網路流量,同時透過 Apigee Edge 保護網際網路流量,如圖 5 所示。假設 API 端點 /orders 是透過 Apigee Edge Cloud 進行 Proxy 處理,並到達後端目標「https://mycompany.com/orders」。按一下左側的目標 API 實作項目。這個 API 可能會呼叫右側的目標實作項目代表的多個 API 端點。舉例來說,它可能會在內部呼叫 /customers/transactions。另請參閱 Apigee 社群中的 這篇文章

圖 5:執行 Edge Microgateway 以保護內部網路流量

Apigee Edge 的依附元件

Edge Microgateway 依附於 Apigee Edge 並與之互動。Edge Microgateway 必須與 Apigee Edge 通訊才能正常運作。Edge Microgateway 與 Edge 互動的主要方式如下:

  • 啟動後,Edge Microgateway 會取得「Edge Microgateway-aware」(Edge Microgateway 感知) 特殊 Proxy 的清單,以及您 Apigee Edge 機構的所有產品清單。針對每個傳入的用戶端要求,Edge Microgateway 會判斷要求是否與其中一個 API Proxy 相符,然後根據與該 Proxy 相關聯產品中的金鑰驗證傳入的存取權杖或 API 金鑰。
  • Apigee Edge Analytics 系統會儲存及處理從 Edge Microgateway 以非同步方式傳送的 API 資料。
  • Apigee Edge 提供憑證以簽署存取權杖,或提供用戶端透過 Edge Microgateway 進行 API 呼叫時所需的 API 金鑰。您可以使用 CLI 指令取得這些權杖。

一次性設定

您必須先設定 Edge Microgateway,才能與 Apigee Edge 機構通訊。在啟動期間,Edge Microgateway 會透過 Apigee Edge 啟動啟動程序。Edge Microgateway 會從 Apigee Edge 擷取所需資訊,以便自行處理 API 呼叫,包括部署在 Apigee Edge 上的 Edge Microgateway 感知 Proxy。我們稍後會詳細討論這些 Proxy。

Edge Microgateway 不須與 Apigee Edge 共置,Apigee Edge 公開和私有雲產品也能正常運作。

如要瞭解相關做法,請直接參閱「設定及設定 Edge Microgateway」,瞭解如何使用便利的 CLI 指令,逐步完成 Edge Microgateway 的設定及設定程序。

需瞭解 Edge Microgateway 感知 Proxy

Edge Microgateway 感知的 Proxy 會提供特定資訊,讓 Edge Microgateway 處理用戶端 API 要求。當 Edge Microgateway 啟動時,系統會從 Apigee Edge 下載這些 Proxy 到 Edge Microgateway 的相關資訊。

您可以透過 Apigee Edge 管理 UI 或其他方式,在 Apigee Edge 中建立這些 Proxy,完全由您或您的 API 團隊決定。方法很簡單,只要按照設定及設定 Edge Microgateway 一文中的細節說明即可。

Edge Microgateway 感知 Proxy 的特性包括:

  • 微感知 Proxy 提供 Edge Microgateway 兩項重要資訊:基礎路徑和目標網址。
  • 微感知 Proxy 必須指向 HTTP 目標端點。後端目標不能是 TargetEndpoint 定義中 ScriptTarget 元素參照的 Node.js 應用程式。詳情請參閱上述注意事項。
  • Proxy 名稱必須加上 edgemicro_ 前置字串。例如:edgemicro_weather
  • 無法在 Apigee Edge 管理 UI 的 Proxy 編輯器中編輯 Edge Microgateway Proxy。也就是說,您無法新增政策或新增條件式流程。(或者,如果您嘗試這麼做,系統會忽略這些錯誤)。
  • 否則,Edge Microgateway Proxy 在 Edge Management UI 中的顯示方式,與 Edge 上的任何其他 API Proxy 相同。
  • 就像 Edge 上的任何 API Proxy 一樣,Edge Microgateway Proxy 可以隨附於產品中,也可以與開發人員應用程式建立關聯。
  • 就像其他 Proxy 一樣,您可以追蹤 Edge Microgateway Proxy 分析。
  • 無法使用 Apigee Edge Trace 工具追蹤 Edge Microgateway Proxy。

進一步瞭解 Edge Microgateway 和 Apigee Edge Analytics

當 API 流量通過 Edge Microgateway 時,Edge Microgateway 緩衝區會以非同步方式將 API 執行資料傳送至 Apigee Edge,其中資料會由 Edge Analytics 系統儲存及處理。這種非同步通訊可讓 Edge Microgateway 運用 Edge Analytics 功能,同時盡可能減少所需的處理量,盡可能減少處理負擔或封鎖負擔。和您的團隊可以使用全套 Edge Analytics 資訊主頁和自訂報表功能,分析通過 Edge Microgateway 的流量。

圖 6:Edge 上的 Proxy 流量資訊主頁

如要進一步瞭解 Edge Analytics,請參閱「Analytics (分析) 資訊主頁」一文。

關於 Edge Microgateway 安全性

Apigee Edge 的角色

如前所述,Apigee Edge 在保護所有傳送至 Edge Microgateway 的用戶端要求時,扮演了關鍵角色。Apigee Edge 的主要角色如下:

  • 提供用戶端憑證做為 API 金鑰,或產生有效的存取權杖,供用戶端透過 Edge Microgateway 進行安全的 API 呼叫。
  • 提供憑證,讓 Edge Microgateway 將 API 執行資料傳送至 Apigee Edge Analytics 系統。在初始設定步驟中,Edge Microgateway 會產生一次這些憑證。如需詳細步驟,請參閱設定及設定 Edge Microgateway
  • 提供整合 API 資源至產品、註冊及管理開發人員,以及建立及管理開發人員應用程式的平台。

用戶端應用程式驗證

  • Edge Microgateway 能夠透過存取權杖和 API 金鑰來支援用戶端驗證作業。安全金鑰和權杖是由 Apigee Edge 產生,並由 Edge Microgateway 針對每個 API 呼叫進行驗證。
  • 如果 OAuth 外掛程式已啟用,Edge Microgateway 會檢查已簽署的存取權杖或 API 金鑰。如果金鑰有效,API 呼叫就會繼續傳送至後端目標。如果無效,系統會傳回錯誤。
  • 如要瞭解取得及使用存取權杖的必要步驟,請參閱「設定及設定 Edge Microgateway」。如需 API 金鑰的相關資訊,請參閱 Edge Microgateway 的作業和設定參考資料中的「使用 API 金鑰安全性」一節。

在 Apigee Edge 上驗證 Edge Microgateway

  • 非同步呼叫 Edge Microgateway 後,如要更新 Apigee Edge 中的數據分析資料,則須進行驗證。這項驗證是以透過 CLI 傳送至 Edge Microgateway 的公開/密鑰組提供,或使用環境變數。首次安裝及啟動 Edge Microgateway 時,您只需要取得並使用這些金鑰一次。

API 產品管理平台

  • Edge 可以做為將 API 資源與產品整合的平台、註冊及管理開發人員,以及建立及管理開發人員應用程式。舉例來說,就像您可以建立和組合一般 Apigee Edge Proxy 適用的產品和開發人員應用程式等實體,也能對 Edge Microgateway Proxy 執行相同操作。為實現 API 級別的安全保障,您可以為每個「套裝組合」產生公開和私人安全金鑰。這個機制與 Apigee Edge 中 API 安全性的運作方式相同。

可以將現有的 Edge Proxy 實作項目移至 Edge Microgateway 嗎?

您無法將具有相關聯政策或條件式流程的現有 Proxy 遷移至 Edge Microgateway。您必須使用 Edge Microgateway 才能建立新的「可感知微閘道」 Proxy。這些 Proxy 必須以特殊的前置字串 (edgemicro_) 命名。啟動後,Edge Microgateway 會找出這些 Edgemicro_* Proxy,並為每個 Proxy 下載設定資訊。包括目標網址和資源路徑。從那時起,系統就不會使用 Proxy。這些 Proxy 中的任何政策或條件式流程都一律不會執行。

另一個採用微閘道感知 Proxy 的另一個原因,是 Edge Microgateway 針對各個微閘道感知 Proxy 的數據分析資料,以非同步的方式推送至 Edge。接著,您就能查看微閘道感知 Proxy 的數據分析資料,就像在 Edge Analytics 使用者介面中處理任何其他 Proxy 一樣。

這個設定主題會引導您完成透過 Edge Microgateway 進行 API 呼叫 Proxy 處理的所有步驟,其中需在 Apigee Edge 上完成幾個簡單的步驟,以便進行 Edge Microgateway 的設定,包括建立微型閘道感知 Proxy。請參閱「設定及設定 Edge Microgateway」。

我可以搭配 Edge Microgateway Proxy 使用政策嗎?

如前一節所述,您無法在 Apigee Edge 中將政策附加至「可感知微閘道」的 Proxy。Edge Microgateway 運用外掛程式提供與 Edge 政策類似的功能,例如配額、尖峰流量防範、API 金鑰安全性和 OAuth2 安全性等。請參閱「使用外掛程式」。您也可以編寫自訂外掛程式,如「開發自訂外掛程式」一文所述。

如要瞭解 Edge Microgateway,機器學習的最佳方式為何?

Apigee 提供以下資源: