启用/停用消息处理器/路由器可达性

最好在维护期间停用服务器上的可达性,例如 例如重启或升级服务器停用可达性后,系统便不会将任何流量定向到 服务器。例如,在消息处理器上停用可达性后, 用于将任何流量定向到该消息处理器。

例如,要升级消息处理器,您可以遵循以下过程:

  1. 停用消息处理器的可达性。
  2. 升级消息处理器。
  3. 启用消息处理器的可达性。

停用/启用以下设备的可达性: 消息处理器

要在消息处理器上停用可达性,只需停止 消息处理器:

/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://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
<ph type="x-smartling-placeholder">

执行路由器健康检查

您可以对路由器执行以下类型的健康检查:

  • 活跃性:向监控子系统发出的信号,表示其可以重启 组件。例如:
    To check a router's liveness:
    http://router_IP:8081/v1/servers/self/up
    
    To check a load balancer's liveness:
    http://router_IP:15999/v1/servers/self/reachable
  • 就绪性:确定路由器是否可以处理客户对特定环境的请求。

    例如:

    To check both a router and MP pool's availability:
    http://router_IP:15999/{org}__{env}

    要获取路由器的状态,请向路由器上的端口 8081 发出请求:

    curl -v http://router_IP:8081/v1/servers/self/up

    如果路由器已启动,则请求返回“true”和 HTTP 200。请注意, 则调用仅检查路由器是否已启动并正在运行。通过 由端口 15999 决定。

    要获取消息处理器的状态,请执行以下操作:

    curl http://Message_Processor_IP:8082/v1/servers/self/up