ハードウェア要件
高可用性を実現するには、次の最小ハードウェア要件を満たす必要があります。 セキュリティ インフラストラクチャを構築できます。
次の動画は、インストール環境のサイズに関する全般的なガイダンスを示しています。
インストール トポロジで説明されているすべてのインストール シナリオについて、次の表に一覧を示します。 最小ハードウェア要件を定めています。
この表のハードディスク要件は、オペレーティング システムが必要とするハードディスク容量とは別に必要となります。アプリケーションとネットワーク トラフィックによっては、 必要なリソースが下表のとおりです。
インストール コンポーネント | RAM | CPU | 最小ハードディスク |
---|---|---|---|
Cassandra | 16 GB | 8 コア | 250 GB のローカル ストレージ(2,000 IOPS をサポートする SSD) |
Message Processor / Router(同一マシン上) | 16 GB | 8 コア | 100 GB |
Message Processor(スタンドアロン) | 16 GB | 8 コア | 100 GB |
Router(スタンドアロン) | 16 GB | 8 コア | 100 GB |
Analytics - Postgres / Qpid(同一サーバー上) | 16GB* | 8 コア* | 500 GB ~ 1 TB** のネットワーク ストレージ***(SSD バックエンドを推奨) 1,000 IOPS 以上をサポート* |
分析 - Postgres マスターまたはスタンバイ(スタンドアロン) | 16GB* | 8 コア* | 500 GB~1 TB** のネットワーク ストレージ***(1,000 IOPS 以上* をサポートする SSD バックエンドを推奨) |
アナリティクス - Qpid スタンドアロン | 16 GB | 8 コア | 30 GB ~ 50 GB のローカル ストレージ(SSD)
Qpid キューのデフォルトのサイズは 1 GB ですが、2 GB に増やすことができます。さらに容量が必要な場合は、Qpid ノードを追加してください。 |
OpenLDAP/UI/Management Server | 8 GB | 4 コア | 60 GB |
UI / Management Server | 4 GB | 2 コア | 60 GB |
OpenLDAP(スタンドアロン) | 4 GB | 2 コア | 60 GB |
* 次のスループットに基づいて Postgres のシステム要件を調整します。
** Postgres のハードディスクの値は、Edge によって取り込まれた、すぐに使用できる分析に基づいています。 分析データにカスタム値を追加する場合は、値を増やす必要がある 必要があります。次の数式を使用して必要なストレージを計算します。
例:
*** ネットワーク ストレージが Postgresql データベースに推奨されている理由は次のとおりです。
|
さらに、Cloud Shell をインクルードする場合のハードウェア要件を 収益化サービス(オールインワン インストールではサポートされていません):
Monetization を使用するコンポーネント | RAM | CPU | ハードディスク |
---|---|---|---|
Management Server(Monetization Services を使用) | 8 GB | 4 コア | 60 GB |
Analytics - 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 バックエンドを推奨、または上記の表のルールを使用) |
アナリティクス - Qpid スタンドアロン | 8 GB | 4 コア | 40 GB ~ 500 GB のローカル ストレージ(SSD または高速 HDD)
必要な処理能力が 250 TPS を超える場合は、1,000 IOPS をサポートするローカル ストレージを備えた HDD を推奨 |
オペレーティング システムとサードパーティ ソフトウェアの要件
以下のインストール手順と付属のインストール ファイルは、 表に記載されているオペレーティング システムとサードパーティ ソフトウェア サポートされているソフトウェアとサポート対象バージョン。
Java
インストール前に、サポート対象の Java 1.8 が各マシンにインストールされている必要があります。サポートされている JDK の一覧については、サポート対象ソフトウェアとサポート対象バージョンをご覧ください。
インストールを行うユーザーの JAVA_HOME
環境変数に JDK のルート ディレクトリが設定されていることを確認します。
SELinux
SELinux の設定によっては、Edge でのインストールと起動で問題が発生することがあります Edge コンポーネント。必要に応じて、インストール中に SELinux を無効にするか permissive モードに設定し、インストール後に再度 SELinux を有効にすることが可能です。詳細については、Edge apigee-setup ユーティリティをインストールするをご覧ください。
apigee の作成ユーザー
インストール手順において、「apigee」という UNIX システムのユーザーが作成されます。Edge のディレクトリとファイルは、Edge プロセスと同じく、「apigee」が所有者となります。つまり、Edge コンポーネントは「apigee」ユーザーとして実行されます。必要に応じて、コンポーネントを別のユーザーとして実行することも可能です。
インストール ディレクトリ
デフォルトでは、インストーラはすべてのファイルを /opt/apigee
ディレクトリに書き込みます。このディレクトリの場所は変更できません。このディレクトリは変更できませんが、ディレクトリを作成して
/opt/apigee
を別の場所にマッピングするシンボリック リンク(詳細はこちら)
/opt/apigee からシンボリック リンクを作成する。
このガイドの手順では、インストール ディレクトリは
/opt/apigee
。
/opt/apigee のシンボリック リンクの作成
シンボリック リンクを作成する前に、まず「apigee」という名前のユーザーとグループを作成する必要があります。これは、 Edge インストーラによって作成された同じグループとユーザーである必要があります。
シンボリック リンクを作成するには、bootstrap_4.50.00.sh ファイルをダウンロードする前に次の手順を実施します。以下の手順はすべて、root として実行する必要があります。
- 「apigee」ユーザーと「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
掲載ネットワークの設定
インストール前にネットワーク設定を確認することをおすすめします。インストーラは、すべてのマシンが固定 IP アドレスを持つことを想定しています。次のコマンドを使用して設定を確認します。
hostname
はマシンの名前を返します。hostname -i
は、アドレス指定可能なホスト名の IP アドレスを返します。 できます。
オペレーティング システムの種類やバージョンによっては、
/etc/hosts
、/etc/sysconfig/network
(ホスト名がない場合)
確認します。詳細については、ご使用のオペレーティング システムのドキュメントをご覧ください。
サーバーに複数のインターフェース カードがある場合、「hostname -i」スペースで区切られた IP アドレスのリスト。デフォルトでは、Edge インストーラは返された最初の IP アドレスを使用します。 常に正しいとは限りません。この代替手段として、インストール構成ファイルで次のプロパティを設定できます。
ENABLE_DYNAMIC_HOSTIP=y
このプロパティを「y」に設定すると、アプリケーションとして使用する IP アドレスを選択するよう求められます。 自動的に行われます。デフォルト値は n です。詳細については、Edge 構成ファイル リファレンスをご覧ください。
TCP ラッパー
TCP ラッパーは一部のポートの通信をブロックする場合があり、OpenLDAP、Postgres、Cassandra のインストールに影響する可能性があります。これらのノードで /etc/hosts.allow
を確認し、
/etc/hosts.deny
を使用して、必要なポートにポート制限がないことを確認します。
OpenLDAP、Postgres、Cassandra のポート。
iptables
ネットワーク上のノード間の接続を妨げる iptables ポリシーがないことを確認する ポートを指定します。必要に応じて、次のコマンドを使用してインストール中は iptables を停止できます。
sudo/etc/init.d/iptables stop
CentOS 7.x の場合:
systemctl stop firewalld
ディレクトリへのアクセス
次の表に、Edge プロセスの特別な要件がある Edge ノードのディレクトリを示します。
サービス | ディレクトリ | 説明 |
---|---|---|
ルーター | /etc/rc.d/init.d/functions |
Edge Router は Nginx ルーターを使用しており、 自社のセキュリティ プロセスで 権限を 744 に設定すると、次のリソースへの読み取りアクセスを許可できます。
|
Zookeeper | /dev/random |
Zookeeper クライアント ライブラリを機能させるため、乱数生成ツール /dev/random への読み取りアクセス権が必要です。/dev/random の読み取りがブロックされている場合、Zookeeper サービスは起動できません。 |
Cassandra
すべての Cassandra ノードは、1 つのリングに接続される必要があります。Cassandra は、信頼性とフォールト トレランスを確保するため、複数のノードにデータレプリカを保持します。Edge キースペースごとのレプリケーション戦略によって、レプリカが配置される Cassandra ノードが決定されます。詳細については、Cassandra のレプリケーション係数と整合性レベルについてをご覧ください。
Cassandra は、使用可能なメモリに基づいて Java ヒープサイズを自動的に調整します。パフォーマンスの低下が見られる場合やメモリ消費量が多い場合は、Java リソースのチューニングをご覧ください。
Edge for Private Cloud をインストールしたら、Cassandra が構成されていることを確認できます。
/opt/apigee/apigee-cassandra/conf/cassandra.yaml
を調べることで正しく
表示されます。たとえば、Edge for Private Cloud のインストール スクリプトで次の値が設定されていることを確認します。
プロパティ:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
PostgreSQL データベース
Edge をインストールした後、状況に応じて次の PostgreSQL データベース設定を調整できます。 システムで使用可能な RAM の容量:
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 /opt/apigee/customer/application/postgresql.properties
ファイルが存在しない場合は作成します。
- 上記のプロパティを設定します。
- 編集内容を保存します。
- PostgreSQL データベースを再起動します。
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
システム制限
Cassandra ノードと Message Processor ノードで、次のシステム制限が設定されていることを確認します。
- Cassandra ノードで、Memlock、nofile、アドレス空間(as)の上限を Cassandra ノードに
/etc/security/limits.d/90-apigee-edge-limits.conf
のインストール ユーザー(デフォルトは「apigee」) 次のように指定します。apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited apigee soft nproc 32768 apigee hard nproc 65536
詳細については、Apache Cassandra ドキュメントの本番環境の推奨設定をご覧ください。
- Message Processor ノードでは、
/etc/security/limits.d/90-apigee-edge-limits.conf
でオープン ファイル記述子の最大数を 64,000 に設定します。次に例を示します。apigee soft nofile 32768 apigee hard nofile 65536
必要に応じて、制限の値を増やせます。たとえば、多数のワーカーが 一度に開くことができます。
Router または Message Processor で次のエラーが表示された場合
system.log
の場合、ファイル記述子の上限が低すぎる可能性があります。"java.io.IOException: Too many open files"
ユーザー制限を確認するには、次のコマンドを実行します。
# su - apigee $ ulimit -n 100000
ファイル記述子の制限を
100000
に設定した後もオープン ファイル数の上限に達する場合は、トラブルシューティングを受けるために Apigee Edge サポートでチケットを開いてください。
ネットワーク・セキュリティ・サービス(NSS)
Network Security Services(NSS)は、ソフトウェア開発と サーバー アプリケーションもサポートしています。NSS v3.19 以降がインストールされていることを確認します。
現在のバージョンを確認するには:
yum info nss
NSS を更新するには:
yum update nss
詳細については、RedHat のこちらの記事をご覧ください。
NSCD(ネームサービス キャッシュ デーモン)を使用する場合の IPv6 の DNS ルックアップを無効にする
NSCD(ネームサービス キャッシュ デーモン)をインストールして有効にしている場合は、Message Processor も DNS ルックアップを 2 回行いますNSCD を使用する場合は、IPv6 の DNS ルックアップを無効にしてください。
IPv6 で DNS ルックアップを無効にするには:
- すべての Message Processor ノードで
/etc/nscd.conf
を編集します。 - 次のプロパティを設定します。
enable-cache hosts no
Google Cloud で IPv6 を無効にする RedHat/CentOS 7 用プラットフォーム
Google Cloud Platform 上の RedHat 7 または CentOS 7 に Edge をインストールする場合、 すべての Qpid ノードで IPv6 を無効にする必要があります。
ご使用の OS バージョンの RedHat または CentOS のドキュメントをご覧ください。 IPv6 を無効にします。たとえば、次のようなことができます。
- エディタで
/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.
awk |
expr |
libxslt |
RPM |
unzip |
basename |
grep |
Lua ソケット |
rpm2cpio |
useradd |
bash |
hostname |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
wget |
curl |
libaio |
perl(from procps) |
tar |
xerces-c |
cyrus-sasl | libdb4 | pgrep(from procps) | tr | おいしい |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
ディレクトリ名 | libibverbs | pwd | uname | |
エコー | librdmacm | python |
ntpdate
Apigee では、サーバーを時刻が同期されます。これには 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 の世界では virtual
(仮想)という用語が頻繁に使われており、これは Apigee Edge for Private Cloud のデプロイメントと仮想ホストにも当てはまります。まず 2 つの重要な指標と
virtual
という用語の使用:
- 仮想マシン(VM): 必須ではありませんが、一部のデプロイメントでは VM 技術を使用して Apigee コンポーネント用のサーバーを分離します。VM ホストは、物理ホストのようにネットワーク インターフェースやファイアウォールを実装できます。
- 仮想ホスト: Apache 仮想ホストに類似したウェブ エンドポイント。
VM 上のルーターは複数の仮想ホストを公開できます(ただし、それらの仮想ホストのホスト エイリアスまたはインターフェース ポートが互いに異なる必要があります)。
例として、単一の物理サーバー A
が 2 つの VM を実行している場合があります。
「VM1」という名前の“VM2”という意味になります「VM1」が仮想イーサネット インターフェースを公開し、VM 内で「eth0」という名前が付けられ、仮想化マシンまたはネットワーク DHCP サーバーによって IP アドレス 111.111.111.111
が割り当てられているとします。また、VM2 が仮想イーサネット インターフェースを公開し、同じく「eth0」という名前が付けられ、IP アドレス 111.111.111.222
が割り当てられているとします。
この場合、2 つの VM のそれぞれで Apigee Router を稼働させることができます。ルーターは仮想ホストで エンドポイントを設定します。
VM1 の Apigee ルーターは、eth0 インターフェースで 3 つの仮想ホストを公開します(このインターフェースには
特定の IP アドレス)、api.mycompany.com:80
、api.mycompany.com:443
、
test.mycompany.com:80
。
VM2 のルーターは api.mycompany.com:80
を公開します。これは名前とポートが VM1 で公開されている仮想ホストと同一です。
物理ホストのオペレーティング システムにネットワーク ファイアウォールが設定されている場合があります。場合、そのファイアウォールは
仮想ストレージ サーバーに公開されるポートに向かう TCP トラフィックを渡すように
インターフェース(111.111.111.111:{80, 443}
と 111.111.111.222:80
)。イン
さらに、各 VM のオペレーティング システムは eth0 インターフェースに独自のファイアウォールを提供し、
ポート 80 と 443 のトラフィックの接続も許可する必要があります。
ベースパスは、デプロイされた異なる API プロキシに API 呼び出しをルーティングするための 3 つ目のコンポーネントです。API プロキシ バンドルは、異なるベースパスを持つ場合に特定のエンドポイントを共有できます。たとえば、1 つのベースパスを http://api.mycompany.com:80/
として定義できます。
もう 1 つは http://api.mycompany.com:80/salesdemo
として定義されています。
この場合、トラフィック トラフィックを分割するなんらかの種類のロードバランサまたは
2 つの IP アドレス間の http://api.mycompany.com:80/ トラフィック
(VM1 では 111.111.111.111
、VM2 では 111.111.111.222
)。この機能は特定のインストールに固有のもので、ローカル ネットワーク グループによって構成されます。
ベースパスは API をデプロイするときに設定します。上記の例では、2 つの API をデプロイできます。
組織に対する mycompany
と testmycompany
mycompany-org
は、次のホスト エイリアスを持つ仮想ホストに置き換えます。
api.mycompany.com
、ポートは 80
に設定します。Pod の IP アドレスを
場合、ルーターは受信リクエストを送信する API を認識しません。
できます。
しかし、API testmycompany
を /salesdemo
というベース URL でデプロイすれば、ユーザーは http://api.mycompany.com:80/salesdemo
を使用してこの API にアクセスできます。また、API mycompany を /
というベース URL でデプロイすれば、ユーザーは URL http://api.mycompany.com:80/
によってこの API にアクセスできます。
ライセンス
Edge のインストールごとに、Apigee から取得した固有のライセンス ファイルが必要となります。Management Server をインストールするときにライセンス ファイルへのパスを指定する必要があります(例: /tmp/license.txt)。
ライセンス ファイルはインストーラによって /opt/apigee/customer/conf/license.txt
にコピーされます。
ライセンス ファイルが有効な場合は、その有効期限と許可された Message Processor(MP)の数が検証されます。いずれかのライセンス設定が期限切れの場合は、/opt/apigee/var/log/edge-management-server/logs
にあるログでそれを調べることができます。その場合は、Apigee Edge サポートに移行の詳細をお問い合わせください。
まだライセンスをお持ちでない場合は、Apigee セールスまでお問い合わせください。