私有雲 v4.18.01 的邊緣
在節點上安裝 Edge apigee-setup 公用程式後,請使用 apigee-setup 公用程式,在節點上安裝一或多個 Edge 元件。
apigee-setup 公用程式使用類似以下形式的指令:
> /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
其中 component 是要安裝的 Edge 元件,而 configFile 則是包含安裝資訊的無訊息設定檔。設定檔必須可供「apigee」使用者存取或讀取。舉例來說,您可以為檔案建立新的目錄,將目錄放在 /usr/local 或 /usr/local/share 目錄,或是「apigee」使用者可存取節點上的其他位置。
舉例來說,如要安裝 Edge Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f /usr/local/myConfig
安裝注意事項
編寫設定檔時,請將下列選項納入考量。
設定 Postgres 主要執行個體待命複製
根據預設,Edge 會在主要模式中安裝所有 Postgres 節點。但是,在具有多個 Postgres 節點的實際工作環境系統中,您必須將這些節點設為使用主要待命複製功能。這樣一來,如果主要節點故障,待命節點就能繼續處理伺服器流量。
您可以在安裝時使用無訊息設定檔中的屬性,啟用及設定主要執行個體待命複製功能。或在安裝完成後啟用主要執行個體待命複製。詳情請參閱設定 Postgres 的主要待命複製功能。
啟用 Cassandra 驗證
根據預設,Cassandra 安裝但不啟用驗證功能。這代表任何人都可以存取 Cassandra。您可以在安裝 Edge 後啟用驗證功能,或在安裝過程中啟用驗證功能。
詳情請參閱啟用 Cassandra 驗證。
建立虛擬主機時使用受保護的通訊埠
如要建立將路由器繫結到受保護的通訊埠 (例如小於 1000 的通訊埠號碼),您必須將路由器設為以具備這些通訊埠存取權的使用者的身分執行。根據預設,路由器會以使用者「apigee」的形式執行,這個身分無法存取獲得授權的通訊埠。
如要瞭解如何設定虛擬主機和路由器以存取 1000 以下的通訊埠,請參閱設定虛擬主機。
指定要安裝的元件
下表列出您傳送至 apigee-service 公用程式 -p 選項的選項,以指定要在節點上安裝的元件:
元件 |
說明 |
---|---|
c 鍵 |
僅安裝 Cassandra。 |
zk | 只安裝 ZooKeeper。 |
ds |
安裝 ZooKeeper 和 Cassandra。 |
落地 |
僅安裝 OpenLDAP。 |
毫秒 |
安裝 Edge Management Server,您將一併安裝 Edge UI 和 OpenLDAP。 如果您在設定檔中設定 USE_LDAP_REMOTE_HOST=y,系統會略過 OpenLDAP 安裝作業,而管理伺服器會使用安裝在其他節點上的 OpenLDAP。 |
r 鍵 |
只安裝 Edge Router。 |
mp |
僅安裝邊緣訊息處理器。 |
溫度控制器 |
安裝 Edge Router 和訊息處理器。 |
ui |
安裝 Edge UI。 |
qs |
僅安裝 Qpid 伺服器。 |
ps |
僅安裝 Postgres 伺服器。 |
pdb | 僅安裝 Postgres 資料庫 (僅於安裝開發人員服務入口網站時使用)。請參閱「開發人員服務入口網站安裝」。 |
薩克斯風 |
安裝數據分析元件,也就是 Qpid 和 Postgres。 這個選項僅供開發和測試使用,不適用於實際工作環境。 |
sso | 安裝 Edge SSO 模組。 |
月 |
安裝「營利」。 |
sa |
單獨安裝 Edge (亦即 Cassandra、ZooKeeper、管理伺服器、OpenLDAP、Edge UI、路由器和訊息處理器)。這個選項會省略 Edge 分析元件:Qpid 和 Postgres。 這個選項僅供開發和測試使用,不適用於實際工作環境。 |
Aio |
在單一節點中安裝所有元件。 這個選項僅供開發和測試使用,不適用於實際工作環境。 |
dp |
安裝開發人員服務入口網站。 |
建立設定檔
設定檔中包含安裝 Edge 所需的一切資訊。通常,您可以使用同一個設定檔安裝 Edge 安裝中的所有元件。
不過,如果發生下列情況,您必須使用不同的設定檔或修改設定檔:
- 您正在安裝多個 OpenLDAP 伺服器,而且必須在 13 個節點的安裝程序中設定複製功能。每個檔案的 LDAP_SID 和 LDAP_PEER 值都必須不同。
- 您正在 12 個節點安裝過程中建立多個資料中心,每個資料中心需要不同的屬性 (例如 ZK_CLIENT_HOSTS 和 CASS_HOSTS) 設定,
以下描述的每個安裝拓撲都會顯示該拓撲的範例設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
在不執行安裝作業的情況下測試系統需求
私有雲的邊緣支援 ENABLE_SYSTEM_CHECK=y 屬性,在安裝過程中檢查機器的 CPU 和記憶體需求。然而,在先前的 Edge 版本中,您必須實際執行安裝作業。
您現在可以使用「-t」標記來檢查,而不必執行安裝。例如,如要在不實際安裝的情況下檢查「aio」安裝的系統需求,請使用下列指令:
/opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile -t
這個指令會在畫面中顯示任何系統需求的錯誤。
如需所有 Edge 元件的系統需求清單,請參閱「安裝規定」。
安裝記錄檔
根據預設, setup.sh 公用程式會將記錄資訊寫入至:
/opt/apigee/var/log/apigee-setup/setup.log
如果執行 setup.sh 公用程式的使用者無法存取該目錄,便會以名為 setup_username.log 的檔案將記錄寫入 /tmp 目錄。
如果使用者無法存取 /tmp,setup.sh 公用程式就會失敗。
安裝 Edge 元件
本節說明如何安裝適用於不同拓撲的 Edge 元件。元件安裝順序取決於您偏好的拓撲。
以下顯示的所有安裝範例假設您都在安裝:
- 如果停用 Cassandra 驗證 (預設),詳情請參閱「啟用 Cassandra 驗證」。
- 停用 Postgres 主要執行個體待命複製功能 (預設) 時。詳情請參閱設定 Postgres 的主要待命複製功能一文。
- 相同節點上的訊息處理器和路由器。如果您在不同的節點上安裝訊息處理器和路由器,請先安裝所有訊息處理器,然後再安裝所有路由器。
全方位安裝
- 使用下列指令,在單一節點上安裝所有元件:
> /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
# With SMTP IP1=IPorDNSnameOfNode HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1" ZK_CLIENT_HOSTS="$IP1" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1" # Default is postgres PG_PWD=postgres SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
雙主機獨立安裝
如需邊緣拓撲和節點編號的清單,請參閱安裝拓撲。
- 安裝獨立閘道和節點 1
> /opt/apigee/apigee-setup/bin/setup.sh -p sa -f configFile - 在節點 2 上安裝 Analytics:
> /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
# With SMTP IP1=IPorDNSnameOfNode1 HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1" ZK_CLIENT_HOSTS="$IP1" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1" # Default is postgres PG_PWD=postgres SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
5 主機叢集安裝
如需邊緣拓撲和節點編號的清單,請參閱安裝拓撲。
- 在節點 1、2 和 3 上安裝 Datastore 叢集:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在節點 1 中安裝管理伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在節點 2 和 3 上安裝路由器和訊息處理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在節點 4 和 5 上安裝 Analytics:
> /opt/apigee/apigee-setup/bin/setup.sh -p sax -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 ?HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres PG_MASTER=$IP4 PG_STANDBY=$IP5 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
9 主機叢集安裝
如需邊緣拓撲和節點編號的清單,請參閱安裝拓撲。
- 在節點 1、2 和 3 中安裝 Datastore 叢集節點:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在節點 1 中安裝 Apigee 管理伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在節點 4 和 5 上安裝路由器和訊息處理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在節點 6 和 7 上安裝 Apigee Qpid Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在節點 8 和 9 中安裝 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres SKIP_SMTP=n PG_MASTER=$IP8 PG_STANDBY=$IP9 SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>"
13 主機叢集安裝
如需邊緣拓撲和節點編號的清單,請參閱安裝拓撲。
- 在節點 1、2 和 3 中安裝 Datastore 叢集節點:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在節點 4 和 5 上安裝 OpenLDAP:
> /opt/apigee/apigee-setup/bin/setup.sh -p ld -f configFile - 在節點 6 和 7 上安裝 Apigee 管理伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在節點 8 和 9 中安裝 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 在節點 10 和 11 上安裝路由器和訊息處理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在節點 12 和 13 中安裝 Apigee 數據分析 Qpid Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
# For all components except OpenLDAP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt # First Management Server on IP6 MSIP=$IP6 USE_LDAP_REMOTE_HOST=y LDAP_HOST=$IP4 LDAP_PORT=10389 # Second Management Server on IP7 # MSIP=$IP7 # USE_LDAP_REMOTE_HOST=y # LDAP_HOST=$IP5 # LDAP_PORT=10389 # Same password for both OpenLDAPs. APIGEE_LDAPPW=secret MP_POD=gateway REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1 $IP2 $IP3" # Default is postgres PG_PWD=postgres PG_MASTER=$IP8 PG_STANDBY=$IP9 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
# For OpenLDAP on IP4 and IP5 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 # First OpenLDAP Server on IP4 MSIP=$IP6 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP5 # Second OpenLDAP Server on IP5 # MSIP=$IP7 # USE_LDAP_REMOTE_HOST=n # LDAP_TYPE=2 # LDAP_SID=2 # LDAP_PEER=$IP4 # Set same password for both OpenLDAPs. APIGEE_LDAPPW=secret |
12 主機叢集安裝
在 a12 主機的叢集拓撲 (兩個資料中心) 上安裝 Edge 之前,您必須先瞭解如何在靜音設定檔中設定 ZooKeeper 和 Cassandra 屬性。
- ZooKeeper
針對兩個資料中心的 ZK_HOSTS 屬性,請按照相同順序指定這兩個資料中心內所有 ZooKeeper 節點的 IP 位址或 DNS 名稱,並在任何節點都使用「:observer」修飾符標示。不含「:observer」修飾符的節點稱為「投票者」。設定中必須有奇數的「投票者」,
在這個拓撲中,主機 9 上的 ZooKeeper 主機是觀察器:
對於每個資料中心的 ZK_CLIENT_HOSTS 屬性,請以相同順序指定資料中心內所有 ZooKeeper 節點的 IP 位址或 DNS 名稱。在以下所示的設定檔範例中,節點 9 已標記「:observer」輔助鍵,因此會有五位投票者:節點 1、2、3、7 和 8。 - Cassandra
所有資料中心的 Cassandra 節點數量都必須相同。
針對各個資料中心的 CASS_HOSTS,請務必為兩個資料中心指定所有 Cassandra IP 位址 (而非 DNS 名稱)。如為資料中心 1,請先列出該資料中心內的 Cassandra 節點。針對資料中心 2,請先列出該資料中心內的 Cassandra 節點。按照相同順序列出資料中心內所有 Cassandra 節點的 Cassandra 節點。
所有 Cassandra 節點都必須有後置字串「:<d>,<r>」,例如「<ip>:1,1 = 資料中心 1」,機架/供應區域 1、<ip>:2,1 = 資料中心 2 和機架/可用性可用區 1。
例如:「192.168.124.201:1,1 192.168.124.202:1,1 192.168.124.203:1,1 192.168.124.204:2,1 192.4.204:2,1
在這個部署模式中,Cassandra 設定看起來會像這樣:
如需邊緣拓撲和節點編號的清單,請參閱安裝拓撲。
- 在節點 1、2、3、7、8 和 9 上安裝 Datastore 叢集節點:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在節點 1 和 7 上使用 OpenLDAP 複製安裝 Apigee 管理伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在節點 2、3、8 和 9 上安裝路由器和訊息處理器:
> /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile - 在節點 4、5、10 和 11 中安裝 Apigee 數據分析 Qpid Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在節點 6 和 12 中安裝 Apigee Analytics Postgres Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照「測試安裝」一文的說明測試安裝作業。
- 按照「將機構加入機構」一文的說明加入貴機構。
以下顯示這個拓撲的無訊息設定檔。請注意這個設定檔。如需設定檔的完整參考資料,請參閱 Edge 設定檔參考資料。
- 設定 OpenLDAP 的複製功能,來進行兩個 OpenLDAP 節點的複製作業。
- 針對一個 ZooKeeper 節點指定「:observer」修飾符。在單一資料中心內安裝時,請省略該修飾符。
# Datacenter 1 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 IP12=IPorDNSnameOfNode12 HOSTIP=$(hostname -i) MSIP=$IP1 ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP7 APIGEE_LDAPPW=secret MP_POD=gateway-1 REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1 $IP7:2,1 $IP8:2,1 $IP9:2,1" # Default is postgres PG_PWD=postgres PG_MASTER=$IP6 PG_STANDBY=$IP12 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
# Datacenter 2 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 IP12=IPorDNSnameOfNode12 HOSTIP=$(hostname -i) MSIP=$IP7 ENABLE_SYSTEM_CHECK=y ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=2 LDAP_PEER=$IP1 APIGEE_LDAPPW=secret MP_POD=gateway-2 REGION=dc-2 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP7:2,1 $IP8:2,1 $IP9:2,1 $IP1:1,1 $IP2:1,1 $IP3:1,1" # Default is postgres PG_PWD=postgres PG_MASTER=$IP6 PG_STANDBY=$IP12 SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com # omit for no username SMTPPASSWORD=smtppwd # omit for no password SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |