Apigee 支援將 Edge for Private Cloud 從 4.50.00 或 4.51.00 版直接升級至 4.52.00 版。本頁說明如何執行這兩種升級作業。
誰可以執行更新
執行更新作業的使用者應與原先安裝 Edge 的使用者相同,或以 root 身分執行。
安裝 Edge RPM 後,任何人都可以進行設定。
必須更新哪些元件
您必須更新所有 Edge 元件。Edge 不支援包含多個版本元件的設定。
更新必要條件
升級 Apigee Edge 前,請確認符合下列必要條件:
- 備份所有節點
為安全起見,建議您在更新前完整備份所有節點。請按照目前 Edge 版本的程序執行備份。這樣一來,如果新版本無法正常運作,您就有備用方案。如要進一步瞭解備份,請參閱「備份與還原」。
- 確保 Edge 正在執行
使用下列指令,確保 Edge 在更新程序中正常運作:/opt/apigee/apigee-service/bin/apigee-all status
- 確認 Cassandra 壓縮策略為
LeveledCompactionStrategy
確認 Cassandra 壓縮策略設為LeveledCompactionStrategy,如變更 Cassandra 壓縮策略一文所述。
自動套用資源設定
如果您透過編輯 /opt/apigee/customer/application 中的 .properties 檔案設定任何屬性,則更新會保留這些值。
必須升級至 Zookeeper 3.8.0
這個 Edge for Private Cloud 版本包含 Zookeeper 3.8.0 升級。升級後,所有 Zookeeper 資料都會遷移至 Zookeeper 3.8.0。
升級 Zookeeper 前,請詳閱 Zookeeper 維護指南。大多數 Edge 正式環境系統會使用分散在多個資料中心的 Zookeeper 節點叢集。其中部分節點會設為投票者,參與 Zookeeper 領導者選舉,其餘節點則設為觀察者。詳情請參閱「 關於領導者、追隨者、投票者和觀察者」。投票者節點會選出領導者,然後投票者節點本身會成為追隨者。
在更新過程中,當領導者節點關閉時,可能會發生短暫延遲或寫入 Zookeeper 失敗。這可能會影響寫入 Zookeeper 的管理作業,例如 Proxy 的部署作業,以及 Apigee 基礎架構變更,例如新增或移除訊息處理器等。在 Zookeeper 升級期間,如果按照下列程序操作,Apigee 的執行階段 API 應該不會受到影響 (除非這些執行階段 API 呼叫 Management API)。
概略來說,升級程序包含備份每個節點。接著升級所有觀察者和追蹤者,最後升級領導者節點。
備份
備份 Zookeeper 的所有節點,以便在需要復原時使用。請注意,復原作業會將 Zookeeper 還原至備份時的狀態。注意:自備份以來 (其資訊儲存在 Zookeeper 中),Apigee 中的任何部署或基礎架構變更都會在還原期間遺失。
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper backup
如果您使用虛擬機器且具備相關功能,也可以建立 VM 快照或備份,以便在必要時還原或復原。
找出領導者、追隨者和觀察者
注意:下列指令範例使用 nc 公用程式將資料傳送至 Zookeeper。您也可以使用其他公用程式將資料傳送至 Zookeeper。
- 如果 ZooKeeper 節點未安裝 nc,請安裝:
sudo yum install nc
- 在節點上執行下列 nc 指令,其中 2181 是 ZooKeeper 連接埠:
echo stat | nc localhost 2181
您會看到如下所示的輸出:
Zookeeper version: 3.8.0-5a02a05eddb59aee6ac762f7ea82e92a68eb9c0f, built on 2022-02-25 08:49 UTC Clients: /0:0:0:0:0:0:0:1:41246[0](queued=0,recved=1,sent=0) Latency min/avg/max: 0/0.2518/41 Received: 647228 Sent: 647339 Connections: 4 Outstanding: 0 Zxid: 0x400018b15 Mode: follower Node count: 100597
在節點輸出的
Mode行中,您應該會看到觀察者、領導者或追隨者 (即非領導者的投票者),具體取決於節點設定。注意:在具有單一 ZooKeeper 節點的獨立 Edge 安裝中,Mode會設為獨立。 - 在每個 ZooKeeper 節點上重複步驟 1 和 2。
升級觀察器和追蹤器節點上的 Zookeeper
在每個觀察者和追蹤者節點上,按照下列步驟升級 Zookeeper:
- 下載並執行 Edge for Private Cloud 4.52 的 bootstrap,如「 在具有外部網際網路連線的節點上更新至 4.52.00」所述。程序可能會因節點是否有外部網際網路連線,或您是否執行離線安裝而有所不同。
- 升級 Zookeeper 元件:
注意:如果這些節點已安裝其他元件 (例如 Cassandra),您現在也可以升級這些元件 (例如使用 cs、zk 設定檔),或稍後再升級其他元件。Apigee 建議您先升級 Zookeeper,並確保叢集正常運作,再升級其他元件。/opt/apigee/apigee-setup/bin/update.sh -c zk -f <silent-config-file>
- 在每個 Zookeeper 觀察者和追蹤者節點上,重複上述步驟。
關閉領導者
所有觀察者和追蹤者節點都升級後,請關閉領導者。在識別為領導者的節點上,執行下列指令:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
請注意,在選出新的領導者之前,Zookeeper 可能會發生短暫延遲或寫入失敗。這可能會影響寫入 Zookeeper 的作業,例如 Proxy 的部署動作或 Apigee 基礎架構變更,例如新增或移除訊息處理器等。
確認已選出新的領導者
按照上方「找出領導者、追隨者和觀察者」一節的步驟操作,確認現有領導者停止後,是否已從追隨者中選出新的領導者。請注意,選出的領導者可能與目前的領導者位於不同的資料中心。
升級領導者
按照上方「 在觀察器和追蹤器節點上升級 Zookeeper」一節中的相同步驟操作。
舊的領導者節點也升級後,請確認叢集健康狀態,並確保有領導者節點。
復原
如需復原:
- 請先對觀察者和追蹤者執行復原步驟。
- 下載並執行要復原的版本 (4.50 或 4.51) 的啟動程序。 視節點是否具備外部網際網路連線,或您是否採用離線安裝而定,程序可能有所不同。
- 如果 Zookeeper 在節點上執行,請停止 Zookeeper:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper stop
- 解除安裝現有的 zookeeper:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper uninstall
/opt/apigee/apigee-setup/bin/setup.sh -p zk -f <silent-config-file>
還原備份
請參閱「從備份還原」。請注意,從舊版 Edge for Private Cloud (例如 4.50 和 4.51) 擷取的 Zookeeper 備份應與 Edge for Private Cloud 4.52 中的 Zookeeper 版本相容。
必須升級至 Postgres 14
這個 Edge 版本包含 Postgres 14 升級。在升級過程中,所有 Postgres 資料都會遷移至 Postgres 14。
大多數 Edge 正式版系統都使用兩個 Postgres 節點,並設定為主待命複製。在更新程序中,Postgres 節點會因更新而停機,但數據分析資料仍會寫入 Qpid 節點。Postgres 節點更新並重新上線後,系統會將數據分析資料推送至 Postgres 節點。
執行 Postgres 更新的方式,取決於您為 Postgres 節點設定資料儲存庫的方式:
- 如果您為 Postgres 節點使用本機資料儲存空間,則必須在升級期間安裝新的 Postgres 待命節點。升級完成後,即可停用新的 Postgres 待命節點。
如果因任何原因必須復原更新,則需要額外的 Postgres 待命節點。如果必須復原更新,新的 Postgres 待命節點會在復原後成為主要 Postgres 節點。因此,安裝新的 Postgres 待命節點時,該節點應符合 Edge 安裝需求中定義的 Postgres 伺服器所有硬體需求。
在 Edge 的 1 節點和 2 節點設定中,用於原型設計和測試的拓撲只有一個 Postgres 節點。您可以直接更新這些 Postgres 節點,不必建立新的 Postgres 節點。
- 如果您按照 Apigee 的建議,為 Postgres 節點使用網路儲存空間,就不必安裝新的 Postgres 節點。在下列程序中,您可以略過指定安裝和後續停用新 Postgres 待命節點的步驟。
開始更新程序之前,請先為 Postgres 使用的資料儲存庫建立網路快照。如果更新期間發生任何錯誤,且您必須執行復原作業,則可從該快照還原 Postgres 節點。
安裝新的 Postgres 待命節點
這項程序會在新的節點上建立 Postgres 待命伺服器。請務必為「現有」Edge 版本 (4.50.00 或 4.51.00) 安裝新的 Postgres 待命伺服器,而非 4.52.00 版。
如要執行安裝作業,請使用與安裝目前 Edge 版本時相同的設定檔。
如要建立新的 Postgres 待命節點,請按照下列步驟操作:
- 在目前的 Postgres 主要執行個體上,編輯
/opt/apigee/customer/application/postgresql.properties檔案,設定下列權杖。如果該檔案不存在,請建立檔案:conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust\ \nhost replication apigee new_standby_ip/32 trust
其中 existing_standby_ip 是目前 Postgres 待命伺服器的 IP 位址,new_standby_ip 則是新待命節點的 IP 位址。
- 在 Postgres 主要執行個體上重新啟動
apigee-postgresql:/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
- 查看主要節點上的
/opt/apigee/apigee-postgresql/conf/pg_hba.conf檔案,確認已新增待命節點。您應該會在該檔案中看到下列幾行:host replication apigee existing_standby_ip/32 trust host replication apigee new_standby_ip/32 trust
- 安裝新的 Postgres 待命伺服器:
- 編輯用來安裝目前 Edge 版本的設定檔,指定下列項目:
# IP address of the current master: PG_MASTER=192.168.56.103 # IP address of the new standby node PG_STANDBY=192.168.56.102
- 按照「安裝 Edge apigee-setup 公用程式」一文中的說明停用 SELinux。
如果您目前使用的是 Edge 4.51.00:
- 將 Edge bootstrap_4.51.00.sh 檔案下載至
/tmp/bootstrap_4.51.00.sh:curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
- 安裝 Edge
apigee-service公用程式和依附元件:sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord
如果您目前使用的是 Edge 4.50.00:
- 將 Edge bootstrap_4.50.00.sh 檔案下載至
/tmp/bootstrap_4.50.00.sh:curl https://software.apigee.com/bootstrap_4.50.00.sh -o /tmp/bootstrap_4.50.00.sh
- 安裝 Edge
apigee-service公用程式和依附元件:sudo bash /tmp/bootstrap_4.50.00.sh apigeeuser=uName apigeepassword=pWord
- 將 Edge bootstrap_4.51.00.sh 檔案下載至
- 使用
apigee-service安裝apigee-setup公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- 安裝 Postgres:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile
- 在新的待命節點上執行下列指令:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
確認該節點為待命節點。
- 編輯用來安裝目前 Edge 版本的設定檔,指定下列項目:
執行 Postgres 就地升級
初步步驟
就地升級至 Postgres 前,請在主要主機和待命主機上執行下列步驟,更新 apigee-postgresql 的 max_locks_per_transaction 屬性:
- 如果沒有,請建立
/opt/apigee/customer/application/postgresql.properties檔案。 - 將這個檔案的擁有權變更為
apigee:sudo chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
- 在檔案中新增下列屬性:
conf/postgresql.conf+max_locks_per_transaction=30000
- 設定
apigee-postgresql:apigee-service apigee-postgresql configure
- 重新啟動
apigee-postgresql:apigee-service apigee-postgresql restart
執行就地升級
如要就地升級至 Postgres 14,請按照下列步驟操作:
- 升級主要主機上的 postgres
/opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
- 在主要主機上執行設定指令:
apigee-service apigee-postgresql setup -f /opt/silent.conf
- 在主要主機上執行設定指令:
apigee-service apigee-postgresql configure
- 重新啟動主要主機:
apigee-service apigee-postgresql restart
- 將其設為主要:
apigee-service apigee-postgresql setup-replication-on-master -f /opt/silent.conf
- 確認主要主機已啟動:
apigee-service apigee-postgresql wait_for_ready
- 停止待命:
apigee-service apigee-postgresql stop
- 升級待命執行個體。
注意:如果這個步驟發生錯誤/失敗,可以忽略。
update.sh會嘗試使用不正確的設定啟動待命伺服器。只要將 Postgres 安裝作業升級至 14,即可忽略這項錯誤。/opt/apigee/apigee-setup/bin/update.sh -c ps -f /opt/silent.conf
- 確認待命執行個體已停止:
apigee-service apigee-postgresql stop
- 移除舊的待命設定:
rm -rf /opt/apigee/data/apigee-postgresql/
- 在待命伺服器上設定複製作業:
apigee-service apigee-postgresql setup-replication-on-standby -f /opt/silent.conf
- 從主要主機和待命主機的
/opt/apigee/customer/application/postgresql.properties檔案中移除conf/postgresql.conf+max_locks_per_transaction=30000行。這行程式碼是在初步步驟中新增。
完成這項程序後,待命執行個體就會成功啟動。
停用 Postgres 節點
更新完成後,請停用新的待命節點:
- 確認 Postgres 正在執行:
/opt/apigee/apigee-service/bin/apigee-all status
如果 Postgres 未執行,請啟動:
/opt/apigee/apigee-service/bin/apigee-all start
- 在新的待命節點上執行下列
curl指令,取得新待命節點的 UUID:curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
輸出內容結尾應會顯示節點的 UUID,格式如下:
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- 在新待命節點上執行下列指令,停止新待命節點:
/opt/apigee/apigee-service/bin/apigee-all stop
- 在 Postgres 主要節點上,編輯
/opt/apigee/customer/application/postgresql.properties,從conf_pg_hba_replication.connection移除新的待命節點:conf_pg_hba_replication.connection=host replication apigee existing_standby_ip/32 trust
- 在 Postgres 主節點上重新啟動 apigee-postgresql:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
- 查看主要節點上的
/opt/apigee/apigee-postgresql/conf/pg_hba.conf檔案,確認新的待命節點已移除。該檔案中應該只會顯示以下這行:host replication apigee existing_standby_ip/32 trust
- 在管理伺服器節點上發出下列 Edge Management API 呼叫,從 ZooKeeper 刪除待命節點的 UUID:
curl -u sysAdminEmail:password -X DELETE http://ms_IP:8080/v1/servers/new_standby_uuid
Postgres 升級後的步驟
Postgres 進行重大升級後,內部的統計資料會遭到清除。Postgres 查詢規劃器會運用這些統計資料,找出最合適的索引和路徑來執行查詢。
Postgres 會在執行查詢和 autovacuum daemon 時,逐步重建統計資料。不過,在統計資料重建完成前,查詢速度可能會變慢。
如要解決這個問題,請在主要 Postgres 節點上,對資料庫中的所有資料表執行 ANALYZE。或者,您也可以一次對幾個資料表執行 ANALYZE。
新版 Edge UI
本節列出 Edge UI 的注意事項。詳情請參閱「Private Cloud 的新版 Edge UI」。
安裝 Edge UI
完成初始安裝後,Apigee 建議您安裝 Edge UI,這是 Apigee Edge for Private Cloud 開發人員和管理員專用的強化使用者介面。
請注意,Edge UI 要求您停用基本驗證,並使用 IDP,例如 SAML 或 LDAP。
詳情請參閱「安裝新版 Edge UI」。
更新 Edge UI
如要更新 Edge UI 元件,請考量您要升級的 Edge for Private Cloud 版本:
- 從 4.51.00 到 4.52.00 (已安裝新版 Edge UI):請參閱本節的升級操作說明,瞭解
edge-management-ui元件。
使用 Apigee mTLS 更新
如要更新 Apigee mTLS,請按照下列步驟操作:
復原更新
如果更新失敗,您可以嘗試修正問題,然後再次執行 update.sh。您可以多次執行更新,系統會從上次中斷的地方繼續更新。
如果失敗時需要將更新復原至先前版本,請參閱「復原 4.52.00」一節,瞭解詳細操作說明。
記錄更新資訊
根據預設,update.sh 公用程式會將記錄資訊寫入:
/opt/apigee/var/log/apigee-setup/update.log
如果執行 update.sh 公用程式的使用者無法存取該目錄,系統會將記錄寫入 /tmp 目錄,並命名為 update_username.log。
如果使用者無法存取 /tmp,update.sh 公用程式就會失敗。
零停機更新
零停機時間更新 (或滾動式更新) 可讓您更新 Edge 安裝,而不會關閉 Edge。
只有 5 個節點以上的設定,才能進行零停機時間更新。
如要進行零停機時間升級,關鍵在於從負載平衡器中逐一移除各個路由器。接著,您要更新路由器和與路由器位於同一部機器上的任何其他元件,然後將路由器重新加入負載平衡器。
- 請按照機器更新順序一節所述,依正確順序更新安裝作業中的機器。
- 更新路由器時,請選取任一路由器,並將其設為無法連線,如「啟用/停用伺服器 (訊息處理器/路由器) 可連線狀態」一文所述。
- 更新所選路由器,以及與路由器位於同一部機器上的所有其他 Edge 元件。 所有 Edge 設定都會在同一個節點上顯示路由器和訊息處理器。
- 讓路由器恢復連線。
- 對其餘路由器重複步驟 2 到 4。
- 繼續更新安裝作業中的其餘機器。
請在更新前後留意下列事項:
- 在合併的路由器和訊息處理器節點上:
- 更新前:請執行下列操作:
- 讓路由器無法連線。
- 讓訊息處理器無法連線。
- 更新後,請執行下列操作:
- 讓訊息處理器可供連線。
- 讓路由器可供連線。
- 更新前:請執行下列操作:
- 在單一路由器節點上:
- 更新前,請將路由器設為無法連線。
- 更新後,請讓路由器可供連線。
- 在單一訊息處理器節點上:
- 更新前,請將訊息處理器設為無法連線。
- 更新後,請讓訊息處理器可供連線。
使用靜音設定檔
您必須將自動設定檔傳遞至更新指令。自動設定檔應與您用來安裝 Edge 4.50.00 或 4.51.00 的檔案相同。
在具備外部網際網路連線的節點上更新至 4.52.00
請按照下列程序更新節點上的 Edge 元件:
- 如有任何
cron工作設為對 Cassandra 執行修復作業,請先停用,直到更新完成。 - 以 root 身分登入節點,安裝 Edge RPM。
- 安裝
yum-utils和yum-plugin-priorities:sudo yum install yum-utils
sudo yum install yum-plugin-priorities - 按照「安裝 Edge apigee-setup 公用程式」一文中的說明停用 SELinux。
- 如果是在 Oracle 7.x 上安裝,請執行下列指令:
sudo yum-config-manager --enable ol7_optional_latest
- 如果您是在 AWS 上安裝,請執行下列
yum-configure-manager指令:yum update rh-amazon-rhui-client.noarch
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional 如果您目前使用的是 Edge 4.51.00:
- 將 Edge
bootstrap_4.52.00.sh檔案下載至/tmp/bootstrap_4.52.00.sh:curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh
- 執行下列指令,安裝 Edge 4.52.00
apigee-service公用程式和依附元件:sudo bash /tmp/bootstrap_4.52.00.sh apigeeuser=uName apigeepassword=pWord
其中 uName:pWord 是您從 Apigee 取得的使用者名稱和密碼。如果省略 pWord,系統會提示您輸入。
根據預設,安裝程式會檢查您是否已安裝 Java 1.8。如果沒有,安裝程式會為您安裝。
使用
JAVA_FIX選項指定 Java 安裝作業的處理方式。JAVA_FIX採用下列值:I:安裝 OpenJDK 1.8 (預設)。C:不安裝 Java,直接繼續。Q:退出。如果選擇這個選項,您必須自行安裝 Java。
- 使用
apigee-service更新apigee-setup公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-setup update
- 更新管理伺服器上的
apigee-validate公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-validate update
- 更新管理伺服器上的
apigee-provision公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-provision update
- 執行下列指令,在節點上執行
update公用程式:/opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
請按照「機器更新順序」一節所述的順序執行這項操作。
其中:
- component 是要更新的 Edge 元件。可能的值包括:
cs:Cassandraedge:Edge UI 以外的所有 Edge 元件:管理伺服器、訊息處理器、路由器、QPID 伺服器、Postgres 伺服器ldap:OpenLDAPps:postgresqlqpid:qpiddsso:Apigee SSO (如果您已安裝 SSO)ue:新版 Edge UIui:傳統版 Edge UIzk:Zookeeper
- configFile 是您在 4.50.00 或 4.51.00 安裝期間,用來定義 Edge 元件的設定檔。
您可以將 component 設為「all」,對所有元件執行
update.sh,但前提是您必須具備 Edge all-in-one (AIO) 安裝設定檔。例如:/opt/apigee/apigee-setup/bin/update.sh -c all -f ./sa_silent_config
- component 是要更新的 Edge 元件。可能的值包括:
- 在所有執行 Edge UI 元件的節點上重新啟動這些元件 (如果尚未這麼做):
/opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
- 如要測試更新,請按照「測試安裝」一節所述,在管理伺服器上執行
apigee-validate公用程式。
如果之後決定復原更新,請按照「復原 4.52.00」一節所述的程序操作。
從本機存放區更新至 4.52.00
如果 Edge 節點位於防火牆後方,或因其他原因而無法透過網際網路存取 Apigee 存放區,您可以從 Apigee 存放區的本機存放區或鏡像執行更新。
建立本機 Edge 存放區後,您可以透過下列兩種方式從本機存放區更新 Edge:
- 建立存放區的 .tar 檔案,將 .tar 檔案複製到節點,然後從 .tar 檔案更新 Edge。
- 在本機存放區的節點上安裝網路伺服器,讓其他節點可以存取。 Apigee 提供 Nginx 網路伺服器供您使用,您也可以使用自己的網路伺服器。
如要從本機 4.52.00 存放區更新:
- 按照「安裝 Edge apigee-setup 公用程式」中「建立本機 Apigee 存放區」一節的說明,建立本機 4.52.00 存放區。
- 如要從 .tar 檔案安裝 apigee-service:
- 在本機存放區所在的節點上,使用下列指令將本機存放區封裝成名為
/opt/apigee/data/apigee-mirror/apigee-4.52.00.tar.gz的單一 .tar 檔案:/opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
- 將 .tar 檔案複製到要更新 Edge 的節點。例如,將其複製到新節點上的
/tmp目錄。 - 在新節點上,將檔案解壓縮至
/tmp目錄:tar -xzf apigee-4.52.00.tar.gz
這個指令會在包含 .tar 檔案的目錄中,建立名為
repos的新目錄。例如/tmp/repos。 - 從
/tmp/repos安裝 Edgeapigee-service公用程式和依附元件:sudo bash /tmp/repos/bootstrap_4.52.00.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
請注意,您在這個指令中加入了 repos 目錄的路徑。
- 在本機存放區所在的節點上,使用下列指令將本機存放區封裝成名為
- 如要使用 Nginx 網路伺服器安裝 apigee-service:
- 按照「安裝 Edge apigee-setup 公用程式」一文中的「使用 Nginx 網路伺服器從存放區安裝」一節所述,設定 Nginx 網路伺服器。
- 在遠端節點上,將 Edge
bootstrap_4.52.00.sh檔案下載至/tmp/bootstrap_4.52.00.sh:/usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.52.00.sh -o /tmp/bootstrap_4.52.00.sh
其中 uName:pWord 是您先前為存放區設定的使用者名稱和密碼,remoteRepo 則是存放區節點的 IP 位址或 DNS 名稱。
- 在遠端節點上,安裝 Edge
apigee-setup公用程式和依附元件:sudo bash /tmp/bootstrap_4.52.00.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
其中 uName:pWord 是存放區使用者名稱和密碼。
- 使用
apigee-service更新apigee-setup公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-setup update
- 更新管理伺服器上的
apigee-validate公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-validate update
- 更新管理伺服器上的
apigee-provision公用程式,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service apigee-provision update
- 按照「機器更新順序」一節所述的順序,在節點上執行
update公用程式:/opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
其中:
- component 是要更新的 Edge 元件。您通常會更新下列元件:
cs:Cassandraedge:Edge UI 以外的所有 Edge 元件:管理伺服器、訊息處理器、路由器、QPID 伺服器、Postgres 伺服器ldap:OpenLDAPps:postgresqlqpid:qpiddsso:Apigee SSO (如果您已安裝 SSO)ue新版 Edge UIui:傳統版 Edge UIzk:Zookeeper
- configFile 是您在 4.50.00 或 4.51.00 安裝期間,用來定義 Edge 元件的設定檔。
您可以將 component 設為「all」,對所有元件執行
update.sh,但前提是您必須具備 Edge all-in-one (AIO) 安裝設定檔。例如:/opt/apigee/apigee-setup/bin/update.sh -c all -f /tmp/sa_silent_config
- component 是要更新的 Edge 元件。您通常會更新下列元件:
- 在所有執行 UI 元件的節點上重新啟動 UI 元件 (如果尚未這麼做):
/opt/apigee/apigee-service/bin/apigee-service [edge-management-ui|edge-ui] restart
- 如要測試更新,請按照「測試安裝」一節所述,在管理伺服器上執行
apigee-validate公用程式。
如果之後決定復原更新,請按照「復原 4.52.00」一節所述的程序操作。
機器更新順序
在 Edge 安裝作業中,更新機器的順序很重要:
- 您必須先更新所有 Cassandra 和 ZooKeeper 節點,才能更新其他節點。
- 如果任何機器有多個 Edge 元件 (管理伺服器、訊息處理器、路由器、QPID 伺服器,但不包括 Postgres 伺服器),請使用
-c edge選項同時更新所有元件。 - 如果步驟指定應在多部機器上執行,請按照指定的機器順序執行。
- 您不需要另外更新營利功能。指定
-c edge選項時,系統會更新這個值。
1 節點獨立升級
如要將 1 節點獨立設定升級至 4.52.00:
- 更新所有元件:
/opt/apigee/apigee-setup/bin/update.sh -c all -f configFile
- (如果您已安裝
apigee-adminapi) 更新apigee-adminapi公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
2 節點獨立升級
更新下列元件,以便進行 2 節點獨立安裝:
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在機器 1 上更新 Cassandra 和 ZooKeeper:
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 在機器 2 上更新 Qpid 和 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
- 在機器 1 上更新 LDAP:
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 更新機器 2 和 1 上的 Edge 元件:
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 更新機器 1 的 UI:
/opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- (如果您已安裝
apigee-adminapi) 更新機器 1 上的apigee-adminapi公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- (如果您已安裝 Apigee SSO) 在機器 1 上更新 Apigee SSO:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
其中 sso_config_file 是您在安裝 SSO 時建立的設定檔。
- 在機器 1 上重新啟動 Edge UI 元件:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
5 節點升級
更新下列元件,以便安裝 5 個節點:
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在機器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 更新機器 4 上的 Qpid 和 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c qpid, ps -f configFile
- 在機器 5 上更新 Qpid 和 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c qpid, ps -f configFile
- 在機器 1 上更新 LDAP:
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 更新機器 4、5、1、2、3 上的 Edge 元件:
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 更新 Edge UI:
- 傳統版 UI:如果您使用的是傳統版 UI,請更新機器 1 上的
ui元件,如下例所示:/opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- 新版 Edge UI:如果您安裝的是新版 Edge UI,請在適當的機器 (可能不是機器 1) 上更新
ue元件:/opt/apigee/apigee-setup/bin/update.sh -c ue -f /opt/silent.conf
- 傳統版 UI:如果您使用的是傳統版 UI,請更新機器 1 上的
- (如果您已安裝
apigee-adminapi) 更新機器 1 上的apigee-adminapi公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- (如果您已安裝 Apigee SSO) 在機器 1 上更新 Apigee SSO:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
其中 sso_config_file 是您在安裝 SSO 時建立的設定檔。
- 重新啟動 UI 元件:
- 傳統版 UI:如果您使用的是傳統版 UI,請重新啟動機器 1 上的
edge-ui元件,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
- 新版 Edge UI:如果您安裝了新版 Edge UI,請在適當的機器上重新啟動
edge-management-ui元件 (可能不是機器 1):/opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart
- 傳統版 UI:如果您使用的是傳統版 UI,請重新啟動機器 1 上的
9 節點叢集升級
更新下列元件,以便安裝 9 節點叢集:
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在機器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 更新機器 6 和 7 上的 Qpid:
/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 更新機器 8 上的 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 在機器 9 上更新 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 在機器 1 上更新 LDAP:
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 依序更新機器 6、7、8、9、1、4 和 5 上的 Edge 元件:
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 在機器 1 上更新新版 UI (
ue) 或傳統版 UI (ui):/opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
- (如果您已安裝
apigee-adminapi) 更新機器 1 上的apigee-adminapi公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- (如果您已安裝 Apigee SSO) 在機器 1 上更新 Apigee SSO:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
其中 sso_config_file 是您在安裝 SSO 時建立的設定檔。
- 重新啟動 UI 元件:
- 傳統版 UI:如果您使用的是傳統版 UI,請重新啟動機器 1 上的
edge-ui元件,如以下範例所示:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
- 新版 Edge UI:如果您安裝了新版 Edge UI,請在適當的機器上重新啟動
edge-management-ui元件 (可能不是機器 1):/opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart
- 傳統版 UI:如果您使用的是傳統版 UI,請重新啟動機器 1 上的
13 節點叢集升級
如要安裝 13 節點叢集,請更新下列元件:
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 在機器 1、2 和 3 上更新 Cassandra 和 ZooKeeper:
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 更新機器 12 和 13 上的 Qpid:
/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 更新機器 8 上的 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 在機器 9 上更新 Postgres:
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 在機器 4 和 5 上更新 LDAP:
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 依序更新機器 12、13、8、9、6、7、10 和 11 上的 Edge 元件:
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 在機器 6 和 7 上更新新版 UI (
ue) 或傳統版 UI (ui):/opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
- (如果您已安裝
apigee-adminapi) 更新機器 6 和 7 上的apigee-adminapi公用程式:/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- (如果您已安裝 Apigee SSO) 在機器 6 和 7 上更新 Apigee SSO:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
其中 sso_config_file 是您在安裝 SSO 時建立的設定檔。
- 重新啟動 UI 元件:
- 傳統版 UI:如果您使用的是傳統版 UI,請在機器 6 和 7 上重新啟動
edge-ui元件,如下例所示:/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
- 新版 Edge UI:如果您安裝了新版 Edge UI,請在機器 6 和 7 上重新啟動
edge-management-ui元件:/opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart
- 傳統版 UI:如果您使用的是傳統版 UI,請在機器 6 和 7 上重新啟動
12 節點叢集升級
如要安裝 12 節點叢集,請更新下列元件:
如需 Edge 拓撲和節點編號清單,請參閱「安裝拓撲」。
- 更新 Cassandra 和 ZooKeeper:
- 在資料中心 1 的機器 1、2 和 3 上:
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 資料中心 2 的機器 7、8 和 9
/opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- 在資料中心 1 的機器 1、2 和 3 上:
- 更新 qpidd:
- 資料中心 1 中的機器 4、5
- 在機器 4 上更新
qpidd:/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 更新機器 5 上的
qpidd:/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 在機器 4 上更新
- 資料中心 2 中的機器 10、11
- 在機器 10 上更新
qpidd:/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 更新機器 11 上的
qpidd:/opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- 在機器 10 上更新
- 資料中心 1 中的機器 4、5
- 更新 Postgres:
- 資料中心 1 中的機器 6
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 資料中心 2 的機器 12
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 資料中心 1 中的機器 6
- 更新 LDAP:
- 資料中心 1 中的機器 1
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 資料中心 2 的機器 7
/opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- 資料中心 1 中的機器 1
- 更新 Edge 元件:
- 資料中心 1 中的機器 4、5、6、1、2、3
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 資料中心 2 中的機器 10、11、12、7、8、9
/opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- 資料中心 1 中的機器 4、5、6、1、2、3
- 更新新版 UI (
ue) 或傳統版 UI (ui):- 資料中心 1 中的機器 1:
/opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
- 資料中心 2 的機器 7:
/opt/apigee/apigee-setup/bin/update.sh -c [ui|ue] -f configFile
- 資料中心 1 中的機器 1:
- (如果您已安裝
apigee-adminapi) 更新apigee-adminapi公用程式:- 資料中心 1 中的機器 1:
/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- 資料中心 2 的機器 7:
/opt/apigee/apigee-service/bin/apigee-service apigee-adminapi update
- 資料中心 1 中的機器 1:
- (如果您已安裝 Apigee SSO) 更新 Apigee SSO:
- 資料中心 1 中的機器 1:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
- 資料中心 2 的機器 7:
/opt/apigee/apigee-setup/bin/update.sh -c sso -f sso_config_file
其中 sso_config_file 是您安裝 SSO 時建立的設定檔。
- 資料中心 1 中的機器 1:
- 在機器 1 和 7 上重新啟動新版 Edge UI (
edge-management-ui) 或傳統版 Edge UI (edge-ui) 元件:/opt/apigee/apigee-service/bin/apigee-service [edge-ui|edge-management-ui] restart
非標準設定
如果您採用非標準設定,請按照下列順序更新 Edge 元件:
- ZooKeeper
- Cassandra
- qpidd、ps
- LDAP
- Edge,也就是所有節點上的「-c edge」設定檔,順序如下:具有 Qpid 伺服器的節點、Edge Postgres 伺服器、管理伺服器、訊息處理器和路由器。
- Edge UI (傳統版或新版)
apigee-adminapi- Apigee SSO
更新完成後,請務必在所有執行 Edge UI 元件的機器上重新啟動該元件。
- 將 Edge