ハードウェア要件
高可用性を実現するには、次の最小ハードウェア要件を満たす必要があります。 セキュリティ インフラストラクチャを構築できます。
次の動画は、インストール環境のサイズに関する全般的なガイダンスを示しています。
インストール トポロジで説明されているすべてのインストール シナリオに適用される、インストール コンポーネントの最小ハードウェア要件を次の表に示します。
これらの表では、ハードディスク容量に加えて、ハードディスク容量が 自動的に作成されます。アプリケーションとネットワーク トラフィックによっては、 必要なリソースが下表のとおりです。
インストール コンポーネント | 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 |
ルーター(スタンドアロン) | 16 GB | 8 コア | 100 GB |
分析 - 同一サーバー上の Postgres/Qpid | 16 GB* | 8 コア* | 500 GB~1 TB** のネットワーク ストレージ***(1,000 IOPS 以上* をサポートする SSD バックエンドを推奨) |
Analytics - Postgres マスターまたはスタンバイ(スタンドアロン) | 16GB* | 8 コア* | 500 GB~1 TB** のネットワーク ストレージ***(1,000 IOPS 以上* をサポートする SSD バックエンドを推奨) |
アナリティクス - Qpid スタンドアロン | 8 GB | 4 コア | 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 データベースには次の理由からネットワーク ストレージが推奨されます。
|
さらに、Monetization Services をインストールする場合のハードウェア要件を次に示します(Monetization Services はオールインワン インストールではサポートされません)。
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 バックエンドを推奨、または上記の表のルールを使用) |
Analytics - 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 コンポーネントのインストールと起動で問題が発生することがあります。必要に応じて、インストール中に SELinux を無効にするか permissive モードに設定し、インストール後に再度 SELinux を有効にすることが可能です。詳細については、Edge apigee-setup ユーティリティをインストールするをご覧ください。
「apigee」ユーザーの作成
インストール手順では、「apigee」という名前の Unix システム ユーザーが作成されます。エッジ ディレクトリと 各ファイルは、Edge プロセスと同様に「apigee」が所有します。つまり Edge コンポーネントは 「apigee」できます。必要に応じて、コンポーネントを別のユーザーとして実行できます。
インストール ディレクトリ
デフォルトでは、インストーラはすべてのファイルを /opt/apigee
ディレクトリに書き込みます。マイページ
このディレクトリの場所は変更できません。このディレクトリは変更できませんが、ディレクトリを作成して
/opt/apigee
を別の場所にマッピングするシンボリック リンク(詳細はこちら)
/opt/apigee からシンボリック リンクを作成する。
このガイドの手順では、インストール ディレクトリを /opt/apigee
と記載しています。
/opt/apigee からのシンボリック リンクの作成
シンボリック リンクを作成する前に、まず「apigee」というユーザーとグループを作成してください。このグループとユーザーは、Edge インストーラが作成するものと同じです。
シンボリック リンクを作成するには、bootstrap_4.52.01.sh ファイルをダウンロードする前に次の手順を実行します。 これらの手順はすべて root ユーザーで行う必要があります。
- 「apigee」を作成するuser and group:
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 を停止できます。 command:
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 ノードがリングに接続されている必要があります。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 をインストールした後、システムで使用可能な 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 /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
- 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 のこちらの記事をご覧ください。
IPv6 で DNS ルックアップを無効にする NSCD(Name Service Cache Daemon)を使用する場合
NSCD(ネームサービス キャッシュ デーモン)をインストールして有効にしている場合は、Message Processor も DNS ルックアップを 2 回行います次の場合は 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 を無効にする必要があります。
手順については、お使いの OS バージョンの RedHat または CentOS のドキュメントをご覧ください。 IPv6 を無効にします。たとえば、次のようなことができます。
- エディタで
/etc/hosts
を開きます。 - 「#」を挿入次の行の 1 列目に文字を入力して、コメントアウトします。
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- ファイルを保存します。
AWS AMI
Red Hat Enterprise Linux 用 AWS Amazon Machine Image(AMI)に Edge をインストールする場合 最初に次のコマンドを実行する必要があります。
yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
ツール
インストーラでは、次の UNIX ツール(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(procps から) |
tar |
xerces-c |
Cyrus-Sasl | libdb4 | pgrep(procps から) | tr | おいしい |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
ディレクトリ名 | libibverbs | pwd | uname | |
エコー | librdmacm | python |
ntpdate
サーバーの時刻を同期させることをおすすめします。まだ構成されていない場合は
ntpdate
ユーティリティがこの目的に使用できます。これにより、
サーバーの時刻が同期されているかどうか。yum install ntp
を使用すると、
ユーティリティですこのコマンドは、OpenLDAP 設定をレプリケートする場合に特に役立ちます。なお、サーバー
タイムゾーンを UTC で返します。
openldap 2.4
オンプレミス インストールには OpenLDAP 2.4 が必要です。サーバーがインターネットに接続できる場合は、Edge インストール スクリプトによって OpenLDAP がダウンロードされ、インストールされます。サーバーがインターネットに接続できない場合は、必ず OpenLDAP が
インストールしておく必要があります。RHEL/CentOS の場合は、次のコマンドを実行します。
yum install openldap-clients openldap-servers
: OpenLDAP をインストールします。
13 ホストにインストールした場合と、2 つのデータセンターを使用する 12 ホストで OpenLDAP をインストールする場合 OpenLDAP をホストするノードが複数あるため、レプリケーションが必要です。
ファイアウォールと仮想ホスト
virtual
という用語は、IT 分野では一般的に過負荷となるため、
Apigee Edge for Private Cloud のデプロイと仮想ホスト。まず 2 つの重要な指標と
virtual
という用語の使用:
- 仮想マシン(VM): 必須ではありませんが、一部のデプロイでは VM テクノロジーが使用されます。 Apigee コンポーネント用に分離されたサーバーを作成します。VM ホストは、物理ホストと同様に、複数の ネットワークインターフェースとファイアウォールがあります
- 仮想ホスト: Apache 仮想ホストに似たウェブ エンドポイント。
VM 上のルーターは複数の仮想ホストを公開できます(ただし、それらの仮想ホストのホスト エイリアスまたはインターフェース ポートが互いに異なる必要があります)。
例として、単一の物理サーバー A
が 2 つの VM を実行している場合があります。
「VM1」という名前の“VM2”という意味になります仮に「VM1」とします仮想イーサネット インターフェースを公開します。このインターフェースは
「eth0」割り当てられている IP アドレス 111.111.111.111
は、VM 内にあります。
仮想マシンやネットワークの DHCP サーバーと通信します。VM2 が Virtual Private Cloud(VPC)を
「eth0」という名前のイーサネット インターフェースそのエンドポイントに IP アドレスが
111.111.111.222
。
この場合、2 つの VM のそれぞれで Apigee Router を稼働させることができます。この例では、これらのルーターは次のように仮想ホストのエンドポイントを公開します。
VM1 の Apigee Router は、その 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 プロキシ バンドルで異なるエンドポイントを共有している場合は、
作成します。たとえば、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
に対して 2 つの API(mycompany
と testmycompany
)をデプロイできます。Pod の IP アドレスを
場合、ルーターは受信リクエストを送信する API を認識しません。
できます。
しかし、API testmycompany
を /salesdemo
というベース URL でデプロイすれば、ユーザーは http://api.mycompany.com:80/salesdemo
を使用してこの API にアクセスできます。API mycompany を
ベース URL を /
に設定した場合、ユーザーはこの URL で API にアクセスできます。
http://api.mycompany.com:80/
。
ライセンス
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 Sales にお問い合わせください。