安裝條件

Edge for Private Cloud v4.18.01

硬體需求

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

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

安裝元件 RAM CPU 最低硬碟空間
Cassandra 16 GB 8 核心 250 GB 本機儲存空間,搭載 SSD 或支援 2000 IOPS 的快速硬碟
同一部電腦上的訊息處理器/路由器 16 GB 8 核心 100 GB
Analytics - Postgres/Qpid 位於同一部伺服器 (不建議用於正式環境) 16GB* 8 核心* 500 GB 至 1 TB** 網路儲存空間***,最好採用 SSD 後端,支援 1000 IOPS 以上*
Analytics - Postgres standalone 16GB* 8 核心* 500 GB 至 1 TB** 網路儲存空間***,最好採用 SSD 後端,支援 1000 IOPS 以上*
Analytics - Qpid standalone 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 TPS:16 GB、8 核心、代管網路儲存空間***,支援 1000 IOPS 以上
  • 每秒交易數超過 1000:16 GB、8 核心、代管網路儲存空間***,支援 2000 IOPS 以上
  • 超過 2000 TPS:32 GB、16 核心、受管理網路儲存空間*** 支援 2000 IOPS 以上
  • 超過 4000 TPS:64 GB、32 核心、受管理網路儲存空間*** 支援 4000 IOPS 以上

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

bytes of storage needed =

  (# bytes of analytics data/request) *

  (requests/second) *

  (seconds/hour) *

  (hours of peak usage/day) *

  (days/month) *

  (months of data retention)

例如:

(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)

= 1,194,393,600,000 bytes or 1194.4 GB

*** 建議使用網路儲存空間儲存 PostgreSQL 資料庫,原因如下:

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

此外,如要安裝 Monetization Services,請參閱下列硬體需求:

含營利功能的元件 RAM CPU 硬碟
管理伺服器 (含營利服務) 8 GB 4 核心 60 GB
Analytics - Postgres/Qpid 位於同一部伺服器 16 GB 8 核心 500 GB 至 1 TB 的網路儲存空間,最好使用 SSD 後端,支援 1000 IOPS 以上,或使用上表中的規則。
Analytics - Postgres standalone 16 GB 8 核心 500 GB 至 1 TB 的網路儲存空間,最好使用 SSD 後端,支援 1000 IOPS 以上,或使用上表中的規則。
Analytics - Qpid standalone 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 Stack* 8 GB 4 核心 60 至 80 GB
API BaaS 入口網站 1GB 2 核心 20GB
Cassandra** 16 GB 8 核心 250 GB 本機儲存空間,搭載 SSD 或支援 2000 IOPS 的快速硬碟

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

** 選擇性;通常 Edge 和 API BaaS 服務會使用相同的 Cassandra 叢集。

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

這些安裝說明和隨附的安裝檔案已在「支援的軟體和支援的版本」列出的作業系統和第三方軟體上測試過。

建立 Apigee 使用者

安裝程序會建立名為「apigee」的 Unix 系統使用者。Edge 目錄和檔案由「apigee」擁有,Edge 程序也是如此。也就是說,Edge 元件會以「apigee」使用者身分執行。如有需要,您可以改用其他使用者身分執行元件。

安裝目錄

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

在本指南的操作說明中,安裝目錄標示為 /opt/apigee。

從 /opt/apigee 建立符號連結

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

如要建立符號連結,請先執行下列步驟,再下載 bootstrap_4.18.01.sh 檔案。 您必須以根使用者身分執行所有這些步驟:

  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,請參閱「支援的軟體和支援的版本」。

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

SELinux

根據 SELinux 的設定,Edge 可能會遇到安裝及啟動 Edge 元件的問題。如有必要,您可以在安裝期間停用 SELinux 或設為寬鬆模式,然後在安裝完成後重新啟用。詳情請參閱「安裝 Edge apigee-setup 公用程式」。

網路設定

建議您先檢查網路設定,再進行安裝。安裝程式會假設所有電腦都有固定 IP 位址。使用下列指令驗證設定:

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

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

如果伺服器有多個介面卡,「hostname -i」指令會傳回以空格分隔的 IP 位址清單。根據預設,Edge 安裝程式會使用傳回的第一個 IP 位址,但這可能不適用於所有情況。或者,您也可以在安裝設定檔中設定下列屬性:

ENABLE_DYNAMIC_HOSTIP=y

將該屬性設為「y」後,安裝程式會提示您選取要使用的 IP 位址,做為安裝程序的一部分。預設值為「n」。詳情請參閱「Edge 設定檔參考資料」。

TCP Wrappers

TCP Wrappers 可能會封鎖某些通訊埠的通訊,並影響 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 Router 可以存取 /etc/rc.d/init.d/functions

Edge Router 和 BaaS Portal 節點會使用 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 鍵空間的複製策略會決定副本的放置位置。詳情請參閱「About Cassandra Replication Factor and Consistency Level」。

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

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

  • cluster_name
  • initial_token
  • partitioner
  • seeds
  • 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 /opt/apigee/customer/application/postgresql.properties

    如果檔案不存在,請建立檔案。

  2. 設定上述屬性。
  3. 儲存編輯內容。
  4. 重新啟動 PostgreSQL 資料庫:
    /opt/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
  • 在訊息處理器節點上,於 /etc/security/limits.d/90-apigee-edge-limits.conf 中將開啟的檔案描述元數量上限設為 64K,如下所示:
    apigee soft nofile 32768
    apigee hard nofile 65536

    如有需要,您可以提高上限。舉例來說,如果您一次開啟大量暫存檔。

jsvc

使用 API BaaS 的前提是必須有「jsvc」。安裝 API BaaS 時,系統會安裝 1.0.15-dev 版。

網路安全服務 (NSS)

網路安全服務 (NSS) 是一組程式庫,可支援開發啟用安全性的用戶端和伺服器應用程式。請確認您已安裝 NSS v3.19 以上版本。

如要查看目前的版本:

yum info nss

如要更新 NSS:

yum update nss

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

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

如果您已安裝並啟用 NSCD (名稱服務快取精靈),訊息處理器會執行兩次 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。

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

  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

libxslt

每分鐘轉數

unzip

basename

grep

lua-socket

rpm2cpio

useradd

bash

主機名稱

ls

sed

wc

bc

id

net-tools

sudo

wget

curl

libaio

perl (來自 procps)

tar

xerces-c

cyrus-sasl libdb4 pgrep (來自 procps) tr 好吃

日期

libdb-cxx

ps

uuid

chkconfig

目錄名稱 libibverbs pwd uname  
echo librdmacm python    

ntpdate

建議同步處理伺服器時間。如果尚未設定,ntpdate 公用程式可達到這個目的,用來驗證伺服器是否已同步處理時間。您可以使用 yum install ntp 安裝公用程式。這項功能特別適合用於複製 OpenLDAP 設定。請注意,您是以世界標準時間設定伺服器時區。

openldap 2.4

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

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

防火牆和虛擬主機

「virtual」一詞在 IT 領域中經常被過度使用,Apigee Edge Private Cloud 部署作業和虛擬主機也是如此。為求清楚,我們將「virtual」一詞的兩種主要用途說明如下:

  • 虛擬機器 (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 公開的名稱和連接埠相同)。

實體主機的作業系統可能設有網路防火牆,如果是,則必須設定該防火牆,才能傳遞要傳送至虛擬介面 (111.111.111.111:{80, 443} 和 111.111.111.222:80) 上公開通訊埠的 TCP 流量。此外,每個 VM 的作業系統可能會在 eth0 介面上提供自己的防火牆,這些防火牆也必須允許通訊埠 80 和 443 的流量連線。

基本路徑是將 API 呼叫路由至您可能已部署的不同 API Proxy 時,所涉及的第三個元件。如果 API Proxy 套件具有不同的 basepath,即可共用端點。舉例來說,一個 basepath 可以定義為 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 時會設定 basepath。從上述範例中,您可以在機構 mycompany-org 中部署兩個 API (mycompany 和 testmycompany),並使用主機別名為 api.mycompany.com 的虛擬主機,以及設為 80 的連接埠。如果您未在部署作業中宣告 basepath,路由器就不知道要將傳入的要求傳送至哪個 API。

不過,如果您使用 /salesdemo 的基本網址部署 API testmycompany,使用者就會透過 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 公開的連接埠上的路由器,才能支援追蹤工具中的「傳送」按鈕。
  • 管理伺服器需要存取 Cassandra 節點上的 JMX 連接埠。
  • 您可以設定 JMX 連接埠的存取權,要求使用者提供使用者名稱/密碼。詳情請參閱「如何監控」。
  • 您可以視需要為特定連線設定 TLS/SSL 存取權,這些連線可使用不同通訊埠。詳情請參閱「TLS/SSL」。
  • 如要設定兩個 Postgres 節點以使用主備援複製功能,您必須在每個節點上開啟通訊埠 22,才能透過 SSH 存取。您可以選擇在個別節點上開啟連接埠,允許 SSH 存取。
  • 您可以設定管理伺服器和 Edge UI,透過外部 SMTP 伺服器傳送電子郵件。如果使用,請務必確保管理伺服器和使用者介面可以存取 SMTP 伺服器上的必要通訊埠。如果使用非 TLS SMTP,通訊埠編號通常為 25。如果是啟用 TLS 的 SMTP,通常是 465,但請向 SMTP 供應商確認。

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

元件 通訊埠 說明
標準 HTTP 通訊埠 80, 443 HTTP,以及您用於虛擬主機的任何其他通訊埠
管理伺服器 8080 用於 Edge 管理 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

用於將 Router 和 訊息處理器 的分析資料傳送至 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. 在所有訊息處理工具上,編輯 /opt/apigee/customer/application/message-processor.properties 以新增下列屬性。如果檔案不存在,請建立檔案。
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. 重新啟動訊息處理器:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. 在所有路由器上,編輯 /opt/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 Stack 節點發出要求。
  • API BaaS 的正式環境安裝作業會在 API BaaS 入口網站節點和 API BaaS Stack 節點之間使用負載平衡器。設定入口網站和發出 BaaS API 呼叫時,您會指定負載平衡器的 IP 位址或 DNS 名稱,而非 Stack 節點。
  • 所有 Stack 節點都必須開啟通訊埠 2551,才能從所有其他 Stack 節點存取 (如上圖所示,Stack 節點上的通訊埠 2551 以迴圈箭頭表示)。如果您有多個資料中心,則所有資料中心的所有堆疊節點都必須能存取該連接埠。
  • 您必須設定所有 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。

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

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

如果還沒有授權,請與 Apigee 銷售團隊聯絡。