Edge Microgateway 總覽

您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

Edge Microgateway 3.3.x 版

Apigee Edge Microgateway 是 API 的安全 HTTP 訊息處理器。其主要工作是安全地處理來自後端服務的請求和回應,並異步將寶貴的 API 執行資料推送至 Apigee Edge,供 Edge Analytics 系統使用。Edge Microgateway 安裝和部署作業簡單,您可以在幾分鐘內啟用及執行執行個體。

通常,Edge Microgateway 會安裝在與後端目標服務相近的受信任網路中。它提供企業級安全防護,以及一些重要的外掛程式功能 (例如尖峰封鎖、配額和分析),但不包含 Apigee Edge 的完整功能或足跡。您可以將 Edge Microgateway 安裝在相同資料中心,甚至可以安裝在後端服務所在的電腦上。

您可以將 Edge Microgateway 做為獨立程序執行,也可以在 Docker 容器中執行。請參閱「使用 Docker 與 Edge Microgateway」。您也可以使用 Edge Microgateway,為在 Kubernetes 叢集中執行的服務提供 Apigee API 管理功能。無論您是要將現有服務和 API 遷移至 Kubernetes 堆疊,還是要建立新的服務和 API,Edge Microgateway 都能提供簡潔的 API 管理體驗,包括安全性、流量管理、分析、發布等。請參閱 將 Edge Microgateway 與 Kubernetes 整合

常見用途

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

  • 縮短在附近執行的服務 API 流量的延遲時間。舉例來說,如果 API 使用者和供應者相距不遠,您不一定希望 API 必須經過中央閘道。
  • 為安全性或法規遵循目的,將 API 流量控制在企業核准的範圍內。
  • 如果網路連線暫時中斷,系統會繼續處理訊息。
  • 為在 Kubernetes 叢集中執行的服務提供 Apigee API 管理功能。請參閱 將 Edge Microgateway 與 Kubernetes 整合

如需其他用途,請參閱這篇 Apigee 社群文章。

主要功能和優點

功能 優點
安全性 Edge Microgateway 會使用 Apigee Edge 向每個用戶端應用程式核發的已簽署存取權杖或 API 金鑰,驗證要求。
快速部署 與 Apigee Edge 的完整部署作業不同,您可以在幾分鐘內部署及執行 Edge Microgateway 執行個體。
網路距離 您可以在 Edge Microgateway 與後端目標 API 互動的相同機器、子網路或資料中心中,安裝及管理 Edge Microgateway。
數據分析 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 與現有的應用程式監控和管理基礎架構和程序整合。請注意,Edge Microgateway 不支援 Apigee API Monitoring
記錄 記錄檔會詳細列出 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 會安裝在同一台電腦上。單一 Edge Microgateway 執行個體可用於前端多個後端目標應用程式

在網路上部署 Edge Microgateway。它會處理來自用戶端的 API 要求,並呼叫目標服務。微型閘道會與 Apigee Edge Cloud 通訊,傳送 Proxy 和數據分析資料。
圖 1: 最簡單的 Edge Microgateway 部署方式

不同機器

由於用戶端、Edge Microgateway 和後端 API 實作之間的所有通訊都是透過 HTTP,因此您可以在 API 實作所在的不同電腦上安裝 Apigee Edge Microgateway,如圖 2 所示。

Edge Microgateway 會部署在一台機器上,而後端服務則會部署在其他位置。API 要求會由微型閘道處理,要求會傳送至後端目標。Microgateway 會與 Apigee Edge Cloud 通訊,傳送 Proxy 和數據分析資料。
圖 2: Edge Microgateway 與後端目標 API 分開

使用負載平衡器

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

負載平衡器會將流量傳送至 Edge Microgateway 的多個執行個體。Microgateway 的執行個體會與 Edge Cloud 通訊,並將要求轉送至目標服務。
圖 3: 使用負載均衡器執行 Edge Microgateway

內部網路部署

如圖 4 所示,您可以使用 Edge Microgateway 保護內部網路流量,同時透過 Apigee Edge 保護網際網路流量。假設 API 端點 /orders 是透過 Apigee Edge Cloud 進行 Proxy,並命中後端目標 https://mycompany.com/orders。這可由左側的目標 API 實作項目代表。這個 API 接著可能會呼叫由右側目標實作項目代表的多個 API 端點。例如,它可能會在內部呼叫 /customers/transactions。另請參閱 Apigee 社群的 這篇貼文

建立給 Edge Cloud 的 API Proxy 會傳送至內部網路上的目標服務,而目標服務會將要求傳送至內部網路上的 Edge Microgateway。然後,微閘道會將要求傳送至內部網路上的其他目標 API 服務。
圖 4: 執行 Edge Microgateway 以保護內部網路流量

依附於 Apigee Edge

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

  • 啟動後,Edge Microgateway 會取得 Apigee Edge 機構中所有 API 產品的清單,以及特別的「Edge Microgateway 感知」Proxy 清單。針對每個傳入的用戶端要求,Edge Microgateway 會判斷要求是否與其中一個 API Proxy 相符,然後根據與該 Proxy 相關聯的 API 產品中的金鑰,驗證傳入的存取權權杖或 API 金鑰。
  • Apigee Edge Analytics 系統會儲存及處理從 Edge Microgateway 非同步傳送的 API 資料。
  • Apigee Edge 會提供用來簽署存取權權杖的憑證,或是提供用戶端透過 Edge Microgateway 發出 API 呼叫時所需的 API 金鑰。您可以使用 Edge Microgateway 提供的 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 感知 Proxy 的須知事項

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

您或您的 API 團隊可以使用 Apigee Edge 管理 UI 或其他方式,在 Apigee Edge 上建立這些 Proxy。這項操作很簡單,詳情請參閱「設定 Edge Microgateway」一文。

Edge Microgateway 感知 Proxy 的特性如下:

  • 這些參數會向 Edge Microgateway 提供兩項重要資訊:基準路徑和目標網址。
  • 必須指向 HTTP 目標端點。後端目標不得是 TargetEndpoint 定義中 ScriptTarget 元素參照的 Node.js 應用程式。詳情請參閱上述附註。
  • Proxy 名稱前面必須加上 edgemicro_。例如:edgemicro_weather
  • 您無法在這些 Proxy 中新增政策或條件式流程。如果您嘗試,系統會忽略這些內容。否則,Edge Microgateway 感知 Proxy 會顯示在 Edge 管理 UI 中,與 Edge 上的任何其他 API Proxy 相同。
  • 可將其納入產品,並與開發人員應用程式建立關聯。
  • 流量資料會顯示在 Edge Analytics 中。
  • 無法使用 Apigee Edge Trace 工具追蹤。

關於 Edge Microgateway 和 Apigee Edge Analytics

當 API 流量流經 Edge Microgateway 時,Edge Microgateway 會緩衝並異步將 API 執行資料傳送至 Apigee Edge,Edge Analytics 系統會在該處儲存及處理資料。這種非同步通訊可讓 Edge Microgateway 充分利用 Edge 分析功能,同時維持相對較小的占用空間,並減少處理額外負擔或阻斷。您和團隊可以使用 Edge Analytics 的完整資訊主頁和自訂報表功能,分析經過 Edge Microgateway 的流量。

Proxy traffic 資訊主頁會顯示特定期間內的 API 流量、開發人員參與度資料,以及按開發人員應用程式細分的流量組成。
圖 5:Edge 上的 Proxy Traffic 資訊主頁

如要進一步瞭解 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 會取得這些憑證一次。
  • 提供平台,可將 API 資源整合至產品、註冊及管理開發人員,以及建立及管理開發人員應用程式。

用戶端應用程式驗證

Edge Microgateway 支援透過存取權杖和 API 金鑰驗證用戶端。安全性金鑰和符記是由 Apigee Edge 產生,並由 Edge Microgateway 驗證每個 API 呼叫。如果啟用 OAuth 外掛程式,Edge Microgateway 會檢查已簽署的存取權憑證或 API 金鑰,如果有效,API 呼叫會繼續傳送至後端目標。如果無效,系統會傳回錯誤。

如要瞭解取得及使用存取權杖和 API 金鑰所需的步驟,請參閱「設定 Edge Microgateway」。

在 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 代理程式實作項目移至 Edge Microgateway 嗎?

您無法將含有相關聯政策或條件式流程的現有 Proxy 遷移至 Edge Microgateway。Edge Microgateway 要求您建立新的「microgateway-aware」Proxy。這些 Proxy 必須使用特殊前置字串 edgemicro_ 命名。在啟動時,Edge Microgateway 會偵測這些 edgemicro_* 代理程式,並下載每個代理程式的設定資訊。這項資訊包括目標網址和資源路徑。從那時起,系統就不會使用這些 Proxy。這些 Proxy 中的任何政策或條件式流程都不會執行。

使用微型網關感知 Proxy 的另一個原因是,Edge Microgateway 會非同步將分析資料推送至 Edge,以便為每個微型網關感知 Proxy 提供資料。接著,您可以查看微型閘道感知 Proxy 的數據分析資料,就像在 Edge Analytics 使用者介面中查看任何其他 Proxy 一樣。

設定主題會逐步引導您完成所有步驟,讓您開始透過 Edge Microgateway 代理 API 呼叫,包括在 Apigee Edge 上執行幾個簡單步驟,設定 Edge Microgateway 所需的設定,包括建立微型閘道感知 Proxy。請參閱「設定 Edge Microgateway」一文。

進一步瞭解 Edge Microgateway

Apigee 提供下列資源:

  • Edge Microgateway 說明文件:說明文件包含安裝指南和入門教學課程,以及完整的參考資訊和設定資訊。

  • 影片:Apigee 的「開發人員四分鐘影片」系列包含一系列 Edge Microgateway 相關集數。

  • Apigee 社群是提問的好地方,您可以在這裡發問,並從其他人提出的問題和解答中受益。