Edge for Private Cloud バージョン 4.17.05
ハードウェア要件
本番環境レベルの高可用性インフラストラクチャには、次の最小ハードウェア要件を満たす必要があります。インストール トポロジで説明されているすべてのインストール シナリオについて、インストール コンポーネントの最小ハードウェア要件を次の表に示します。
この表のハードディスク要件は、オペレーティング システムが必要とするハードディスク容量に加えてください。アプリケーションやネットワーク トラフィックによっては、インストールに必要なリソースが以下に示されている場合があります。
インストール コンポーネント |
RAM |
CPU |
最小ハードディスク |
---|---|---|---|
Cassandra |
16 GB |
8 コア |
250 GB のローカル ストレージ(2,000 IOPS をサポートする SSD または高速 HDD) |
同じマシン上の Message Processor/Router |
16 GB |
8 コア |
100 GB |
分析 - 同じサーバー上の Postgres/Qpid(本番環境には推奨されません) |
16GB* |
8 コア* |
500 GB ~ 1 TB** のネットワーク ストレージ***。1,000 IOPS 以上* をサポートする SSD バックエンドが推奨されます。 |
Analytics - Postgres スタンドアロン |
16GB* |
8 コア* |
500 GB ~ 1 TB** のネットワーク ストレージ***。1,000 IOPS 以上* をサポートする SSD バックエンドが推奨されます。 |
Analytics - Qpid(スタンドアロン) |
8 GB |
4 コア |
30 GB ~ 50 GB のローカル ストレージ(SSD または高速 HDD) 250 TPS を超えるインストールでは、1, 000 IOPS をサポートするローカル ストレージを備えた HDD が推奨されます。 Qpid キューのデフォルトのサイズは 20 GB です。さらに容量を追加する必要がある場合は、Qpid ノードを追加します。 |
その他(OpenLDAP、UI、Management Server) |
4 GB |
2 コア |
60 GB |
*スループットに基づいて Postgres のシステム要件を調整する。
|
|||
**Postgres のハードディスクの値は、Edge によって取得されたすぐに使用できる分析に基づいています。分析データにカスタム値を追加する場合は、それに応じて値を増やす必要があります。次の式を使用して、必要なストレージを見積もります。 |
|||
*** ネットワーク ストレージは、次の理由により Postgresql データベースに推奨されます。
|
さらに、Monetization Services をインストールする場合のハードウェア要件は次のとおりです。
収益化のコンポーネント |
RAM |
CPU |
ハードディスク |
---|---|---|---|
Management Server(Monetization Services を使用) |
8 GB |
4 コア |
60 GB |
分析 - 同じサーバー上の Postgres/Qpid |
16 GB |
8 コア |
500 GB ~ 1 TB のネットワーク ストレージ(1,000 IOPS 以上をサポートする SSD バックエンドが推奨されます)か、上記の表のルールを使用します。 |
Analytics - Postgres スタンドアロン |
16 GB |
8 コア |
500 GB ~ 1 TB のネットワーク ストレージ(1,000 IOPS 以上をサポートする SSD バックエンドが推奨されます)か、上記の表のルールを使用します。 |
Analytics - Qpid(スタンドアロン) |
8 GB |
4 コア |
40 GB ~ 500 GB のローカル ストレージ(SSD または高速 HDD) 250 TPS を超えるインストールでは、1, 000 IOPS をサポートするローカル ストレージを備えた HDD が推奨されます。 |
API BaaS をインストールする場合のハードウェア要件は次のとおりです。
API BaaS コンポーネント |
RAM |
CPU |
ハードディスク |
---|---|---|---|
ElasticSearch* |
8 GB |
4 コア |
60 ~ 80 GB |
API BaaS スタック * |
8 GB |
4 コア |
60 ~ 80 GB |
API BaaS ポータル |
1 GB |
2 コア |
20 GB |
Cassandra(省略可。通常は、Edge と API BaaS サービスの両方で同じ Cassandra クラスタを使用します) |
16 GB |
8 コア |
250 GB のローカル ストレージ(2,000 IOPS をサポートする SSD または高速 HDD) |
* ElasticSearch と API BaaS Stack を同じノードにインストールできる。その場合、4 GB のメモリを使用するように ElasticSearch を構成します(デフォルト)。ElasticSearch が独自のノードにインストールされている場合は、6 GB のメモリを使用するように構成します。 |
注:
- ルート ファイル システムのサイズがインストールに十分でない場合は、データをより大きなディスクに配置することをおすすめします。
- 古いバージョンの Apigee Edge for Private Cloud がマシンにインストールされている場合は、新規インストールの前に /tmp/java フォルダを削除してください。
- Cassandra を起動するには、システム全体の一時フォルダ /tmp に実行権限が必要です。
- インストール前にユーザー「apigee」が作成されている場合は、「/home/apigee」がホーム ディレクトリとして存在し、その所有者が「apigee:apigee」であることを確認します。
オペレーティング システムとサードパーティ ソフトウェアの要件
このインストール手順とインストール ファイルは、https://apigee.com/docs/api-services/reference/supported-software に記載されているオペレーティング システムとサードパーティ ソフトウェアでテストされています。
Apigee ユーザーの作成
インストール手順では、「apigee」という Unix システム ユーザーが作成されます。Edge のディレクトリとファイルは、Edge プロセスと同様に「apigee」が所有します。つまり、Edge コンポーネントは「apigee」ユーザーとして実行されます。必要に応じて、コンポーネントを別のユーザーとして実行できます。例については、ノードに Edge コンポーネントをインストールするの「Router を保護ポートにバインドする」をご覧ください。
インストール ディレクトリ
デフォルトでは、インストーラはすべてのファイルを /opt/apigee ディレクトリに書き込みます。このディレクトリの場所は変更できません。このディレクトリは変更できませんが、後述のように、/opt/apigee を別の場所にマッピングするシンボリック リンクを作成することはできます。
このガイドの手順では、インストール ディレクトリを /<inst_root>/apigee としています。デフォルトでは、/<inst_root> は /opt です。
/opt/apigee のシンボリック リンクの作成
シンボリック リンクを作成する前に、まず「apigee」という名前のユーザーとグループを作成する必要があります。これは、Edge インストーラが作成するグループとユーザーと同じです。
シンボリック リンクを作成するには、bootstrap_4.17.01.sh ファイルをダウンロードする前に次の手順を実施します。これらの手順はすべて、root ユーザーとして行う必要があります。
- 「apigee」ユーザーとグループを作成します。
> groupadd -r apigee
> useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee - /opt/apigee から目的のインストール ルートへのシンボリック リンクを作成します。
> ln -Ts /srv/myInstallDir /opt/apigee
ここで、/srv/myInstallDir は Edge ファイルの必要な場所です。 - インストール ルートとシンボリック リンクの所有権を「apigee」ユーザーに変更します。
> chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Java
インストールする前に、各マシンにサポートされているバージョンの Java1.8 をインストールしておく必要があります。サポートされている JDK は次のとおりです。
https://apigee.com/docs/api-services/reference/supported-software
インストールを行うユーザーの JDK のルートを JAVA_HOME が指していることを確認します。
SELinux
SELinux の設定によっては、Edge コンポーネントのインストールと起動で問題が発生することがあります。必要に応じて、SELinux を無効にするか、インストール中に permissive モードに設定して、インストール後に再度有効にします。詳細については、Edge apigee-setup ユーティリティのインストールをご覧ください。
ネットワーク設定
設置前にネットワーク設定を確認することをおすすめします。インストーラは、すべてのマシンが固定 IP アドレスを持つことを想定しています。次のコマンドを使用して、設定を確認します。
- hostname ではマシンの名前が返されます。
- hostname -i は、他のマシンからアドレス指定可能なホスト名の IP アドレスを返します。
オペレーティング システムの種類とバージョンによっては、ホスト名が正しく設定されていない場合、/etc/hosts と /etc/sysconfig/network の編集が必要になることがあります。詳しくは、ご使用のオペレーティング システムのドキュメントをご覧ください。
TCP ラッパー
TCP ラッパーは、一部のポートの通信をブロックする可能性があり、OpenLDAP、Postgres、Cassandra のインストールに影響を与える可能性があります。これらのノードで /etc/hosts.allow と /etc/hosts.deny を確認し、必要な OpenLDAP、Postgres、Cassandra のポートにポートの制限がないことを確認します。
iptables
必要な Edge ポートでノード間の接続を妨げている iptables ポリシーがないことを確認します。必要に応じて、次のコマンドを使用してインストール中に iptables を停止できます。
> sudo/etc/init.d/iptables stop
CentOS 7.x の場合:
> systemctl stop firewalld
Edge Router が /etc/rc.d/init.d/functions にアクセスできることを確認する
Edge Router と BaaS ポータルのノードは Nginx ルーターを使用するため、/etc/rc.d/init.d/functions への読み取りアクセス権が必要です。
セキュリティ プロセスで /etc/rc.d/init.d/functions の権限の設定が義務付けられている場合、700 には設定しないでください。そうすると、ルーターは起動できません。権限を 744 に設定して、/etc/rc.d/init.d/functions への読み取りアクセスを許可できます。
Cassandra
すべての Cassandra ノードをリングに接続する必要があります。Cassandra は、信頼性とフォールト トレラントを確保するために、複数のノードにデータレプリカを保存します。各 Edge キースペースのレプリケーション戦略によって、レプリカが配置される Cassandra ノードが決まります。詳細については、Cassandra のレプリケーション係数と整合性レベルについてをご覧ください。
Cassandra は、使用可能なメモリに基づいて Java ヒープサイズを自動的に調整します。詳細については、Java リソースの調整をご覧ください。パフォーマンスが低下したりメモリ消費量が増加したりした場合。
Edge for Private Cloud をインストールした後、/<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml ファイルを調べると、Cassandra が正しく構成されていることを確認できます。たとえば、Edge for Private Cloud のインストール スクリプトで次のプロパティが設定されていることを確認します。
- cluster_name
- initial_token
- パーティション ツール
- 種
- listen_address
- rpc_address
- スニッチ
警告: このファイルは編集しないでください。
PostgreSQL データベース
Edge のインストール後、システムで使用可能な RAM 容量に基づいて、次の PostgreSQL データベースの設定を調整できます。
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
これらの値を設定するには:
- postgresql.properties を編集します。
> vi /<inst_root>/apigee/customer/application/postgresql.properties
ファイルが存在しない場合は作成します。 - 上記のプロパティを設定します。
- 編集内容を保存します。
- PostgreSQL データベースを再起動します。
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
システム制限
Cassandra ノードと Message Processor ノードに、次のシステム制限が設定されていることを確認します。
- Cassandra ノードでは、/etc/security/limits.d/90-apigee-edge-limits.conf で、インストール ユーザー(デフォルトは「apigee」)に対して soft および hard memlock、nofile、アドレス空間(as)の制限を設定します。次に例を示します。
apigee soft memlock Unlimited
apigeehard memlock restricted
apigee soft nofile として無制限
apigee soft nofile 32768 - Message Processor ノードでは、次のように /etc/security/limits.d/90-apigee-edge-limits.conf で、オープン ファイル記述子の最大数を 64,000 に設定します。
apigee soft nofile 32768
apigeehard nofile 65536
必要に応じてこの上限を引き上げることができます。たとえば、一度に多数の一時ファイルを開く場合などです。
JSVC
「jsvc」は、API BaaS を使用するための前提条件です。API BaaS をインストールすると、バージョン 1.0.15-dev がインストールされます。
Network Security Services(NSS)
Network Security Services(NSS)は、セキュリティ対応のクライアント アプリケーションやサーバー アプリケーションの開発をサポートするライブラリのセットです。NSS v3.19 以降がインストールされている必要があります。
現在のバージョンを確認するには:
> yum info nss
NSS を更新するには:
> yum update nss
詳しくは、RedHat のこちらの記事をご覧ください。
NSCD(ネームサービス キャッシュ デーモン)を使用する場合の IPv6 の DNS ルックアップを無効にする
NSCD(ネームサービス キャッシュ デーモン)をインストールして有効にしている場合、Message Processor は IPv4 と IPv6 の 2 つの DNS ルックアップを行います。NSCD を使用する場合は、IPv6 の DNS ルックアップを無効にする必要があります。
IPv6 の DNS ルックアップを無効にするには:
- すべての Message Processor ノードで、/etc/nscd.conf を編集します。
- 次のプロパティを設定します。
enable-cache hosts no
Google Cloud Platform 上の RedHat/CentOS 7 で IPv6 を無効にする
Google Cloud Platform の RedHat 7 または CentOS 7 に Edge をインストールする場合は、すべての Qpid ノードで IPv6 を無効にする必要があります。
IPv6 を無効にする手順については、ご使用の OS バージョンの RedHat または CentOS のドキュメントをご覧ください。たとえば、次のことができます。
- エディタで /etc/hosts を開きます。
- 次の行の 1 列に「#」文字を挿入し、コメントアウトします。
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 - ファイルを保存します。
AWS AMI
Red Hat Enterprise Linux 7.x の AWS Amazon Machine Image(AMI)に Edge をインストールする場合は、最初に次のコマンドを実行する必要があります。
> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
ツール
インストーラは、EL5 または EL6 に用意されている標準バージョンの次の UNIX ツールを使用します。
awk |
expr |
Lua-Socket |
RPM |
unzip |
basename |
grep |
ls |
rpm2cpio |
useradd |
bash |
hostname |
net-tools |
sed |
wc |
bc |
id |
perl(procps から) |
sudo |
wget |
curl |
libaio |
pgrep(procps から) |
tar |
xerces-c |
cyrus-sasl
|
libdb-cxx
|
ps | tr | おいしい |
date |
libibverbs
|
pwd |
uuid |
chkconfig |
dirname |
librdmacm
|
python | uname | |
echo |
libxslt
|
注:
- ツール「useradd」の実行ファイルは /usr/sbin にあり、chkconfig は /sbin にあります。
- sudo アクセス権を使用すると、呼び出し元ユーザーの環境に対するアクセス権を取得できます。たとえば、通常は「sudo <command>」や「sudo PATH=$PATH:/usr/sbin:/sbin <command>」を呼び出します。
- サービスパック(パッチ)をインストールする前に、「パッチ」ツールがインストールされていることを確認します。
ntpdate – サーバーの時刻を同期させることをおすすめします。まだ構成していない場合は、ntpdate ユーティリティがこの目的に役立ち、サーバーの時刻が同期されているかどうかを検証します。「yum install ntp」を使用してこのユーティリティをインストールできます。これは、OpenLDAP 設定を複製する場合に特に便利です。サーバーのタイムゾーンは UTC で設定します。
openldap 2.4 – オンプレミスのインストールには OpenLDAP 2.4 が必要です。サーバーがインターネットに接続されている場合は、Edge インストール スクリプトによって OpenLDAP がダウンロードされ、インストールされます。サーバーがインターネットに接続していない場合は、Edge インストール スクリプトを実行する前に、OpenLDAP がすでにインストールされていることを確認する必要があります。RHEL/CentOS では、「yum install openldap-clients openldap-servers」を実行して OpenLDAP をインストールできます。
13 ホスト構成と、2 つのデータセンターを持つ 12 ホスト構成では、OpenLDAP をホストするノードが複数あるため、OpenLDAP レプリケーションが必要になります。
ファイアウォールと仮想ホスト
IT の世界では「仮想」という用語がよく使われるため、Apigee Edge for Private Cloud のデプロイと仮想ホストにも当てはまります。「仮想」という用語は主に次の 2 つの用途に分けられます。
- 仮想マシン(VM): 必須ではありませんが、一部のデプロイメントでは VM テクノロジーを使用して、Apigee コンポーネント用に隔離されたサーバーを作成します。VM ホストは、物理ホストと同様に、ネットワーク インターフェースとファイアウォールを持つことができます。
- 仮想ホスト: Apache 仮想ホストに似たウェブ エンドポイント。
VM 内のルーターは、複数の仮想ホストを公開できます(ただし、ホスト エイリアスまたはインターフェース ポートが互いに異なる場合に限ります)。
名前の例として、単一の物理サーバー「A」が、「VM1」と「VM2」という 2 つの VM を実行しているとします。VM1 は、VM 内で eth0 という名前の仮想イーサネット インターフェースを公開しているとします。このインターフェースは VM 内で eth0 という名前で、IP アドレス 111.111.111.111 が割り当てられています。VM1.1.0 が VM1.1.0.1.1.1.1.1.1.11.1.1.1.1.1.1. IP アドレスが割り当てられます。
2 つの VM のそれぞれで Apigee Router を実行しているとします。ルーターは、次の架空の例のように仮想ホストのエンドポイントを公開します。
VM1 の Apigee ルーターは、eth0 インターフェース(特定の IP アドレスを持つ)で api.mycompany.com:80、api.mycompany.com:443、test.mycompany.com:80 の 3 つの仮想ホストを公開します。
VM2 のルーターは api.mycompany.com:80(VM1 によって公開されているものと同じ名前とポート)を公開します。
物理ホストのオペレーティング システムにネットワーク ファイアウォールがある可能性があります。その場合、仮想化されたインターフェース(111.111.111.111:{80, 443} と 111.111.111.222:80)で公開されるポートにバインドされた TCP トラフィックを通過させるようにファイアウォールを構成する必要があります。さらに、各 VM のオペレーティング システムは、独自の eth0 インターフェースで独自のファイアウォールを提供できます。これらのファイアウォールでも、ポート 80 と 443 のトラフィックの接続を許可する必要があります。
ベースパスは、デプロイした別の API プロキシに API 呼び出しをルーティングするための 3 つ目のコンポーネントです。異なるベースパスがある場合、API プロキシ バンドルはエンドポイントを共有できます。たとえば、1 つのベースパスを http://api.mycompany.com:80/ として定義し、別のベースパスを http://api.mycompany.com:80/salesdemo として定義できます。
この場合、http://api.mycompany.com:80/ トラフィックを 2 つの IP アドレス(VM1 の 111.111.111.111 と VM2 の 111.111.111.222)に分割する、なんらかの種類のロードバランサまたはトラフィック ディレクターが必要です。この関数は特定のインストールに固有のもので、ローカル ネットワーク グループによって構成されます。
ベースパスは、API をデプロイするときに設定します。上記の例では、ホスト エイリアスが api.mycompany.com、ポートが 80 に設定されている仮想ホストを使用して、組織 mycompany-org に対して、mycompany と testmycompany という 2 つの API をデプロイできます。Deployment でベースパスを宣言しないと、ルーターは受信リクエストを送信する API を認識できません。
ただし、ベース URL を /salesdemo に設定して API testmycompany をデプロイすると、ユーザーは http://api.mycompany.com:80/salesdemo を使用してその API にアクセスします。「/」のベース URL を使用して API mycompany をデプロイすると、ユーザーは URL http://api.mycompany.com:80/ を使用して API にアクセスします。
Edge ポートの要件
ファイアウォールを管理する必要があるのは、仮想ホストだけではありません。VM と物理ホストの両方のファイアウォールで、コンポーネントが相互に通信するために必要なポートのトラフィックを許可する必要があります。
次の図は、各 Edge コンポーネントのポート要件を示しています。
この図の注意事項:
-
*Router と Message Processor の間で TLS/SSL を構成する場合、Router によるアクセスのために Message Processor のポート 8082 を開く必要があります。Router と Message Processor の間で TLS/SSL を構成しない場合、コンポーネントを管理するためにポート 8082 を Message Processor で開いておく必要がありますが、Router によるアクセスは必要ありません。
- 接頭辞「M」が付いたポートはコンポーネントの管理に使用するポートです。Management Server によるアクセスのためにコンポーネント上で開いておく必要があります。
- Router、Message Processor、UI、Postgres、Qpid のコンポーネントは、Management Server のポート 8080 にアクセスする必要があります。
- Message Processor で管理ポートとしてポート 4528 を開く必要があります。複数の Message Processor がある場合は、ポート 4528(Message Processor のポート 4528 については、上の図でループ矢印で示されています)を介して、すべてが相互にアクセスできるようにする必要があります。データセンターが複数ある場合は、すべてのデータセンターのすべての Message Processor からポートにアクセスできる必要があります。
- 必須ではありませんが、Router でポート 4527 を開いて Message Processor にアクセスできます。そうしないと、Message Processor のログファイルにエラー メッセージが表示されることがあります。
- Router は、管理ポートとしてポート 4527 を開く必要があります。複数の Router がある場合は、ポート 4527(Router のポート 4527 については、上の図のループ矢印で示されています)を介して、すべての Router が互いにアクセスできる必要があります。
- Edge UI は Trace ツールの [Send] ボタンをサポートするために、API プロキシによって公開されたポートで Router にアクセスする必要があります。
- Management Server は、Cassandra ノードの JMX ポートにアクセスする必要があります。
- JMX ポートへのアクセスは、ユーザー名とパスワードを要求するように構成できます。詳細については、モニタリング方法をご覧ください。
- 必要に応じて、特定の接続に対する TLS/SSL アクセスを構成できます。接続には、異なるポートを使用できます。詳細については、TLS/SSL をご覧ください。
- マスター / スタンバイ レプリケーションを使用するように 2 つの Postgres ノードを構成する場合は、SSH アクセス用に各ノードでポート 22 を開く必要があります。必要に応じて、個々のノードでポートを開いて SSH アクセスを許可できます。
- 外部の SMTP サーバー経由でメールを送信するように Management Server と Edge UI を構成できます。その場合は、Management Server と UI が SMTP サーバー上の必要なポートにアクセスできることを確認する必要があります。非 TLS SMTP の場合、ポート番号は通常 25 です。TLS 対応の SMTP の場合、通常は 465 ですが、SMTP プロバイダにご確認ください。
次の表は、Edge コンポーネントがファイアウォールで開く必要があるポートを示しています。
コンポーネント |
ポート |
Description |
---|---|---|
標準 HTTP ポート |
80、443 |
HTTP と仮想ホストに使用するその他のポート |
Management Server |
8080 |
Edge Management API 呼び出し用のポート。これらのコンポーネント(Router、Message Processor、UI、Postgres、Qpid)は Management Server のポート 8080 にアクセスする必要があります。 |
1099 |
JMX ポート |
|
4526 |
分散キャッシュと管理呼び出しの場合 |
|
管理 UI |
9000 |
管理 UI にブラウザからアクセスするためのポート |
Message Processor |
8998 |
Router からの通信用の Message Processor ポート |
8082 |
Message Processor のデフォルト管理ポートで、Management Server によるアクセスのためにコンポーネント上で開いておく必要があります。
Router と Message Processor の間で TLS / SSL を構成する場合、Router はこれらの TLS / SSL を使用して Message Processor のヘルスチェックを行います。
|
|
1101 |
JMX ポート |
|
4528 |
Message Processor 間の分散キャッシュと管理呼び出し、および Router からの通信 |
|
ルーター |
8081 |
Router のデフォルト管理ポートで、Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 |
4527 |
分散キャッシュと管理呼び出しの場合 |
|
15999 |
ヘルスチェック ポート。ロードバランサは、このポートを使用して、Router が使用可能かどうかを判断します。 Router のステータスを取得するために、ロードバランサは Router のポート 15999 にリクエストを送信します。 > curl -v http://<routerIP>:15999/v1/servers/self/reachable Router が到達可能な場合、リクエストは HTTP 200 を返します。 |
|
59001 |
apigee-validate ユーティリティによる Edge インストールのテストに使用されるポート。 このユーティリティは、Router のポート 59001 にアクセスする必要があります。ポート 59001 について詳しくは、インストールをテストするをご覧ください。 |
|
ZooKeeper |
2181 |
Management Server、Router、Message Processor などの他のコンポーネントで使用 |
2888、3888 |
ZooKeeper が ZooKeeper クラスタ(ZooKeeper アンサンブル)の通信のために内部的に使用 |
|
Cassandra |
7000、9042、9160 |
Cassandra ノード間の通信用と、他の Edge コンポーネントからのアクセス用の Apache Cassandra ポート。 |
7199 |
JMX ポート。Management Server からアクセスできるように開く必要があります。 |
|
Qpid |
5672 |
Router と Message Processor から Qpid サーバーへの通信に使用されます。 |
8083 |
Qpid サーバーのデフォルト管理ポートで、Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 |
|
1102 |
JMX ポート |
|
4529 |
分散キャッシュと管理呼び出しの場合 |
|
Postgres |
5432 |
Qpid/Management Server から Postgres への通信に使用 |
8084 |
Postgres サーバーのデフォルト管理ポート。Management Server によるアクセスのためにコンポーネント上で開いている必要があります。 |
|
1103 |
JMX ポート |
|
4530 |
分散キャッシュと管理呼び出しの場合 |
|
22 |
マスター / スタンバイ レプリケーションを使用するように 2 つの Postgres ノードを構成する場合は、SSH アクセス用に各ノードでポート 22 を開く必要があります。 |
|
LDAP |
10389 |
OpenLDAP |
SmartDocs |
59002 |
SmartDocs ページのリクエストが送信される Edge Router のポート。 |
次の表に、同じポートを送信元コンポーネントと送信先コンポーネントとともに数字で示します。
ポート番号 |
目的 |
ソース コンポーネント |
宛先コンポーネント |
---|---|---|---|
<仮想ホストのポート#> |
HTTP と、仮想ホスト API 呼び出しトラフィックに使用するその他のポート。通常はポート 80 と 443 が使用されます。Message Router は TLS 接続と SSL 接続を終端できます。 |
外部クライアント(またはロードバランサ) |
Message Router のリスナー |
1099 ~ 1103 |
JMX 管理 |
JMX クライアント |
Management Server(1099) Message Processor(1101) Qpid Server(1102) Postgres Server(1103) |
2,181 |
Zookeeper クライアントの通信 |
管理サーバー ルーター Message Processor Qpid サーバー Postgres サーバー |
Zookeeper |
2888、3888 |
Zookeeper のノード間管理 |
Zookeeper |
Zookeeper |
4,526 |
RPC Management ポート |
管理サーバー |
Management Server |
4,527 | 分散キャッシュと管理呼び出し、および Router 間の通信用の RPC Management ポート |
管理サーバー ルーター |
ルーター |
4,528 |
Message Processor 間の分散キャッシュ呼び出しと、Router からの通信 |
管理サーバー ルーター Message Processor |
Message Processor |
4,529 | 分散キャッシュと管理呼び出し用の RPC Management ポート | 管理サーバー | Qpid サーバー |
4,530 | 分散キャッシュと管理呼び出し用の RPC Management ポート | 管理サーバー | Postgres サーバー |
5,432 |
Postgres クライアント |
Qpid サーバー |
Postgres |
5,672 |
Router と Message Processor から Qpid にアナリティクスを送信するために使用されます。 |
ルーター Message Processor |
Qpid サーバー |
7000 |
Cassandra のノード間通信 |
Cassandra |
他の Cassandra ノード |
7,199 |
JMX 管理。Management Server から Cassandra ノードにアクセスするために開いている必要があります。 |
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) |
8,998 |
Router と Message Processor 間の通信 |
ルーター |
Message Processor |
9,000 |
デフォルトの Edge 管理 UI ポート |
参照者 |
管理 UI サーバー |
9,042 |
CQL ネイティブ トランスポート |
ルーター Message Processor 管理サーバー |
Cassandra |
9,160 |
Cassandra スリフト クライアント |
ルーター Message Processor 管理サーバー |
Cassandra |
10,389 |
LDAP ポート |
管理サーバー |
OpenLDAP |
15,999 |
ヘルスチェック ポート。ロードバランサは、このポートを使用して、Router が使用可能かどうかを判断します。 |
ロードバランサ | ルーター |
59,001 | apigee-validate ユーティリティが Edge のインストールをテストするために使用するポート | apigee-validate | ルーター |
59,002 |
SmartDocs ページのリクエストが送信されるルーターのポート |
SmartDocs |
ルーター |
Message Processor は、Cassandra に対して専用の接続プールを開いたままにします。これは、タイムアウトが発生しないように構成されています。ファイアウォールが Message Processor と Cassandra サーバーの間にあると、ファイアウォールが接続をタイムアウトすることがあります。ただし、Message Processor は Cassandra への接続を確立するようには設計されていません。
このような状況を回避するため、Cassandra サーバー、Message Processor、Router を同じサブネットに配置して、ファイアウォールがこれらのコンポーネントのデプロイに関与しないようにすることをおすすめします。
ファイアウォールが Router と Message Processor の間にあり、アイドル TCP タイムアウトが設定されている場合、次のようにすることをおすすめします。
- Linux OS の sysctl 設定で net.ipv4.tcp_keepalive_time = 1800 を設定します。1800 はファイアウォールのアイドル tcp タイムアウトよりも小さくする必要があります。この設定では、ファイアウォールによって接続が切断されないように、接続が確立された状態を維持する必要があります。
- すべての Message Processor で、/<inst_root>/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 で、/<inst_root>/apigee/customer/application/router.properties を編集して、次のプロパティを追加します。ファイルが存在しない場合は作成します。
conf_system_cassandra.maxconnecttimeinmillis=-1 - Router を再起動します。
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
2 つのデータセンターを使用して 12 ホストのクラスタ構成をインストールする場合は、2 つのデータセンターのノードが以下に示すポートを介して通信できることを確認します。
API BaaS ポートの要件
API BaaS のインストールを選択した場合、API BaaS Stack コンポーネントと API BaaS ポータル コンポーネントを追加します。これらのコンポーネントは、次の図に示すポートを使用します。
この図の注意事項:
- API BaaS ポータルから BaaS スタックノードに直接リクエストが行われることはありません。デベロッパーがポータルにログインすると、ポータルアプリがブラウザにダウンロードされます。ブラウザで実行されているポータル アプリが BaaS Stack ノードにリクエストを行います。
- API BaaS の本番環境インストールでは、API BaaS ポータルノードと API BaaS スタックノードの間でロードバランサを使用します。ポータルを構成するとき、および BaaS API 呼び出しを行うときに、スタックノードではなくロードバランサの IP アドレスまたは DNS 名を指定します。
- すべてのスタックノードは、他のすべてのスタックノードからアクセスするためにポート 2551 を開く必要があります(上の図でスタックノードのポート 2551 にはループ矢印で示されています)。複数のデータセンターがある場合は、すべてのデータセンター内のすべてのスタックノードからポートにアクセスできる必要があります。
- すべての Baas Stack ノードが、外部の SMTP サーバー経由でメールを送信するように構成する必要があります。非 TLS SMTP の場合、ポート番号は通常 25 です。TLS 対応の SMTP の場合、通常は 465 ですが、SMTP プロバイダに確認してください。
- Cassandra ノードは、API BaaS 専用にすることも、Edge と共有することもできます。
下の表は、ファイアウォールで開く必要があるデフォルトのポートをコンポーネント別に示しています。
コンポーネント |
ポート |
Description |
---|---|---|
API BaaS ポータル |
9000 |
API BaaS UI のポート |
API BaaS スタック |
8080 |
API リクエストを受信するポート |
2551 |
すべてのスタックノード間の通信用のポート。データキャンター内の他のすべてのスタックノードからアクセスできる必要があります。 複数のデータセンターがある場合は、すべてのデータセンター内のすべてのスタックノードからポートにアクセスできる必要があります。 |
|
ElasticSearch |
9,200 ~ 9,400 |
API BaaS Stack との通信と ElasticSearch ノード間の通信用 |
ライセンス
Edge のインストールごとに、Apigee から取得した一意のライセンス ファイルが必要になります。Management Server をインストールする際に、ライセンス ファイルへのパス(/tmp/license.txt など)を指定する必要があります。
インストーラにより、ライセンス ファイルが /<inst_root>/apigee/customer/conf/license.txt にコピーされます。
ライセンス ファイルが有効な場合、管理サーバーは有効期限と許可された Message Processor(MP)の数を検証します。いずれかのライセンス設定が期限切れの場合は、/<inst_root>/apigee/var/log/edge-management-server/logs で確認できます。その場合は、Apigee サポートに移行の詳細をお問い合わせください。
ライセンスをお持ちでない場合は、こちらから営業担当者にお問い合わせください。