最小クラスタ構成

このトピックでは、Apigee ハイブリッドのクラスタの最小構成について説明します。これらの最小構成は、サポートされているすべての Kubernetes プラットフォームに適用されます。このトピックの推奨事項は、試用版やテストシナリオなどの非本番環境のインストールに適用されます。Apigee ハイブリッドのインストール手順を行う際は、これらの推奨事項を念頭に置いてください。

ノードプールについて

ノードプールとは、クラスタ内で同じ構成を持つノードのグループのことです。デフォルトでは、ハイブリッドはすべての Pod をデフォルトのノードプールに割り当てます。リソースプールとして専用のノードプールを作成し、ハイブリッド コンポーネントをノードプールに割り当てることもできます。

通常、リソース要件が異なる Pod がある場合は、専用のノードプールを定義します。たとえば、apigee-cassandra Pod には永続ストレージが必要ですが、他の Apigee ハイブリッド Pod には必要ありません。このため、Cassandra 用のステートフル ノードプールと、残りのハイブリッド ランタイム サービス用のステートレス ノードプールを作成することをおすすめします。詳細については、専用ノードプールを構成するをご覧ください。

次のセクションでは、ステートフル ノードプールとステートレス ノードプールの両方の構成を示します。

最小構成

以下の最小構成は、クラスタの設定時に使用します。

構成 ステートフル ノードプール ステートレス ノードプール
目的 Cassandra データベース用のステートフル ノードプール。 ランタイムの Message Processor 用のステートレス ノードプール。
ラベル名 apigee-data apigee-runtime
ノード数 ゾーンあたり 1(リージョンあたり 3) ゾーンあたり 1(リージョンあたり 3)
CPU 4 4
RAM 15 15
ストレージ 動的 ApigeeDeployment CRD で管理
最小ディスク IOPS SAN または直接アタッチされたストレージで 2,000 IOPS。必要な IOPS をサポートできる場合であっても、NFS は推奨されません。 SAN または直接アタッチされたストレージで 2,000 IOPS。必要な IOPS をサポートできる場合であっても、NFS は推奨されません。

Cassandra ネットワークの要件

Cassandra は Gossip プロトコルを使用して、ネットワーク トポロジに関する情報を他のノードと交換します。

Gossip の使用と Cassandra の分散性(読み書き操作のために複数のノードと通信する)により、多くのデータがネットワークを通じて転送されます。

少なくとも 1 Gbps(本番環境システムでは 1 Gbps より上)のネットワーク帯域幅を持つインスタンス タイプを使用することをおすすめします。

本番環境での可用性を維持するため、Cassandra クラスタには 3 つのアベイラビリティ ゾーンが必要です。1 つのゾーンが停止した場合は、そのゾーンがオンラインに復帰するまでの間、残りのゾーンがリクエストへの応答を継続します。2 つ以上のゾーンが停止した場合は、少なくとも 2 つのゾーンがオンラインに戻るまで、Cassandra はリクエストに応答できません。データ更新の欠落リスクを最小限に抑えるため、ゾーンは 3 時間以内にオンラインに戻すことをおすすめします。

マルチリージョン ハイブリッド環境をデプロイする場合は、VPN または Google Cloud VPN のようなクラウド ソリューションを使用してリージョン間の接続を保護することをおすすめします。Cassandra で接続の問題が発生しないよう、サブネットが重複していないことを確認してください。現在のファイアウォール構成で、Cassandra のトラフィックが Cassandra Pod 間を通過できるようにします。Cassandra ポートの詳細については、セキュアポートの使用をご覧ください。

Cassandra の最大レイテンシまたは 99 パーセンタイルのレイテンシは 100 ミリ秒未満にする必要があります。

Cassandra NTP の要件

Cassandra のデータは、システムのタイムスタンプに基づいて同期されます。Cassandra クラスタ内のすべての Pod とすべてのリージョンで時刻が同期されていることを確認してください。ノード間やリージョン間で時刻のずれがあると、データの不整合が生じます。

構成のスケーリング

追加の容量やスループットのニーズに基づいて初期構成をスケーリングする必要がある場合は、次のトピックをご覧ください。