啟用/停用伺服器 (訊息處理工具/路由器) 可連性

Edge for Private Cloud 4.17.01 版

在維護期間,如要重新啟動或升級伺服器,建議您停用伺服器的連線能力。停用可及性後,系統就不會將流量導向伺服器。舉例來說,如果在訊息處理器上停用可及性,路由器就不會將任何流量導向該訊息處理器。

舉例來說,如要升級訊息處理器,您可以使用下列程序:

  1. 停用訊息處理工具的觸及範圍。
  2. 升級訊息處理工具。
  3. 在訊息處理器上啟用可及性。

在訊息處理工具上停用/啟用可及性

如要停用 Message Processor 的觸及功能,您可以直接停止 Message Processor:

> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop

訊息處理工具會先處理所有待處理的郵件,然後再關閉。任何新要求都會轉送至其他可用的訊息處理器。

如要重新啟動 Message Processor,請使用下列指令:

> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
 > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready

當訊息處理器準備好處理訊息時,wait_for_ready 指令會傳回下列訊息:

Checking if message-processor is up: message-processor is up.

停用/啟用路由器的可連性

在實際工作環境中,Edge Router 前端通常會設有負載平衡器。負載平衡器會監控路由器上的通訊埠 15999,確保路由可供使用。

設定負載平衡器,使用下列網址在路由器上執行 HTTP 或 TCP 健康狀態檢查:

http://router_IP:15999/ v1/servers/self/reachable

如果可以連線至路由器,這個網址會傳回 HTTP 200 回應代碼。

如要讓路由器無法連線,您可以封鎖路由器上的 15999 連接埠。如果負載平衡器無法透過通訊埠 15999 存取路由器,就不會再將要求轉送至路由器。舉例來說,您可以在路由器節點上使用下列 iptables 指令封鎖連接埠:

>  sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT

如要稍後提供路由器,請清除 iptable:

> sudo iptables -F

您可能會使用 iptables 管理節點上的其他通訊埠,因此在清除 iptables 或使用 iptables 封鎖 15999 通訊埠時,請務必考量這一點。如果您用於其他規則,可以使用 -D 選項反轉特定變更:

> sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT

檢查 Router 或 Message Processor 的狀態

如要取得 Router 的狀態,請向 Router 的通訊埠 8081 提出要求:

> curl -v http://<routerIP>:8081/v1/servers/self/up

如果 Router 已啟用,要求會在回應中傳回「true」和 HTTP 200。請注意,這個呼叫只會檢查路由器是否已啟用並運作。負載平衡器是否可存取路由器,取決於 15999 埠

如何取得訊息處理器的狀態:

> curl http://<mpIP>:8082/v1/servers/self/up