Private Cloud v. 4.17.05 專用 Edge
地端部署的 Edge Private Cloud 或 Edge 執行個體 安裝在一組伺服器節點上的 Edge 元件。下圖顯示「關係」 部署在世界各地、區域、Pod、機構、環境和虛擬主機之間 邊緣執行個體:
下表說明這些關係:
包含 |
相關聯的溫度控制器 |
預設 |
|
---|---|---|---|
行星 |
一或多個區域 |
不適用 |
|
區域 |
一或多個 Pod |
「dc-1」 |
|
廣告連播 |
一或多個 Edge 元件 |
「中央」 |
|
機構組織 |
一或多個環境 |
一或多個包含訊息處理器的 Pod,以及擔任機構管理員的使用者 |
無 |
環境 |
一或多個虛擬主機 |
與上層機構相關聯的 Pod 中的一或多個訊息處理器 |
無 |
虛擬主機 |
一或多個主機別名 |
無 |
關於星球
地球代表整個 Edge 硬體和軟體環境,且可包含 可以指定一或多個區域在 Edge 中,行星是有邏輯地將區域分組,您並沒有 在安裝 Edge 的過程中明確建立或設定行星。
關於區域
「區域」包含一或多個 Pod。根據預設,當您安裝 Edge 時 安裝程式會建立一個名為「dc-1」的區域含有三個 Pod,如下表所示 顯示:
區域 |
區域中的 Pod |
---|---|
「dc-1」 |
「gateway」、「central」、「analytics」 |
下圖顯示預設區域:
這張圖片顯示負載平衡器將流量導向至「閘道」。「閘道」廣告連播 包含處理 API 要求的 Edge Router 和 Message Processor 元件。除非您 定義多個資料中心,也不需要建立額外的區域。
在較複雜的安裝程序中,您可以建立兩個以上的區域。單一理由 多個區域是使機器依地理位置整理,進而縮短網路傳輸時間。於 在此情境中,您會代管 API 端點,讓這些端點位於地理區域「接近」的 這些 API 的使用者
在 Edge 中,每個區域都稱為「資料中心」。在 方便美國東部政府處理來自麻薩諸塞州波士頓的要求, 新加坡可以處理亞洲裝置或電腦發出的要求。
例如,下圖顯示兩個對應兩個資料中心的區域:
關於 Pod
Pod 包含一或多個 Edge 元件和 Cassandra 資料儲存庫。邊緣 元件可以安裝在同一個節點上,但通常安裝在不同的節點上。 Cassandra 資料儲存庫是 Pod 中 Edge 元件使用的資料存放區。
根據預設,安裝 Edge 時,安裝程式會建立三個 Pod,並將 每個 Pod 一起附加以下 Edge 元件和 Cassandra 資料儲存庫:
廣告連播 |
邊緣元件 |
Cassandra 資料儲存庫 |
|
---|---|---|---|
「閘道」 |
路由器、訊息處理器 |
快取資料儲存庫 |
keyvaluemap-datastore |
「中央」 |
Management Server、Zookeeper、LDAP、UI、Qpid |
application-datastore |
identityzone-datastore |
「Analytics」 |
Postgres |
analytics-datastore |
reportcrud-datastore |
「閘道」中的 Edge 元件和 Cassandra 資料儲存庫API 必須具備 Pod 和資料處理之間這些元件和資料儲存庫必須處於運作狀態,才能處理 API 要求。 元件和資料儲存庫和「analytics」不必使用 Pod 處理 API 而是為 Edge 添加額外功能
下圖顯示每個 Pod 中的元件:
您可以將額外的訊息處理器和路由器 Pod 新增到 預設值。您也可以將其他 Edge 元件新增至現有 Pod。例如: 您可以將其他路由器和訊息處理器新增至「閘道」處理增加的 Pod 以及流量負載
請注意,「閘道」Pod 包含 Edge Router 和 Message Processor 元件。 路由器只會將要求傳送給相同 Pod 中的訊息處理器,不會傳送給 和其他 Pod 一樣
您可以使用下列 API 呼叫,在 為每個 Pod 安裝這個監控工具很實用。
curl -u adminEmail:pword http://<ms_IP>:8080/v1/servers?pod=podName
其中 ms_IP 是管理伺服器的 IP 位址或 DNS 名稱。 而 podName 為以下其中一項:
- 閘道
- 中央
- 數據分析
例如「閘道」廣告連播:
> curl -u adminEmail:pword http://<ms_IP>:8080/v1/servers?pod=gateway
輸出內容的格式如下:
[ { "externalHostName" : "localhost", "externalIP" : "192.168.1.11", "internalHostName" : "localhost", "internalIP" : "192.168.1.11", "isUp" : true, "pod" : "gateway", "reachable" : true, "region" : "dc-1", "tags" : { "property" : [ { "name" : "jmx.rmi.port", "value" : "1101" }, ... ] }, "type" : [ "message-processor" ], "uUID" : "276bc250-7dd0-46a5-a583-fd11eba786f8" }, { "internalIP" : "192.168.1.11", "isUp" : true, "pod" : "gateway", "reachable" : true, "region" : "dc-1", "tags" : { "property" : [ ] }, "type" : [ "dc-datastore", "management-server", "cache-datastore", "keyvaluemap-datastore", "counter-datastore", "kms-datastore" ], "uUID" : "13cee956-d3a7-4577-8f0f-1694564179e4" }, { "externalHostName" : "localhost", "externalIP" : "192.168.1.11", "internalHostName" : "localhost", "internalIP" : "192.168.1.11", "isUp" : true, "pod" : "gateway", "reachable" : true, "region" : "dc-1", "tags" : { "property" : [ { "name" : "jmx.rmi.port", "value" : "1100" }, ... ] }, "type" : [ "router" ], "uUID" : "de8a0200-e405-43a3-a5f9-eabafdd990e2" } ]
type 屬性會列出元件類型。請注意,這裡會列出 Cassandra 資料儲存庫中註冊的資料儲存庫。在「閘道」中安裝 Cassandra 節點您 就會看到向所有 Pod 註冊的 Cassandra 資料儲存庫。
關於機構
機構是 Apigee 帳戶中所有物件的容器,包括 API、API 產品、應用程式和開發人員。機構與一或多個 Pod 相關聯 每個 Pod 都必須含有一或多個訊息處理器。
在地端部署環境中安裝 Edge Private Cloud 時,根據預設,系統不會建立任何機構。 建立機構時,您需要指定兩項資訊:
- 擔任機構組織管理員的使用者。該使用者可以新增額外的 驗證使用者,以及設定每位使用者的角色。
- 「閘道」pod,包含訊息處理器的 pod。
機構可包含一或多個環境。預設 Edge 安裝程序 您會建立兩個環境:「test」和「prod」不過,您可以建立更多 提供所需環境,例如「測試環境」、「實驗」等
機構提供了部分 Apigee 功能的範圍。例如:鍵/值對應 (KVM) 資料是在機構層級提供,也就是說,來自所有環境中。其他功能 範圍限定在特定環境Apigee 數據分析資料是以 組織和環境的組合
下列是機構的主要物件,包括全球 以及專為環境定義的方案:
關於環境
環境是機構中 API Proxy 的執行階段執行環境。 您必須先將 API Proxy 部署至環境,才能存取該環境。如有需要 可連結單一環境或多個環境
一個機構可以包含多個環境。例如,您可以定義「dev」 「test」和「prod」投入資源
當您建立環境時,必須將環境與一或多個訊息處理器建立關聯。你可以 請將環境視為執行 API Proxy 的一組已命名訊息處理器。每次 環境可以與同一個訊息處理器建立關聯,也可以與不同的訊息處理器建立關聯。
如要建立環境,請指定兩項資訊:
- 包含環境的機構。
- 處理對環境的 API Proxy 要求的訊息處理器。這些訊息
處理器必須位於與環境的上層機構相關聯的 Pod 中。
根據預設,當您建立環境時,Edge 會將 「閘道」建立與環境相同的 Pod或者,您也可以指定部分 Pod 可用的訊息處理器,以便不同的訊息處理器處理傳送至 環境
一個訊息處理器可與多個環境建立關聯。例如,Edge 安裝包含兩種訊息處理器:A 和 B。接著會在實際工作環境中建立三個環境 Organization: "dev"、"test" 和 "prod":
- 適用於「dev」請將「訊息處理器 A」與「訊息處理器 A」建立關聯 流量十分龐大
- 針對「test」請將「訊息處理器 B」與「訊息處理器 B」建立關聯 流量十分龐大
- 適用於「prod」就必須與「訊息處理器 A」和「B」建立關聯,以便處理 實際工作環境等級的流量
指派給環境的訊息處理器可以來自同一個 Pod,也可以來自 橫跨多個區域和資料中心的 Pod舉例來說,假設您定義了 環境「global」其中包含來自三個區域的訊息處理器 也就是美國、日本和德國的三個資料中心
將 API Proxy 部署至「全域」環境會導致 API Proxy 在 Message 上執行 三個資料中心的處理器。API 流量送達其中一個路由器 系統只會導向至該資料中心內的訊息處理器,因為路由器 只會將流量導向同一個 Pod 中的訊息處理器。
關於虛擬主機
虛擬主機定義要公開 API Proxy 的 Edge Router 通訊埠。 以及應用程式用來存取 API Proxy 的網址。每個環境都必須定義 至少一個虛擬主機
請確認路由器節點上由虛擬主機指定的通訊埠號碼已開啟。你可以 然後向以下使用者發出要求,即可存取 API Proxy:
http://<routerIP>:<port>/{proxy-base-path}/{resource-name} https://<routerIP>:<port>/{proxy-base-path}/{resource-name}
其中:
- http 或 https:如果虛擬主機設為 支援 TLS/SSL,請使用 HTTPS如果虛擬主機不支援 TLS/SSL,請使用 HTTP。
- <routerIP>:<port> 是 IP 以及虛擬主機的通訊埠和通訊埠號碼
- {proxy-base-path} 與 已定義 {resource-name} 選擇建立 API Proxy 伺服器
一般來說,您不會使用 IP 位址和通訊埠編號向客戶發布 API。 而是要為路由器和通訊埠定義 DNS 項目。例如:
http://myAPI.myCo.com/{proxy-base-path}/{resource-name} https://myAPI.myCo.com/{proxy-base-path}/{resource-name}
此外,您也必須為虛擬主機建立與 DNS 網域名稱相符的主機別名 項目。在上述範例中,您可以指定 myAPI.myCo.com 的主機別名。 如果您沒有 DNS 項目,請將主機別名設為路由器的 IP 位址,以及其通訊埠為 虛擬主機,例如 <routerIP>:port。
詳情請見 http://apigee.com/docs/api-services/content/virtual-hosts。
正在建立您的第一個機構組織, 或虛擬主機
完成 Edge 安裝程序後,您第一個動作通常會建立 機構、環境和虛擬主機上傳資料集之後,您可以運用 AutoML 自動完成部分資料準備工作如要表演 請在 Edge Management Server 節點上執行下列指令:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
這個指令會將設定檔做為輸入內容,定義使用者、機構、環境和 虛擬主機
舉例來說,您可以建立:
- 您選擇以機構管理員身分的使用者
- 名為「example」的機構
- 名為 prod 的機構中與所有訊息相關聯的環境 「閘道」中的處理方廣告連播
- 名為 default 的虛擬主機允許透過通訊埠進行 HTTP 存取 9001 人
- 虛擬主機的主機別名
執行該指令碼後,您可以使用下列格式的網址存取 API:
http://<router-ip>:9001/{proxy-base-path}/{resource-name}
您之後可以新增任意數量的機構、環境和虛擬主機。
如要進一步瞭解如何加入本計畫,請參閱加入 機構。