サーバー(Message Processor/Router)のネットワーク到達性の有効化/無効化

Edge for Private Cloud v4.16.05

サーバーの再起動やアップグレードなどのメンテナンス中には、サーバーの到達可能性を無効にすることをおすすめします。ネットワーク到達性が無効になっている場合、トラフィックはサーバーに送信されません。たとえば、Message Processor のネットワーク到達性が無効になっている場合、Router はトラフィックをその Message Processor に送信しません。

たとえば、Message Processor をアップグレードするには、次の手順に沿って操作します。

  1. Message Processor のネットワーク到達性を無効にします。
  2. Message Processor をアップグレードします。
  3. Message Processor でネットワーク到達性を有効にします。

Message Processor のネットワーク到達性を無効または有効にする

Message Processor のネットワーク到達性を無効にするには、Message Processor を停止します。

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

Message Processor は、シャットダウンする前に保留中のメッセージを処理します。新しいリクエストは、利用可能な他の Message Processor にルーティングされます。

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

Message Processor でメッセージを処理する準備ができると、wait_for_ready コマンドは次のメッセージを返します。

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

Router のネットワーク到達性を無効または有効にする

本番環境では、通常、Edge Router の前にロードバランサを配置します。ロードバランサは Router のポート 15999 をモニタリングし、Route が使用可能であることを確認します。Router を到達不能にするには、Router のポート 15999 をブロックします。ロードバランサがポート 15999 で Router にアクセスできない場合、リクエストは Router に転送されなくなります。

たとえば、Router ノードで次の iptables コマンドを使用して、ポートをブロックできます。

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

後で Router を利用できるようにするには、iptables をフラッシュします。

> sudo iptables -F

iptables を使用してノードの他のポートを管理している場合でも、iptables をフラッシュする場合や iptables を使用してポート 15999 をブロックする場合は、そのことを考慮する必要があります。他のルールに iptables を使用している場合は、-D オプションを使用して特定の変更を元に戻すことができます。

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

ネットワーク到達性のステータスを確認する

Router に到達可能なステータスを取得するには、Router のポート 15999 にリクエストを送信します。

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

Router が到達可能である場合、リクエストは HTTP 200 を返します。

Message Processor で到達可能なステータスを取得するには:

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