Edge for Private Cloud 4.16.09 版
在節點上安裝 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 驗證。你也可以在安裝後啟用。
詳情請參閱「啟用 Cassandra 驗證」。
將路由器繫結至受保護的通訊埠
如要將路由器繫結至受保護的通訊埠 (例如通訊埠編號小於 1024),則必須將路由器設為以有權存取這些通訊埠的使用者身分執行。根據預設,路由器會以「apigee」使用者身分執行,該使用者無權存取特殊權限通訊埠。
如要以其他使用者身分執行路由器,請按照下列步驟操作:
- 以 root 身分建立 /opt/apigee/etc/edge-router.d/RUN_USER.sh 檔案。
- 在檔案中新增下列項目:
RUN_USER=root
如果不想以 root 身分執行路由器,請指定有權存取通訊埠的使用者。 - 儲存檔案。
- 如果您指定了 root 以外的使用者,請將檔案擁有者變更為該使用者:
> chown USER:USER /opt/apigee/etc/edge-router.d/RUN_USER.sh - 重新啟動路由器:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
指定要安裝的元件
下表列出您傳遞至 apigee-service 公用程式 -p 選項的選項,用於指定要在節點上安裝哪些元件:
|
構成要素 |
說明 |
|---|---|
|
c |
僅安裝 Cassandra。 |
| zk | 僅安裝 ZooKeeper。 |
|
數據資料學家 |
安裝 ZooKeeper 和 Cassandra。 |
|
ld |
僅安裝 OpenLDAP。 |
|
毫秒 |
安裝 Edge Management Server,這也會安裝 Edge UI 和 OpenLDAP。 如果您在設定檔中設定 USE_LDAP_REMOTE_HOST=y,系統會略過 OpenLDAP 安裝作業,而管理伺服器會使用安裝在其他節點上的 OpenLDAP。 |
|
r |
僅安裝邊緣路由器。 |
|
mp |
僅安裝 Edge 訊息處理器。 |
|
rmp |
安裝 Edge 路由器和訊息處理器。 |
|
ui |
安裝 Edge UI。 |
|
qs |
僅安裝 Qpid 伺服器。 |
|
ps |
僅安裝 Postgres 伺服器。 |
|
sax |
安裝數據分析元件,也就是 Qpid 和 Postgres。 這個選項僅適用於開發和測試,不適用於正式環境。 |
|
月 |
安裝營利功能。 |
|
sa |
安裝 Edge 獨立式,也就是 Cassandra、ZooKeeper、Management Server、OpenLDAP、Edge UI、Router 和 Message Processor。這個選項會省略 Edge Analytics 元件:Qpid 和 Postgres。 這個選項僅適用於開發和測試,不適用於正式環境。 |
|
aio |
在單一節點上安裝所有元件。 這個選項僅適用於開發和測試,不適用於正式環境。 |
建立設定檔
設定檔包含安裝 Edge 所需的所有資訊。您通常可以使用同一個設定檔,安裝 Edge 安裝作業中的所有元件。
不過,在下列情況下,您必須使用不同的設定檔,或修改設定檔:
- 您正在安裝多部 OpenLDAP 伺服器,且必須在 13 節點安裝作業中設定複製功能。每個檔案都需要不同的 LDAP_SID 和 LDAP_PEER 值。
- 您正在建立多個資料中心,做為 12 節點安裝作業的一部分。每個資料中心都需要不同的屬性設定,例如 ZK_CLIENT_HOSTS 和 CASS_HOSTS。
設定檔範例
以下範例顯示 9 節點 Edge 安裝作業的完整靜音設定檔。請視設定需要編輯這個檔案。請使用 setup.sh 的 -f 選項來納入這個檔案。下方也提供各 Edge 拓撲的設定檔範例。
# IP address or DNS name of nodes. IP1=192.168.1.1 # Management Server, OpenLDAP, UI, ZooKeeper, Cassandra IP2=192.168.1.2 # ZooKeeper, Cassandra IP3=192.168.1.3 # ZooKeeper, Cassandra IP4=192.168.1.4 # Router, Message Processor IP5=192.168.1.5 # Router, Message Processor IP6=192.168.1.6 # Qpid IP7=192.168.1.7 # Qpid IP8=192.168.1.8 # Postgres IP9=192.168.1.9 # Postgres # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Set Edge sys admin credentials. ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Location of Edge license file. LICENSE_FILE=/tmp/license.txt # Management Server information. MSIP=$IP1 # IP or DNS name of Management Server node. # Specify the port the Management Server listens on for API calls. # APIGEE_PORT_HTTP_MS=8080 # Default is 8080. # # OpenLDAP information. # # Set to y if you are connecting to a remote LDAP server. # If n, Edge installs OpenLDAP when it installs the Management Server. USE_LDAP_REMOTE_HOST=n # If connecting to remote OpenLDAP server, specify the IP/DNS name and port. # LDAP_HOST=$IP1 # IP or DNS name of OpenLDAP node. # LDAP_PORT=10389 # Default is 10389. APIGEE_LDAPPW=yourLdapPassword # Specify OpenLDAP without replication, 1, or with replication, 2. LDAP_TYPE=1 # Set only if using replication. # LDAP_SID=1 # Unique ID for this LDAP server. # LDAP_PEER= # IP or DNS name of LDAP peer. BIND_ON_ALL_INTERFACES=y # The Message Processor and Router pod. MP_POD=gateway # The name of the region, corresponding to the data center name. REGION=dc-1 # Use dc-1 unless installing in a # multi-data center environment. # ZooKeeper information. # See table below if installing in a multi-data center environment. ZK_HOSTS="$IP1 $IP2 $IP3" # IP/DNS names of all ZooKeeper nodes. ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # IP/DNS names of all ZooKeeper nodes. # Cassandra information. CASS_CLUSTERNAME=Apigee # Default name is Apigee. # IP addresses of the Cassandra hosts separated by spaces. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Set to enable Cassandra authentication. # CASS_AUTH=y # The default value is n. # Cassandra uname/pword required if you enabled Cassandra authentication. # CASS_USERNAME= # CASS_PASSWORD= # Use to enable Postgres master-standby replication # when you have multiple Postgres nodes. # PG_MASTER=IPorDNSofNewMaster # PG_STANDBY=IPorDNSofOldMaster # SMTP information. SKIP_SMTP=n # Skip now and configure later by specifying "y". SMTPHOST=smtp.gmail.com SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y SMTPPORT=465 # If no SSL, use a different port, such as 25.
下表提供這些屬性的其他資訊:
|
屬性 |
注意事項 |
|---|---|
|
IP/DNS 名稱 |
指定節點的 IP 位址時,請勿使用對應至 127.0.0.1 的主機名稱或 127.0.0.1 的 IP 位址。 |
|
ADMIN_EMAIL |
系統管理員密碼長度至少須為 8 個字元,且須包含一個大寫字母、一個小寫字母、一個數字或一個特殊字元。如果省略密碼,系統會提示您輸入。 |
|
LICENSE_FILE |
授權檔案的位置,必須可供「apigee」使用者存取。 例如,將檔案儲存在 /tmp 目錄中,並在檔案上執行 chmod 777。檔案會複製到 Edge 安裝目錄。 |
|
USE_LDAP_REMOTE_HOST |
如果 USE_LDAP_REMOTE_HOST 為 n,Edge 會在安裝管理伺服器時自動安裝 OpenLDAP。 如果您要連線至遠端 LDAP 伺服器,請將 USE_LDAP_REMOTE_HOST 設為 y。OpenLDAP 不會與管理伺服器一起安裝。 如要連線至遠端 OpenLDAP 伺服器,請使用 LDAP_HOST |
|
LDAP_TYPE |
如果 OpenLDAP 沒有複製功能,請將 LDAP_TYPE 設為 1。LDAP_TYPE=2 對應至 OpenLDAP (含複製功能)。 如果 Edge 拓撲使用單一 OpenLDAP 伺服器,請指定 1。如果 Edge 安裝作業使用多個 OpenLDAP 節點 (例如 13 節點正式版安裝作業),請指定 2。 如要啟用複製功能,請設定下列屬性:
|
|
BIND_ON_ALL_INTERFACES |
如果設為「y」,路由器/訊息處理器會繫結 (監聽) 所有介面 (IP)。 如果設為「n」,路由器/訊息處理器會繫結 (監聽) 特定介面,即「hostname -i」指令傳回的 IP。 |
|
MP_POD |
指定訊息處理器和路由器 Pod 的名稱。預設名稱為 gateway。 |
|
REGION |
區域名稱。按照慣例,名稱通常採用 dc-# 格式,其中 # 對應至整數值。例如 dc-1、dc-2 等。除非是在多資料中心環境中安裝,否則可以使用 dc-1。 在多個資料中心安裝作業中,這個值會是 dc-1 或 dc-2 等,視您安裝的資料中心而定。不過,您不限於使用 dc-# 格式的名稱,可以為區域使用任何名稱。 |
|
ZK_HOSTS |
ZooKeeper 節點的 IP 位址或 DNS 名稱。所有 ZooKeeper 節點上的 IP 位址或 DNS 名稱,都必須以相同順序列出。 在多資料中心環境中,請列出兩個資料中心的所有 ZooKeeper 節點。 只有在建立多個資料中心時 (如 12 主機安裝所述),才在 ZooKeeper 節點上指定「:observer」修飾符。在單一資料中心安裝時,請省略該修飾符。詳情請參閱「12 主機叢集安裝」。 |
|
ZK_CLIENT_HOSTS |
這個資料中心使用的 ZooKeeper 節點 IP 位址或 DNS 名稱。所有 ZooKeeper 節點上的 IP 位址或 DNS 名稱必須以相同順序列出。 在單一資料中心安裝中,這些節點與 ZK_HOSTS 指定的節點相同。 在多資料中心環境中,請僅列出這個資料中心內的 ZooKeeper 節點。 詳情請參閱「12 主機叢集安裝」。 |
|
CASS_HOSTS |
Cassandra 節點的 IP 位址 (而非 DNS 名稱)。前兩個節點會做為種子伺服器。所有 Cassandra 節點上的 IP 位址都必須按照相同順序列出。 Cassandra 節點可以有選用的「:dc,ra」後置字串,用於指定 Cassandra 節點的資料中心和機架。只有在建立多個資料中心時 (如 12 主機安裝所述),才需要指定這個修飾符。在單一資料中心安裝時,請省略該修飾符。 例如「192.168.124.201:1,1」= 資料中心 1 和機架/可用區 1,以及「192.168.124.204:2,1」= 資料中心 2 和機架/可用區 1。 在多資料中心環境中,為克服防火牆問題,CASS_HOSTS 必須按照特定方式排序 (如上例所示),將目前資料中心的節點放在開頭。詳情請參閱「12 主機叢集安裝」。 |
|
CASS_AUTH CASS_PASSWORD |
如果啟用 Cassandra 驗證 (CASS_AUTH=y),您可以使用這些屬性傳遞 Cassandra 使用者名稱和密碼。 |
|
PG_MASTER PG_STANDBY |
設定為啟用 Postgres 主從式複製,格式如下: PG_MASTER=IPorDNSofNewMaster PG_STANDBY=IPorDNSofOldMaster |
|
SKIP_SMTP |
設定 SMTP,讓 Edge 傳送密碼遺失和其他通知的電子郵件。 如果不需要 SMTP 使用者憑證,請省略 SMTPUSER 和 SMTPPASSWORD。 |
元件安裝順序
元件安裝順序取決於您需要的拓撲。
以下所有安裝範例都假設您要安裝:
- 停用 Cassandra 驗證 (預設)。詳情請參閱「啟用 Cassandra 驗證」。
- 停用 Postgres 主執行個體/待命執行個體複製功能 (預設)。詳情請參閱「設定 Postgres 的主要/待命複製」。
- 訊息處理器和路由器位於同一個節點。如果您在不同的節點上安裝訊息處理器和路由器,請先安裝所有訊息處理器,再安裝所有路由器。
安裝記錄檔
根據預設,setup.sh 公用程式會將安裝作業的記錄資訊寫入:
/opt/apigee/var/log/apigee-setup/setup.log
如果執行 setup.sh 公用程式的使用者無法存取該目錄,系統會將記錄寫入 /tmp 目錄,並命名為 setup_username.log。
如果使用者無法存取 /tmp,setup.sh 公用程式就會失敗。
全方位安裝
- 使用下列指令,在單一節點上安裝所有元件:
> /opt/apigee/apigee-setup/bin/setup.sh -p aio -f configFile - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔:
# With SMTP IP1=IPorDNSnameOfNode HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y 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" 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
2 主機獨立安裝
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 安裝獨立閘道和節點 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 - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔:
# With SMTP IP1=IPorDNSnameOfNode1 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y 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" 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
5 主機叢集安裝
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在節點 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 - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔:
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP4=IPorDNSnameOfNode4 IP5=IPorDNSnameOfNode5 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y 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" 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
9 主機叢集安裝
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在節點 1、2 和 3 上安裝資料儲存庫叢集節點:
> /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 Analytics Qpid 伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在節點 8 和 9 上安裝 Apigee Analytics Postgres 伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔:
# With SMTP IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) ADMIN_EMAIL=opdk@apigee.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt MSIP=$IP1 USE_LDAP_REMOTE_HOST=n LDAP_TYPE=1 APIGEE_LDAPPW=secret BIND_ON_ALL_INTERFACES=y 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" 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
13 主機叢集安裝
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在節點 1、2 和 3 上安裝資料儲存庫叢集節點:
> /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 Management Server:
> /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile - 在節點 8 和 9 上安裝 Apigee Analytics Postgres 伺服器:
> /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 Analytics Qpid 伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔:
# 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) ADMIN_EMAIL=opdk@apigee.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 BIND_ON_ALL_INTERFACES=y 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" 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 |
# 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) ADMIN_EMAIL=opdk@apigee.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 主機叢集安裝
在 12 主機叢集拓撲 (兩個資料中心) 上安裝 Edge 之前,您必須瞭解如何在靜默設定檔中設定 ZooKeeper 和 Cassandra 屬性。
- ZooKeeper
針對兩個資料中心的 ZK_HOSTS 屬性,請以相同順序指定兩個資料中心內所有 ZooKeeper 節點的 IP 位址或 DNS 名稱,並使用「:observer」修飾符標示任何節點。沒有「:observer」修飾符的節點稱為「投票者」。設定中的「投票者」數量必須為奇數。
在這個拓撲中,主機 9 上的 ZooKeeper 主機是觀察者:

針對每個資料中心的 ZK_CLIENT_HOSTS 屬性,請僅指定資料中心內 ZooKeeper 節點的 IP 位址或 DNS 名稱,並按照相同順序指定資料中心內所有 ZooKeeper 節點。在下方設定檔範例中,節點 9 標有「:observer」修飾符,因此您有五個投票者:節點 1、2、3、7 和 8。 - Cassandra
所有資料中心都必須有相同數量的 Cassandra 節點。
針對每個資料中心的 CASS_HOSTS,請務必為兩個資料中心指定所有 Cassandra IP 位址 (而非 DNS 名稱)。對於資料中心 1,請先列出該資料中心內的 Cassandra 節點。針對資料中心 2,請先列出該資料中心內的 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.168.124.205:2,1 192.168.124.206:2,1」
每個資料中心機架/可用區 1 的第一個節點,會做為種子伺服器。
在這個部署模型中,Cassandra 設定如下:

如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在節點 1、2、3、7、8 和 9 上安裝資料儲存庫叢集節點:
> /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile - 在節點 1 和 7 上安裝 Apigee Management Server,並啟用 OpenLDAP 複製功能:
> /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 Analytics Qpid 伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - 在節點 6 和 12 上安裝 Apigee Analytics Postgres 伺服器:
> /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile - 按照「測試安裝」一節所述測試安裝。
- 按照「將機構加入平台」一文的說明,將機構加入平台。
以下是這個拓撲的靜默設定檔。請注意,這個設定檔:
- 設定 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 ADMIN_EMAIL=opdk@apigee.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 BIND_ON_ALL_INTERFACES=y 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" 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 |
# Datacenter 2 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP6=IPorDNSnameOfNode6 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 IP12=IPorDNSnameOfNode12 HOSTIP=$(hostname -i) MSIP=$IP7 ADMIN_EMAIL=opdk@apigee.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 BIND_ON_ALL_INTERFACES=y 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" 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 |