适用于私有云的 Edge v. 4.17.01
在维护期间(例如服务器重启或升级时),最好停用服务器上的可单手操作性。停用可单手操作性后,系统不会将任何流量引导至该服务器。例如,在消息处理器上停用可达性时,路由器不会将任何流量定向到该消息处理器。
例如,如需升级消息处理器,您可以使用以下步骤:
- 在消息处理器上停用可单手操作性。
- 升级消息处理器。
- 在消息处理器上启用可达性。
在消息处理器上停用/启用可单手操作性
如需在消息处理器上停用可单手操作性,只需停止消息处理器即可:
> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
消息处理器会先处理所有待处理的消息,然后再关闭。所有新请求都会路由到其他可用的消息处理器。
如需重启消息处理器,请使用以下命令:
> /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.
在路由器上停用/启用可单手操作
在生产环境中,您通常会在边缘路由器前面放置负载平衡器。 负载平衡器会监控路由器上的端口 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
如需稍后使路由器可用,请刷新 iptables:
> sudo iptables -F
您可能使用 iptables 来管理节点上的其他端口,因此在刷新 iptables 或使用 iptables 屏蔽端口 15999 时,必须将这一点考虑在内。如果您要针对其他规则使用 iptables,可以使用 -D 选项来撤消特定更改:
> sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT
检查路由器或消息处理器的状态
要获取路由器的状态,请向路由器上的端口 8081 发出请求:
> curl -v http://<routerIP>:8081/v1/servers/self/up
如果路由器处于启用状态,请求会在响应中返回“true”和 HTTP 200。请注意,此调用仅会检查路由器是否已启动并在运行。来自负载平衡器的路由器可达性的控制由端口 15999 决定
如需获取消息处理器的状态,请执行以下操作:
> curl http://<mpIP>:8082/v1/servers/self/up