Edge for Private Cloud v4.19.01
ファイアウォールの管理は、仮想ホストについてのみ必要なわけではありません。VM ホストと物理的なホスト ファイアウォールの両方で、コンポーネントが互いに通信するために必要なポートのトラフィックを許可する必要があります。
ポート ダイアグラム
次の図は、1 つのデータセンターと複数のデータセンターの両方のポート要件を示しています。
単一のデータセンター
次の図は、単一のデータセンター構成における各 Edge コンポーネントのポート要件を示しています。
この図での注記:
- 接頭辞が「M」のポートは、コンポーネント管理に使用されるポートで、Management Server がアクセスするためにコンポーネント上で開いている必要があります。
- Edge UI で Trace ツールの [Send] ボタンを使用可能にするには、API プロキシによって公開されるポートで Router にアクセスする必要があります。
- JMX ポートへのアクセスを構成して、ユーザー名とパスワードを要求させることができます。詳細については、モニタリング方法をご覧ください。
- オプションで、特定の接続に対して TLS / SSL アクセスを構成できます。TLS / SSL アクセスには異なるポートが使われることがあります。詳細については、TLS/SSL をご覧ください。
- 外部 SMTP サーバー経由でメールを送信するように、Management Server と Edge UI を構成できます。構成する場合、Management Server と Edge UI が SMTP サーバー上の必要なポート(図示されていません)にアクセスできる必要があります。TLS 非対応の SMTP では一般にポート番号は 25 です。TLS 対応の SMTP では多くの場合、ポート番号は 465 ですが、SMTP プロバイダに確認してください。
複数のデータセンター
2 つのデータセンターを持つ 12 ノードのクラスタ構成をインストールする場合、2 つのデータセンターのノードが以下に示すポートで通信できることを確認します。
次のことに注意してください。
- すべての Management Server は、他の全データセンターのすべての Cassandra ノードにアクセスできる必要があります。
- 全データセンター内のすべての Message Processor は、ポート 4528 を介して互いにアクセスできる必要があります。
- Management Server は、ポート 8082 を介してすべての Message Processor にアクセスできる必要があります。
- すべての Management Server は、他の全データセンターのすべての Qpid ノードにアクセスできる必要があります。
- セキュリティ上の理由から、上記のポートと、ネットワーク要件で必要なポートを除き、他のポートをデータセンター間で開かないようにしてください。
デフォルトでは、コンポーネント間の通信は暗号化されません。Apigee mTLS をインストールすると、暗号化を追加できます。詳細については、Apigee mTLS の概要をご覧ください。
ポートの詳細
次の表に、Edge コンポーネントごとに、ファイアウォールで開く必要があるポートを示します。
コンポーネント | ポート | 説明 |
---|---|---|
標準 HTTP ポート | 80、443 | HTTP と仮想ホストに使用するその他のポート |
Cassandra | 7000、9042、9160 | Cassandra ノード間通信用、他の Edge コンポーネントによるアクセス用の Apache Cassandra ポート |
7199 | JMX ポート。Management Server のアクセスのために開かれている必要があります。 | |
LDAP | 10389 | OpenLDAP |
管理サーバー | 1099 | JMX ポート |
4526 | 分散キャッシュと管理呼び出し用のポート。このポートは構成可能です。 | |
5636 | 収益化の commit 通知用のポート。 | |
8080 | Edge management API 呼び出し用のポート。これらのコンポーネントは、Management Server、Router 、Message Processor、UI、Postgres、Qpid 上でポート 8080 にアクセスする必要があります。 | |
管理 UI | 9000 | 管理 UI へのブラウザ アクセス用のポート |
Message Processor | 1101 | JMX ポート |
4528 | Message Processor 間の分散キャッシュと管理呼び出し用、および Router と Management Server からの通信用。
Message Processor は、管理ポートとしてポート 4528 を開く必要があります。複数の Message Processor が存在する場合、それらはすべてポート 4528(Message Processor 上のポート 4528 については、上の図のループ矢印で示されています)を介して互いにアクセスできる必要があります。データセンターが複数ある場合は、全データセンターのすべての Message Processor からポートにアクセスできる必要があります。 |
|
8082 |
Message Processor 用のデフォルト管理ポートです。Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 Router と Message Processor の間で TLS/SSL を構成すると、Router がそれを使用して Message Processor の健全性をチェックします。 Router と Message Processor 間の TLS/SSL を構成する際、Router がアクセスできるよう Message Processor 上のポート 8082 は開いておく必要があります。Router と Message Processor 間で TLS/SSL を構成しない場合のデフォルト構成では、コンポーネントを管理するためポート 8082 は Message Processor 上で開けておく必要があります。しかし、Router は Message Processor へのアクセスを要求しません。 |
|
8443 | Router と Message Processor 間で TLS が有効になっている場合は、Router によるアクセスのために Message Processor でポート 8443 を開く必要があります。 | |
8998 | Router からの通信用の Message Processor ポート | |
Postgres | 22 | マスター スタンバイ レプリケーションを使用するように 2 つの Postgres ノードを構成する場合は、SSH アクセスのために各ノードでポート 22 を開く必要があります。 |
1103 | JMX ポート | |
4530 | 分散キャッシュと管理呼び出し用 | |
5432 | Qpid と Management Server から Postgres への通信に使用されます。 | |
8084 | Postgres Server のデフォルト管理ポート。Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 | |
Qpid | 1102 | JMX ポート |
4529 | 分散キャッシュと管理呼び出し用 | |
5672 |
|
|
8083 | Qpid Server のデフォルト管理ポート。Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 | |
ルーター | 4527 | 分散キャッシュと管理呼び出し用。 Router は、管理ポートとしてポート 4527 を開く必要があります。複数の Router がある場合は、ポート 4527(Router 上のポート 4527 については、上のダイアグラムではループ矢印で示されています)を介して、すべてが互いにアクセスできる必要があります。 必須ではありませんが、Message Processor からアクセスするために Router でポート 4527 を開くこともできます。そうしないと、Message Processor のログファイルにエラー メッセージが表示されることがあります。 |
8081 | Router のデフォルト管理ポートで、Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 | |
15999 |
ヘルスチェック ポート。ロードバランサは、このポートを使用して、Router が使用可能かどうかを判断します。 Router のステータスを取得するために、ロードバランサは Router 上のポート 15999 にリクエストを行います。 curl -v http://routerIP:15999/v1/servers/self/reachable Router が到達可能な場合、リクエストは HTTP 200 を返します。 |
|
59001 | apigee-validate ユーティリティによる Edge インストールのテストに使用されるポート。このユーティリティは、Router 上のポート 59001 へのアクセスを必要とします。ポート 59001 の詳細については、インストールをテストするをご覧ください。 |
|
SmartDocs | 59002 | SmartDocs ページのリクエストが送信される Edge Router のポート。 |
ZooKeeper | 2181 | Management Server、Router、Message Processor など他のコンポーネントにより使用されます。 |
2888、3888 | ZooKeeper が ZooKeeper クラスタ(ZooKeeper アンサンブルと呼ばれる)通信のために内部的に使用する |
次の表では、送信元コンポーネントおよび宛先コンポーネントとともに同じポートが数字で示されています。
ポート番号 | 目的 | 送信元コンポーネント | 宛先コンポーネント |
---|---|---|---|
virtual_host_port | HTTP と仮想ホスト API 呼び出しトラフィックに使用するその他のポート。ポート 80 と 443 が最も一般的に使用されます。Message Router は TLS/SSL 接続を終了できます。 | 外部クライアント(またはロードバランサ) | Message Router 上の Listener |
1099 ~ 1103 | JMX Management | JMX クライアント | Management Server(1099) Message Processor(1101) Qpid Server(1102) Postgres Server(1103) |
2181 | Zookeeper クライアント コミュニケーション | Management Server Router Message Processor Qpid Server Postgres Server |
Zookeeper |
2888 と 3888 | Zookeeper ノード間管理 | Zookeeper | Zookeeper |
4526 | RPC Management ポート | 管理サーバー | 管理サーバー |
4527 | 分散キャッシュと管理呼び出し用、および Router 間通信用の RPC Management ポート | Management Server Router |
ルーター |
4528 | Message Processor 間の分散キャッシュ呼び出しと Router からの通信用 | Management Server Router Message Processor |
Message Processor |
4529 | 分散キャッシュと管理呼び出し用の RPC Management ポート | 管理サーバー | Qpid Server |
4530 | 分散キャッシュと管理呼び出し用の RPC Management ポート | 管理サーバー | Postgres Server |
5432 | Postgres クライアント | Qpid Server | Postgres |
5636 | 収益化 | 外部 JMS コンポーネント | 管理サーバー |
5672 |
|
Qpid Server | Qpid Server |
7,000 | Cassandra ノード間通信 | Cassandra | その他の Cassandra ノード |
7199 | JMX management。Management Server のアクセスのために開かれている必要があります。 | JMX クライアント | Cassandra |
8080 | Management API ポート | Management API クライアント | 管理サーバー |
8081 ~ 8084 |
コンポーネント API ポート。個々のコンポーネントに直接 API リクエストを発行するために使用されます。コンポーネントはそれぞれ異なるポートを開きます。使用される正確なポートは構成に依存しますが、Management Server がアクセスできるようにコンポーネント上で開いている必要があります。 |
Management API クライアント | Router(8081) Message Processor(8082) Qpid Server(8083) Postgres Server(8084) |
8443 | TLS が有効な場合の Router と Message Processor 間の通信 | ルーター | Message Processor |
8998 | Router と Message Processor 間の通信 | ルーター | Message Processor |
9000 | デフォルトの Edge 管理 UI ポート | ブラウザ | Management UI Server |
9042 | CQL ネイティブ トランスポート | Router Message Processor Management Server |
Cassandra |
9160 | Cassandra Thrift クライアント | Router Message Processor Management Server |
Cassandra |
10389 | LDAP ポート | 管理サーバー | OpenLDAP |
15999 | ヘルスチェック ポート。ロードバランサは、このポートを使用して Router が使用可能かどうかを判断します。 | ロードバランサ | ルーター |
59001 | apigee-validate ユーティリティが Edge インストールをテストするための使用するポート |
apigee-validate | ルーター |
59002 | SmartDocs ページ リクエストが送信される Router ポート | SmartDocs | ルーター |
Message Processor は、タイムアウトにならないように構成された専用の接続プールを Cassandra に対して開いたままにします。ファイアウォールが Message Processor と Cassandra サーバーの間にある場合は、ファイアウォールで接続がタイムアウトすることがあります。ただし、Message Processor は Cassandra に再接続するように設計されていません。
このような状況を回避するため、Cassandra サーバー、Message Processor、Router を同じサブネットに配置して、ファイアウォールがこれらのコンポーネントのデプロイに関与しないようにすることを Apigee ではおすすめしています。
ファイアウォールが Router と Message Processor の間にあり、アイドル TCP のタイムアウトが設定されている場合は、以下を行うことをおすすめします。
- Linux OS の sysctl 設定に
net.ipv4.tcp_keepalive_time = 1800
を設定します。1800 はファイアウォールのアイドル TCP タイムアウトよりも短くなければなりません。この設定により、ファイアウォールが接続を切断しないようにし、接続が確立された状態に保ちます。 - すべての Message Processor で
/opt/apigee/customer/application/message-processor.properties
を編集し、次のプロパティを追加します。ファイルが存在しない場合は作成します。conf_system_cassandra.maxconnecttimeinmillis=-1
- Message Processor を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- すべての Router で
/opt/apigee/customer/application/router.properties
を編集し、次のプロパティを追加します。ファイルが存在しない場合は作成します。conf_system_cassandra.maxconnecttimeinmillis=-1
- Router を再起動します。
/opt/apigee/apigee-service/bin/apigee-service edge-router restart