安裝條件

Edge for Private Cloud 4.17.05 版

硬體需求

您必須符合下列最低硬體需求,才能在正式環境中建構高可用性基礎架構。針對安裝拓撲中描述的所有安裝情境,下表列出安裝元件的最低硬體需求。

在這些表格中,硬碟需求是指作業系統所需磁碟空間以外的空間。視應用程式和網路流量而定,安裝作業所需的資源可能多於或少於下列數量。

安裝元件

RAM

CPU

硬碟最低需求

Cassandra

16 GB

8 核心

250 GB 本機儲存空間,搭配 SSD 或支援 2000 IOPS 的快速 HDD

訊息處理器/路由器位於同一部機器

16 GB

8 核心

100 GB

Analytics - Postgres/Qpid on same server (not recommended for production)

16GB*

8 核心*

500 GB 至 1 TB** 網路儲存空間***,最好採用 SSD 後端,支援 1000 IOPS 以上*。

Analytics - Postgres 獨立式

16GB*

8 核心*

500 GB 至 1 TB** 網路儲存空間***,最好採用 SSD 後端,支援 1000 IOPS 以上*。

Analytics - Qpid 獨立式

8 GB

4 核心

30 GB 至 50 GB 的本機儲存空間,配備 SSD 或快速 HDD

如果安裝作業超過 250 TPS,建議使用本機儲存空間支援 1000 IOPS 的 HDD。

預設 Qpid 佇列大小為 20 GB。如需增加容量,請新增 Qpid 節點。

其他 (OpenLDAP、UI、管理伺服器)

4 GB

2 核心

60 GB

*根據處理量調整 Postgres 系統需求:

  • 低於 250 TPS:可考慮使用 8 GB、4 核心,搭配支援 1000 IOPS 以上的代管網路儲存空間***
  • 每秒交易量大於 250:16 GB、8 核心、代管網路儲存空間***,支援 1000 IOPS 以上
  • 超過 1000 TPS:16 GB、8 核心、代管網路儲存空間***,支援 2000 IOPS 以上
  • 超過 2000 TPS:32 GB、16 核心、代管網路儲存空間***,支援 2000 IOPS 以上
  • 超過 4000 TPS:64 GB、32 核心、支援 4000 IOPS 以上的代管網路儲存空間***

**Postgres 硬碟值是根據 Edge 擷取的現成數據分析資料計算得出。如果您在數據分析資料中加入自訂值,則應相應增加這些值。請使用下列公式估算所需的儲存空間:

(每個要求的位元組數) * (每秒要求數) * (每小時秒數) * (每天用量高峰時數) * (每月天數) * (資料保留月數) = 所需儲存空間位元組數

例如:

(每個要求 2K 位元組的數據分析資料) * 100 req/sec * 3600 secs/hr * 每天 18 小時用量高峰 * 30 days/month * 保留 3 個月 = 1,194,393,600,000 位元組或 1194.4 GB。

*** 建議將網路儲存空間用於 Postgresql 資料庫,原因如下:

  • 可讓您視需要動態擴充儲存空間大小。
  • 在現今大多數的環境/儲存空間/網路子系統中,網路 IOPS 都能即時調整。
  • 儲存空間層級快照可做為備份和復原解決方案的一部分啟用。

此外,如要安裝營利服務,請參閱下列硬體需求:

具備營利功能的元件

RAM

CPU

硬碟

管理伺服器 (含營利服務)

8 GB

4 核心

60 GB

Analytics - Postgres/Qpid 位於同一伺服器

16 GB

8 核心

500 GB 至 1 TB 的網路儲存空間,最好採用 SSD 後端,支援 1000 IOPS 以上,或使用上表中的規則。

Analytics - Postgres 獨立式

16 GB

8 核心

500 GB 至 1 TB 的網路儲存空間,最好採用 SSD 後端,支援 1000 IOPS 以上,或使用上表中的規則。

Analytics - Qpid 獨立式

8 GB

4 核心

40 GB 至 500 GB 的本機儲存空間,配備 SSD 或快速 HDD

如果安裝作業超過 250 TPS,建議使用本機儲存空間支援 1000 IOPS 的 HDD。

如要安裝 API BaaS,請參考下列硬體需求:

API BaaS 元件

RAM

CPU

硬碟

ElasticSearch*

8 GB

4 核心

60 至 80 GB

API BaaS 堆疊 *

8 GB

4 核心

60 至 80 GB

API BaaS 入口網站

1GB

2 核心

20GB

Cassandra (選用,通常 Edge 和 API BaaS 服務會使用同一個 Cassandra 叢集)

16 GB

8 核心

250 GB 本機儲存空間,搭配 SSD 或支援 2000 IOPS 的快速 HDD

* 您可以在同一個節點上安裝 ElasticSearch 和 API BaaS Stack。如果選擇這麼做,請將 ElasticSearch 設為使用 4 GB 記憶體 (預設)。如果 ElasticSearch 安裝在自己的節點上,請將其設定為使用 6 GB 的記憶體。

注意:

  • 如果根檔案系統不夠大,無法安裝,建議將資料放在較大的磁碟上。
  • 如果機器上已安裝舊版 Apigee Edge for Private Cloud,請務必先刪除 /tmp/java 資料夾,再進行新的安裝作業。
  • 全系統臨時資料夾 /tmp 必須具備執行權限,才能啟動 Cassandra。
  • 如果使用者「apigee」是在安裝前建立,請確認「/home/apigee」是主目錄,且擁有者為「apigee:apigee」。

作業系統和第三方軟體需求

這些安裝操作說明和提供的安裝檔案,已在下列網址列出的作業系統和第三方軟體上測試過:https://apigee.com/docs/api-services/reference/supported-software。

建立 Apigee 使用者

安裝程序會建立名為「apigee」的 Unix 系統使用者。Edge 目錄和檔案由「apigee」擁有,Edge 程序也是如此。也就是說,Edge 元件會以「apigee」使用者身分執行。如有需要,您可以以其他使用者身分執行元件。如需範例,請參閱「在節點上安裝 Edge 元件」中的「將路由器繫結至受保護的通訊埠」。

安裝目錄

根據預設,安裝程式會將所有檔案寫入 /opt/apigee 目錄。您無法變更這個目錄位置。雖然您無法變更這個目錄,但可以建立符號連結,將 /opt/apigee 對應至其他位置,如下所示。

在本指南的操作說明中,安裝目錄會標示為 /<inst_root>/apigee,其中 /<inst_root> 預設為 /opt。

從 /opt/apigee 建立符號連結

建立符號連結前,必須先建立名為「apigee」的使用者和群組。這與 Edge 安裝程式建立的群組和使用者相同。

如要建立符號連結,請在下載 bootstrap_4.17.01.sh 檔案前,先執行下列步驟。您必須以 root 身分執行下列所有步驟:

  1. 建立「apigee」使用者和群組:
    > groupadd -r apigee
    > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
  2. 從 /opt/apigee 建立符號連結至所需的安裝根目錄:
    > ln -Ts /srv/myInstallDir /opt/apigee
    其中 /srv/myInstallDir 是 Edge 檔案所需的位置。
  3. 將安裝根目錄和符號連結的擁有權變更為「apigee」使用者:
    > chown -h apigee:apigee /srv/myInstallDir /opt/apigee

Java

安裝前,每部機器都必須安裝支援的 Java 1.8 版本。支援的 JDK 列於:

https://apigee.com/docs/api-services/reference/supported-software

確認 JAVA_HOME 指向執行安裝作業的使用者 JDK 根目錄。

SELinux

視 SELinux 的設定而定,Edge 可能會在安裝及啟動 Edge 元件時發生問題。如有需要,您可以在安裝期間停用 SELinux 或將其設為寬鬆模式,並在安裝後重新啟用。詳情請參閱「安裝 Edge apigee-setup 公用程式」。

聯播網設定

建議在安裝前檢查網路設定。安裝程式會假設所有機器都有固定的 IP 位址。使用下列指令驗證設定:

  • hostname 會傳回機器名稱
  • hostname -i 會傳回可從其他機器定址的主機名稱 IP 位址。

視作業系統類型和版本而定,如果主機名稱設定不正確,您可能需要編輯 /etc/hosts 和 /etc/sysconfig/network。詳情請參閱特定作業系統的說明文件。

TCP Wrapper

TCP 包裝函式可能會封鎖部分通訊埠的通訊,並影響 OpenLDAP、Postgres 和 Cassandra 的安裝。在這些節點上,檢查 /etc/hosts.allow 和 /etc/hosts.deny,確保必要的 OpenLDAP、Postgres 和 Cassandra 通訊埠沒有通訊埠限制。

iptables

確認沒有任何 iptables 政策會阻止必要 Edge 通訊埠上的節點之間連線。如有需要,您可以在安裝期間使用下列指令停止 iptables:

> sudo/etc/init.d/iptables stop

CentOS 7.x:

> systemctl stop firewalld

確認 Edge 路由器可以存取 /etc/rc.d/init.d/functions

Edge 路由器和 BaaS 入口網站節點使用 Nginx 路由器,且需要 /etc/rc.d/init.d/functions 的讀取權限。

如果安全性程序要求您設定 /etc/rc.d/init.d/functions 的權限,請勿將權限設為 700,否則路由器將無法啟動。權限可設為 744,允許讀取 /etc/rc.d/init.d/functions。

Cassandra

所有 Cassandra 節點都必須連線至環。Cassandra 會將資料副本儲存在多個節點上,確保可靠性和容錯能力。每個 Edge 鍵空間的複製策略會決定放置副本的 Cassandra 節點。詳情請參閱「關於 Cassandra 複製係數和一致性層級」。

Cassandra 會根據可用記憶體自動調整 Java 堆積大小。詳情請參閱「調整 Java 資源」。如果效能降低或記憶體用量偏高,

安裝 Edge for Private Cloud 後,您可以檢查 /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml 檔案,確認 Cassandra 設定正確無誤。舉例來說,請確認 Edge for Private Cloud 安裝指令碼已設定下列屬性:

  • cluster_name
  • initial_token
  • partitioner
  • 種子
  • listen_address
  • rpc_address
  • snitch

警告:請勿編輯這個檔案。

PostgreSQL 資料庫

安裝 Edge 後,您可以根據系統可用的 RAM 量,調整下列 PostgreSQL 資料庫設定:

conf_postgresql_shared_buffers = 35% of RAM      # min 128kB
conf_postgresql_effective_cache_size = 45% of RAM
conf_postgresql_work_mem = 512MB       # min 64kB

如何設定這些值:

  1. 編輯 postgresql.properties:
    > vi /<inst_root>/apigee/customer/application/postgresql.properties

    如果檔案不存在,請建立檔案。
  2. 設定上述屬性。
  3. 儲存編輯內容。
  4. 重新啟動 PostgreSQL 資料庫:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql restart

系統限制

請確認您已在 Cassandra 和訊息處理器節點上設定下列系統限制:

  • 在 Cassandra 節點上,為安裝使用者 (預設為「apigee」) 設定軟性和硬性 memlock、nofile 和位址空間 (as) 限制,方法是在 /etc/security/limits.d/90-apigee-edge-limits.conf 中設定,如下所示:
    apigee soft memlock unlimited
    apigee hard memlock unlimited
    apigee soft nofile 32768
    apigee hard nofile 65536
    apigee soft as unlimited
    apigee hard as unlimited

  • 在訊息處理器節點上,將開啟檔案描述元的數量上限設為 64K,方法是在 /etc/security/limits.d/90-apigee-edge-limits.conf 中設定,如下所示:
    apigee soft nofile 32768
    apigee hard nofile 65536


    如有需要,您可以提高這項限制。例如,如果您同時開啟大量暫存檔案。

jsvc

「jsvc」是使用 API BaaS 的必要條件。安裝 API BaaS 時,系統會安裝 1.0.15-dev 版。

網路安全服務 (NSS)

網路安全服務 (NSS) 是一組程式庫,可支援開發具備安全防護功能的用戶端和伺服器應用程式。請確認您已安裝 NSS 3.19 以上版本。

如要查看目前的版本,請按照下列步驟操作:

> yum info nss

如要更新 NSS,請按照下列步驟操作:

> yum update nss

詳情請參閱 RedHat 的這篇文章。

使用 NSCD (名稱服務快取 Daemon) 時,停用 IPv6 的 DNS 查詢

如果您已安裝並啟用 NSCD (名稱服務快取 Daemon),訊息處理器會執行兩次 DNS 查詢:一次針對 IPv4,一次針對 IPv6。使用 NSCD 時,請務必停用 IPv6 的 DNS 查詢功能。

如要停用 IPv6 的 DNS 查詢,請按照下列步驟操作:

  1. 在每個訊息處理器節點上,編輯 /etc/nscd.conf
  2. 設定下列屬性:
    enable-cache hosts no

在 Google Cloud Platform 停用 RedHat/CentOS 7 的 IPv6

如果您是在 Google Cloud Platform 上的 RedHat 7 或 CentOS 7 上安裝 Edge,則必須在所有 Qpid 節點上停用 IPv6。

請參閱 RedHat 或 CentOS 說明文件,瞭解特定 OS 版本的 IPv6 停用操作說明。例如,您可以:

  1. 在編輯器中開啟 /etc/hosts。
  2. 在下一行的第一欄插入「#」字元,將其註解掉:
    #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  3. 儲存檔案。

AWS AMI

如要在 Red Hat Enterprise Linux 7.x 的 AWS Amazon Machine Image (AMI) 上安裝 Edge,請先執行下列指令:

> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

工具

安裝程式會使用 EL5 或 EL6 提供的標準版 UNIX 工具。

awk

expr

lua-socket

rpm

unzip

basename

grep

ls

rpm2cpio

useradd

bash

主機名稱

net-tools

sed

wc

bc

id

perl (來自 procps)

sudo

wget

curl

libaio

pgrep (來自 procps)

tar

xerces-c

cyrus-sasl
libdb-cxx
ps tr 好吃

日期

libibverbs

pwd

uuid

chkconfig

目錄名稱
librdmacm
python uname
echo
libxslt

注意:

  • 「useradd」工具的可執行檔位於 /usr/sbin,chkconfig 則位於 /sbin。
  • 透過 sudo 存取權,您可以存取呼叫使用者的環境,例如,您通常會呼叫「sudo <command>」或「sudo PATH=$PATH:/usr/sbin:/sbin <command>」。
  • 安裝 Service Pack (修補程式) 前,請確認已安裝「patch」工具。

ntpdate:建議同步處理伺服器時間。如果尚未設定,可以使用「ntpdate」公用程式,驗證伺服器是否已同步時間。您可以使用「yum install ntp」安裝公用程式。這項功能在複製 OpenLDAP 設定時特別實用。請注意,伺服器時區是以世界標準時間 (UTC) 設定。

openldap 2.4:地端部署安裝作業需要 OpenLDAP 2.4。如果伺服器已連上網際網路,Edge 安裝指令碼就會下載並安裝 OpenLDAP。如果伺服器未連上網際網路連線,請務必先確認已安裝 OpenLDAP,再執行 Edge 安裝指令碼。在 RHEL/CentOS 上,您可以執行「yum install openldap-clients openldap-servers」來安裝 OpenLDAP。

如果是 13 主機安裝作業,以及具有兩個資料中心的 12 主機安裝作業,則需要 OpenLDAP 複製,因為有多個節點託管 OpenLDAP。

防火牆和虛擬主機

「虛擬」一詞在 IT 領域通常會過度使用,Apigee Edge for Private Cloud 部署作業和虛擬主機也是如此。為求清楚,以下說明「虛擬」一詞的兩種主要用法:

  • 虛擬機器 (VM):非必要,但部分部署作業會使用 VM 技術,為 Apigee 元件建立獨立伺服器。VM 主機與實體主機一樣,可以有網路介面和防火牆。
  • 虛擬主機:網路端點,類似於 Apache 虛擬主機。

VM 中的路由器可以公開多個虛擬主機 (只要主機別名或介面通訊埠不同即可)。

舉例來說,單一實體伺服器「A」可能執行兩個 VM,分別名為「VM1」和「VM2」。假設 VM1 公開虛擬乙太網路介面,在 VM 內名為 eth0,並由虛擬化機制或網路 DHCP 伺服器指派 IP 位址 111.111.111.111;然後假設 VM2 公開虛擬乙太網路介面,也名為 eth0,並指派 IP 位址 111.111.111.222。

我們可能會在兩個 VM 中各執行一個 Apigee 路由器。路由器會公開虛擬主機端點,如下列假設範例所示:

VM1 中的 Apigee 路由器會在 eth0 介面 (具有特定 IP 位址) 上公開三個虛擬主機:api.mycompany.com:80、api.mycompany.com:443 和 test.mycompany.com:80。

VM2 中的路由器會公開 api.mycompany.com:80 (與 VM1 公開的名稱和通訊埠相同)。

實體主機的作業系統可能設有網路防火牆;如果是這樣,您必須設定防火牆,讓 TCP 流量通過虛擬化介面上公開的通訊埠 (111.111.111.111:{80, 443} 和 111.111.111.222:80)。此外,每個 VM 的作業系統都可能在 eth0 介面上提供自己的防火牆,而且這些防火牆也必須允許通訊埠 80 和 443 流量連線。

基本路徑是第三個元件,用於將 API 呼叫轉送至您可能已部署的不同 API Proxy。如果 API Proxy 繫結組合有不同的基本路徑,則可共用端點。舉例來說,一個基本路徑可以定義為 http://api.mycompany.com:80/,另一個則定義為 http://api.mycompany.com:80/salesdemo。

在這種情況下,您需要使用負載平衡器或流量導向器,將 http://api.mycompany.com:80/ 流量分配到兩個 IP 位址 (VM1 上的 111.111.111.111 和 VM2 上的 111.111.111.222)。這項功能僅適用於特定安裝作業,並由區域網路群組設定。

基本路徑是在部署 API 時設定。在上述範例中,您可以為 mycompany-org 組織部署 mycompany 和 testmycompany 這兩個 API,並使用主機別名為 api.mycompany.com、通訊埠設為 80 的虛擬主機。如果您未在部署作業中宣告基本路徑,路由器就無法判斷應將傳入要求傳送至哪個 API。

不過,如果您部署 API testmycompany,並將基準網址設為 /salesdemo,使用者就會透過 http://api.mycompany.com:80/salesdemo 存取該 API。如果您部署 API mycompany 時,基準網址為 /,則使用者會透過網址 http://api.mycompany.com:80/ 存取 API。

邊緣通訊埠需求

防火牆的管理需求不限於虛擬主機,VM 和實體主機防火牆都必須允許元件之間通訊所需的通訊埠流量。

下圖顯示各個 Edge 元件的通訊埠需求:

圖表附註:

  • *只有在設定路由器和訊息處理器之間的 TLS/SSL 時,才需要開啟訊息處理器上的通訊埠 8082,供路由器存取。如果您未在路由器和訊息處理器之間設定 TLS/SSL,則仍須在訊息處理器上開啟預設設定 (通訊埠 8082) 才能管理元件,但路由器不需要存取該元件。
  • 前置字元為「M」的通訊埠用於管理元件,且必須在元件上開啟,才能由管理伺服器存取。
  • 下列元件需要存取管理伺服器上的通訊埠 8080:路由器、訊息處理器、UI、Postgres 和 Qpid。
  • 訊息處理器必須開啟通訊埠 4528 做為管理通訊埠。如果您有多個訊息處理器,則所有訊息處理器都必須能透過通訊埠 4528 互相存取 (如上圖中訊息處理器上通訊埠 4528 的迴圈箭頭所示)。如果您有多個資料中心,則所有資料中心的所有訊息處理器都必須能存取該通訊埠。
  • 雖然並非必要,但您可以在路由器上開啟通訊埠 4527,供任何訊息處理器存取。否則,訊息處理器記錄檔中可能會顯示錯誤訊息。
  • 路由器必須開啟通訊埠 4527 做為管理通訊埠。如果您有多個路由器,這些路由器必須都能透過通訊埠 4527 互相存取 (如上圖中路由器通訊埠 4527 的循環箭頭所示)。
  • Edge UI 必須透過 API Proxy 公開的通訊埠存取路由器,才能支援追蹤工具中的「Send」(傳送) 按鈕。
  • 管理伺服器需要存取 Cassandra 節點上的 JMX 連接埠。
  • 您可以設定 JMX 連接埠的存取權,要求使用者輸入使用者名稱/密碼。詳情請參閱「如何監控」。
  • 您可以視需要為特定連線設定 TLS/SSL 存取權,這些連線可以使用不同的通訊埠。詳情請參閱「TLS/SSL」。
  • 如果將兩個 Postgres 節點設為使用主要/待命複製功能,則必須在每個節點上開啟通訊埠 22,以便進行 SSH 存取。您可以視需要開啟個別節點上的通訊埠,允許 SSH 存取。
  • 您可以設定管理伺服器和 Edge UI,透過外部 SMTP 伺服器傳送電子郵件。如果這麼做,您必須確保管理伺服器和 UI 可以存取 SMTP 伺服器上的必要通訊埠。非 TLS SMTP 的通訊埠編號通常是 25。如果是已啟用 TLS 的 SMTP,通常是 465,但請向 SMTP 供應商確認。

下表列出防火牆中需要開啟的通訊埠 (依 Edge 元件區分):

構成要素

通訊埠

說明

標準 HTTP 通訊埠

80、443

HTTP 和用於虛擬主機的其他通訊埠

管理伺服器

8080

Edge Management API 呼叫的通訊埠。這些元件需要存取管理伺服器上的通訊埠 8080:路由器、訊息處理器、UI、Postgres 和 Qpid。

1099

JMX 通訊埠

4526

用於分散式快取和管理呼叫

管理 UI

9000

瀏覽器存取管理 UI 的通訊埠

訊息處理器

8998

用於接收路由器通訊的訊息處理器通訊埠

8082

訊息處理器的預設管理通訊埠,必須在元件上開啟,管理伺服器才能存取。

如果您在路由器和訊息處理器之間設定 TLS/SSL,路由器會使用這個通訊埠對訊息處理器執行健康狀態檢查。

1101

JMX 通訊埠

4528

用於訊息處理器之間的分散式快取和管理呼叫,以及來自路由器的通訊

路由器

8081

路由器的預設管理通訊埠,必須在元件上開啟,管理伺服器才能存取。

4527

用於分散式快取和管理呼叫

15999

健康狀態檢查通訊埠。負載平衡器會使用這個通訊埠,判斷路由器是否可用。

如要取得路由器狀態,負載平衡器會向路由器的通訊埠 15999 提出要求:

> curl -v http://<routerIP>:15999/v1/servers/self/reachable

如果可以連上路由器,要求會傳回 HTTP 200。

59001

apigee-validate 公用程式用於測試 Edge 安裝作業的通訊埠。這項公用程式需要存取路由器上的通訊埠 59001。如要進一步瞭解通訊埠 59001,請參閱「測試安裝」。

ZooKeeper

2181

由其他元件使用,例如管理伺服器、路由器、訊息處理器等

2888、3888

ZooKeeper 內部用於 ZooKeeper 叢集 (稱為 ZooKeeper 集合) 通訊

Cassandra

7000、9042、9160

Apache Cassandra 連接埠,用於 Cassandra 節點之間的通訊,以及其他 Edge 元件的存取。

7199

JMX 通訊埠。必須開放管理伺服器存取。

Qpid

5672

用於從路由器和訊息處理器到 Qpid 伺服器的通訊

8083

Qpid 伺服器上的預設管理通訊埠,必須在元件上開啟,管理伺服器才能存取。

1102

JMX 通訊埠

4529

用於分散式快取和管理呼叫

Postgres

5432

用於從 Qpid/管理伺服器到 Postgres 的通訊

8084

Postgres 伺服器上的預設管理通訊埠,必須在元件上開啟,管理伺服器才能存取。

1103

JMX 通訊埠

4530

用於分散式快取和管理呼叫

22

如要設定兩個 Postgres 節點使用主要/待命複製功能,您必須在每個節點上開啟通訊埠 22,以便進行 SSH 存取。

LDAP

10389

OpenLDAP

SmartDocs

59002

Edge 路由器上傳送 SmartDocs 頁面要求的通訊埠。

下表依數字順序列出相同的通訊埠,以及來源和目的地元件:

通訊埠編號

目的

來源元件

目的地元件

<virtual host port#>

HTTP 以及您用於虛擬主機 API 呼叫流量的其他通訊埠。最常用的是通訊埠 80 和 443;訊息路由器可終止 TLS/SSL 連線。

外部用戶端 (或負載平衡器)

郵件路由器上的監聽器

1099 至 1103

JMX 管理

JMX 用戶端

管理伺服器 (1099)

訊息處理器 (1101)

Qpid 伺服器 (1102)

Postgres 伺服器 (1103)

2181

Zookeeper 用戶端通訊

管理伺服器

路由器

訊息處理器

Qpid 伺服器

Postgres 伺服器

Zookeeper

2888 和 3888

Zookeeper 節點間管理

Zookeeper

Zookeeper

4526

RPC 管理通訊埠

管理伺服器

管理伺服器

4527 分散式快取和管理呼叫,以及路由器之間通訊的 RPC 管理通訊埠

管理伺服器

路由器

路由器

4528

用於訊息處理器之間的分散式快取呼叫,以及來自路由器的通訊

管理伺服器

路由器

訊息處理器

訊息處理器

4529 用於分散式快取和管理呼叫的 RPC 管理通訊埠 管理伺服器 Qpid 伺服器
4530 用於分散式快取和管理呼叫的 RPC 管理通訊埠 管理伺服器 Postgres 伺服器

5432

Postgres 用戶端

Qpid 伺服器

Postgres

5672

用於將數據分析從路由器和訊息處理器傳送至 Qpid

路由器

訊息處理器

Qpid 伺服器

7000

Cassandra 節點間通訊

Cassandra

其他 Cassandra 節點

7199

JMX 管理。管理伺服器必須在 Cassandra 節點上開啟存取權。

JMX 用戶端

Cassandra

8080

Management API 通訊埠

Management API 用戶端

管理伺服器

8081 至 8084

元件 API 通訊埠,用於直接向個別元件發出 API 要求。每個元件都會開啟不同的通訊埠,實際使用的通訊埠取決於設定,但必須在元件上開啟,管理伺服器才能存取

Management API 用戶端

路由器 (8081)

訊息處理器 (8082)

Qpid 伺服器 (8083)

Postgres 伺服器 (8084)

8998

路由器與訊息處理器之間的通訊

路由器

訊息處理器

9000

預設 Edge 管理 UI 通訊埠

瀏覽器

管理 UI 伺服器

9042

CQL 原生傳輸

路由器

訊息處理器

管理伺服器

Cassandra

9160

Cassandra Thrift 用戶端

路由器

訊息處理器

管理伺服器

Cassandra

10389

LDAP 通訊埠

管理伺服器

OpenLDAP

15999

健康狀態檢查通訊埠。負載平衡器會使用這個通訊埠,判斷路由器是否可用。

負載平衡器 路由器
59001 apigee-validate 公用程式用於測試 Edge 安裝作業的通訊埠 apigee-validate 路由器

59002

傳送 SmartDocs 頁面要求的路由器通訊埠

SmartDocs

路由器

訊息處理器會將專屬連線集區保持開啟,並連至 Cassandra,且設定為永不逾時。如果防火牆位於訊息處理器和 Cassandra 伺服器之間,防火牆可能會導致連線逾時。不過,訊息處理器並非設計用來重新建立與 Cassandra 的連線。

為避免這種情況,Apigee 建議將 Cassandra 伺服器、訊息處理器和路由器放在同一個子網路中,這樣防火牆就不會參與這些元件的部署作業。

如果路由器和訊息處理器之間有防火牆,且已設定閒置 TCP 逾時,建議您:

  1. 在 Linux OS 的 sysctl 設定中,將 net.ipv4.tcp_keepalive_time 設為 1800,其中 1800 應低於防火牆閒置 TCP 逾時時間。這項設定應可讓連線保持在已建立狀態,以免防火牆中斷連線。
  2. 在所有訊息處理器上,編輯 /<inst_root>/apigee/customer/application/message-processor.properties,新增下列屬性。如果檔案不存在,請建立檔案。
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. 重新啟動訊息處理器:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. 在所有路由器上,編輯 /<inst_root>/apigee/customer/application/router.properties,新增下列屬性。如果檔案不存在,請建立檔案。
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. 重新啟動路由器:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart

如果您安裝 12 個主機叢集設定,並使用兩個資料中心,請確保兩個資料中心內的節點可以透過下列通訊埠進行通訊:

API BaaS 通訊埠需求

如果選擇安裝 API BaaS,則會新增 API BaaS Stack 和 API BaaS Portal 元件。這些元件會使用下圖所示的通訊埠:

圖表附註:

  • API BaaS 入口網站絕不會直接向 BaaS Stack 節點提出要求。開發人員登入入口網站時,入口網站應用程式會下載到瀏覽器。在瀏覽器中執行的入口網站應用程式,接著會向 BaaS 堆疊節點提出要求。
  • API BaaS 的正式環境安裝作業會在 API BaaS 入口網站節點和 API BaaS Stack 節點之間使用負載平衡器。設定入口網站及發出 BaaS API 呼叫時,請指定負載平衡器的 IP 位址或 DNS 名稱,而非 Stack 節點。
  • 所有 Stack 節點都必須開啟通訊埠 2551,以便其他 Stack 節點存取 (如上圖中 Stack 節點通訊埠 2551 的迴圈箭頭所示)。如果您有多個資料中心,則所有資料中心內的所有 Stack 節點都必須能存取該通訊埠。
  • 您必須設定所有 Baas Stack 節點,透過外部 SMTP 伺服器傳送電子郵件。如果是非 TLS SMTP,通訊埠編號通常是 25。如果是啟用 TLS 的 SMTP,通常是 465,但請向 SMTP 供應商確認。
  • Cassandra 節點可以專用於 API BaaS,也可以與 Edge 共用。

下表列出各元件需要在防火牆中開啟的預設通訊埠:

構成要素

通訊埠

說明

API BaaS 入口網站

9000

API BaaS UI 的通訊埠

API BaaS Stack

8080

接收 API 要求的通訊埠

2551

所有 Stack 節點之間的通訊埠。資料中心內的所有其他 Stack 節點都必須能存取這個節點。

如果您有多個資料中心,則所有資料中心內的所有 Stack 節點都必須能存取該通訊埠。

ElasticSearch

9200 至 9400

用於與 API BaaS Stack 通訊,以及在 ElasticSearch 節點之間通訊

授權

每次安裝 Edge 時,都必須使用從 Apigee 取得的專屬授權檔案。安裝管理伺服器時,您必須提供授權檔案的路徑,例如 /tmp/license.txt。

安裝程式會將授權檔案複製到 /<inst_root>/apigee/customer/conf/license.txt。

如果授權檔案有效,管理伺服器會驗證到期日和允許的訊息處理器 (MP) 數量。如果任何授權設定已過期,您可以在下列位置找到記錄:/<inst_root>/apigee/var/log/edge-management-server/logs。在這種情況下,您可以與 Apigee 支援團隊聯絡,瞭解遷移作業詳情。

如果尚未取得授權,請按這裡聯絡銷售人員。