什麼是 Apigee Hybrid?

部署作業的風格化圖片

Apigee Hybrid 是用於開發及管理 API Proxy 的平台,採用混合式部署模型。 混合式模型包含 Apigee 託管於雲端的管理層,以及您在支援的 Kubernetes 平台上安裝及管理的執行階段層。

集中管理所有 API

Apigee Hybrid 可協助您透過 Google Cloud 管理內部和外部 API。

透過統一的 API 管理,您可以為開發人員、合作夥伴和客戶提供一致的 API 程式體驗。

兼顧安全性和法規遵循

如果您因法律規範和安全性考量而導致您的應用程式必須採用內部部署,有了企業級混合型閘道,您就能在內部部署環境中代管及管理 Apigee hybrid 執行階段層。

您可以管理及控制執行階段,並利用現有的法規遵循、管理和安全性基礎架構。

支援您的多雲端策略

如要在成本和成效之間取得平衡,您可能必須採用混合式策略。

無論您是在探索不同的雲端供應商,還是已經選擇要採用的混合策略,您的 API 管理平台皆應能為您提供所需的靈活度。您可以在資料中心、Google Cloud 或兩者中,代管及管理企業級混合型閘道。

 

如要進一步瞭解混合式設定,請參閱這篇文章

繼續閱讀

 

 

如要安裝混合式:

立即查看!

 

混合式環境中的 API 計畫

Apigee Hybrid 包含 Google 維護的管理層,以及您在支援的 Kubernetes 平台上安裝的執行階段層。如以下圖片所示,這兩個平面都會使用 Google Cloud Platform 服務:

混合式平台的高階檢視畫面,包括管理層、執行階段層和 Google Cloud 服務

如您所見,混合式設定包含下列主要元件:

  • Apigee 執行的管理層:Google 託管於雲端並維護的一組服務。這些服務包括使用者介面、管理 API 和分析。
  • 客戶代管的執行階段層:一組容器化執行階段服務,由您在自己的 Kubernetes 叢集中設定及維護。所有 API 流量都會通過執行階段平面,並在其中處理。

    管理 Kubernetes 叢集上的容器化執行階段時,您可以利用階段發布、自動調整資源配置和容器的其他操作優勢獲得更高的靈活性。

  • Google Cloud:Google 代管的一系列雲端服務。

混合式部署的重要須知:所有 API 流量都會在您的網路範圍內處理,且由您控管;而 UI 和 API 數據分析等管理服務則會在雲端執行,並由 Google 維護。詳情請參閱「資料儲存位置」。

如要深入瞭解混合式架構,請觀看下列影片:

關於執行階段層

執行階段層是一組容器化執行階段服務,您可以在支援的 Kubernetes 平台上執行的 Kubernetes 叢集中設定及維護這些服務。所有 API 流量都會通過並在執行階段平面內處理。執行階段層包含下列主要元件:

執行階段層會在您維護的支援 Kubernetes 平台上執行的 Kubernetes 叢集中運作。

下圖顯示在執行階段平面執行的主要服務:

在混合式執行階段層執行的主要服務

如需瞭解執行階段元件的一般資訊,請參閱以下各節。此外,請參閱「執行階段服務設定總覽」。

以下各節將詳細說明這些主要執行階段平面服務。

訊息處理器

混合式訊息處理器 (MP) 會在執行階段平面上處理 API 要求及執行政策。MP 會從本機儲存空間載入所有已部署的 Proxy、資源、目標伺服器、憑證和金鑰儲存區。您可設定 Istio Ingress 控制器,將 MP 暴露給來自叢集外部的要求。

同步處理工具

Synchronizer 會從管理層擷取 API 環境的設定資料,並在執行階段層中傳播。這項下載的資料也稱為「合約」,並儲存在本機檔案系統中。

同步器會定期輪詢管理伺服器是否有變更,並在偵測到變更時下載新設定。系統會擷取設定資料,並以 JSON 檔案的形式儲存在本機檔案系統中,供訊息處理器存取。

下載的設定資料可讓執行階段平面獨立於管理平面運作。有了合約,執行階段層的 Message Processor 會使用本機儲存的資料做為設定。如果管理和執行階段層之間的連線中斷,執行階段層上的服務仍會繼續運作。

Synchronizer 下載的設定資料包括:

  • Proxy 套裝組合和共用流程部署項目
  • 流程掛鉤
  • 環境資訊
  • 共用 API 資源
  • 目標伺服器定義
  • 傳輸層安全標準 (TLS) 設定
  • 鍵/值對應 (KVM) 名稱
  • 資料遮罩

Cassandra 資料存放區

Apache Cassandra 是執行階段資料存放區,可為執行階段層提供資料持久性。

Cassandra 是分散式資料系統,可在執行階段平面提供資料持久性。您會在 Kubernetes 叢集上,以 StatefulSet 節點集區的形式部署 Cassandra 資料庫。將這些實體放在靠近執行階段處理服務的位置,有助於支援安全性與高擴充性的需求。

Cassandra 資料庫會儲存下列實體的相關資訊:

  • 金鑰管理系統 (KMS)
  • 鍵/值對應 (KVM)
  • 回應快取
  • OAuth
  • 配額

執行階段資料管理 API (MART)

屬於貴機構的資料,以及在執行階段 API 呼叫期間存取的資料,都會由 Cassandra 儲存在執行階段層面。

包括:

  • 應用程式設定
  • 金鑰管理系統 (KMS) 資料
  • 快取
  • 鍵/值對應 (KVM)
  • API 產品
  • 開發人員應用程式

如要存取及更新該資料 (例如新增 KVM 或移除環境),可以使用 Apigee Hybrid UI 或 Apigee API。MART 伺服器 (Runtime 資料的管理 API) 會處理針對 Runtime 資料存放區的 API 呼叫。

本節說明您呼叫 Apigee API 存取執行階段資料存放區時,MART 扮演的角色。

 
什麼是 MART?

如要呼叫 Apigee API,請在管理平面上向管理伺服器 (MS) 傳送通過驗證的要求。MS 會驗證要求並授權,然後將要求轉送至執行階段層的 MART。這項要求會附上權杖,由 MS 使用預先設定的服務帳戶產生。

MART 會接收、驗證及授權要求,然後對要求執行商家驗證。(舉例來說,如果應用程式是 API 產品的一部分,MART 會確保這是有效要求)。MART 判斷要求有效後,就會處理要求。

Cassandra 會儲存 MART 處理的執行階段資料 (畢竟這是執行階段資料儲存區)。視要求類型而定,MART 可能會讀取 Cassandra 中的資料,也可能會更新該資料。

與大多數混合式服務一樣,MART 是無狀態的,不會在執行階段保留自己的狀態。

MART 不適用於

管理平面會透過 Apigee Connect 代理程式與 MART 通訊,而 Apigee Connect 代理程式會使用具有 Apigee Connect 代理程式角色的服務帳戶 (在大多數安裝作業中,這是 MART 服務帳戶)。您不會直接呼叫 MART。

此外,MART 不會收到 API Proxy 要求,這些呼叫是由 Runtime Ingress 控制器處理,並會轉送至叢集的訊息處理器。

 

值得一提的是,MART 和 Message Processor 都能存取相同的執行階段資料儲存區 (Cassandra),因此可以共用 KMS、KVM 和快取等資料。

下圖顯示 Apigee API 呼叫的流程:

混合式 API 呼叫流程

UDCA

通用資料收集代理程式 (UDCA) 是在執行階段層的資料收集 Pod 中執行的服務,可擷取 Analytics、偵錯和部署狀態資料,並傳送至 UAP。

詳情請參閱「收集偵錯、分析和部署狀態資料」。

關於管理平面

管理平面會在 Google Cloud 上執行。包括行政管理服務,例如:

  • Apigee Hybrid 使用者介面:提供使用者介面,方便開發人員建立及部署 API Proxy、設定政策、建立 API 產品,以及建立開發人員應用程式。管理員可以使用 Apigee Hybrid UI 監控部署狀態。
  • Apigee API:提供程式輔助介面,方便您管理機構和環境。
  • 整合式數據分析平台 (UAP):接收及處理來自執行階段層的數據分析和部署狀態資料。

下圖顯示在管理平面上執行的主要服務:

在 Apigee Hybrid 管理層執行的服務

關於 Google Cloud 服務

下表說明混合式環境使用的主要 Google Cloud 服務:

Google Cloud 服務 說明
身分 使用者帳戶驗證會使用 Google Cloud 帳戶。授權作業會使用 Google Cloud 服務帳戶。
角色 混合式存取權管理使用 Google 的角色引擎 IAM,並支援預設的 Apigee 角色。
資源階層結構 資源會彙整在 Google Cloud 專案中 (連結至 Apigee 機構)。
Cloud Operations 提供記錄和指標資料分析。
 

使用者類型

Apigee 發現下列主要類型的混合式使用者:

角色 一般職責/工作 感興趣的領域
系統管理員/操作人員
  • 在 Hybrid 的執行階段層安裝及設定服務
  • 設定 Google Cloud、Apigee 和服務帳戶
  • 建立 Google Cloud 服務和專案
  • 管理 Kubernetes 叢集
  • 維持上述所有條件
  • 排解 API Proxy 問題
開發人員
  • 使用 Apigee Hybrid UI 或 Apigee API 建構 API Proxy
  • 將 API Proxy 部署至執行階段層
  • 排解 API Proxy 問題
  • 測試 API Proxy
 

優點

Apigee Hybrid 具備下列優勢:

提高靈活彈性
由於 Hybrid 是以容器形式提供及執行,因此您可以實現階段發布、自動調整資源配置,以及容器化系統的其他操作優勢。
減少延遲
與混合式管理平面之間的所有通訊都是非同步,且不會在處理用戶端 API 要求時發生。
提高 API 採用率
雖然可以使用 Apigee 處理內部 API,但混合式架構可縮短延遲時間並提高效率,因此使用混合式架構處理內部 API 是相當有吸引力的選項。API Gateway 在地端執行,與後端服務非常接近,因此能提高效率。此外,如果您使用 Apigee,可以透過 Hybrid 處理內部 API,進一步採用 Apigee。
掌控度較高
許多企業都開始採用混合式策略。大型企業的主要需求是管理部署在私有資料中心的 API 執行階段。目前,混合式執行階段平面可部署至 Google Cloud 或您自己的資料中心。

下一步

請參閱大方向,瞭解混合式安裝程序總覽。