7.9. 自動スケーリング
Data Grid Operator は、メモリー使用量に基づいて Pod を作成または削除することにより、キャッシュサービス Pod でデフォルトのキャッシュを監視して、クラスターを自動的にスケールアップまたはスケールダウンできます。
自動スケーリングは、キャッシュサービス Pod のクラスターでのみ利用できます。Data Grid Operator は、Data Grid サービス Pod のクラスターの自動スケーリングを実行しません。
自動スケーリングを有効にすると、Data Grid Operator が Pod を作成または削除する必要があるタイミングを決定できるメモリー使用しきい値を定義します。Data Grid Operator は、デフォルトキャッシュの統計を監視し、メモリー使用量が設定されたしきい値に達すると、クラスターをスケールアップまたはスケールダウンします。
最大しきい値
このしきい値は、スケールアップまたはエビクションを実行する前に、クラスター内の Pod が使用できるメモリー量の上限を設定します。Data Grid Operator は、設定するメモリーの最大容量にノードが達することを検出すると、可能な場合は新規のノードを作成します。Data Grid Operator が新規のノードを作成できない場合、メモリー使用量が 100 パーセントに達すると、エビクションを実行します。
最小しきい値
このしきい値は、Data Grid クラスター全体のメモリー使用量の下限を設定します。Data Grid Operator は、メモリー使用量が最小値を下回ったことを検出すると、Pod をシャットダウンします。
デフォルトのキャッシュのみ
自動スケーリング機能は、デフォルトのキャッシュでのみ動作します。他のキャッシュをクラスターに追加する予定の場合、Infinispan CR に autoscale フィールドを含めないでください。この場合、エビクションを使用して、各ノードのデータコンテナーのサイズを制御する必要があります。
7.9.1. 自動スケーリングの設定 リンクのコピーリンクがクリップボードにコピーされました!
キャッシュサービス Pod でクラスターを作成する場合、Data Grid Operator をクラスターを自動的にスケーリングするように設定できます。
手順
spec.autoscaleリソースをInfinispanCR に追加し、自動スケーリングを有効にします。注記自動スケーリングを無効にするには、
autoscale.disabledフィールドにtrueの値を設定します。以下のフィールドを使用して、自動スケーリングのしきい値を設定します。
Expand フィールド 説明 spec.autoscale.maxMemUsagePercent各ノードのメモリー使用量の最大しきい値をパーセンテージで指定します。
spec.autoscale.maxReplicasクラスターのキャッシュサービス Pod の最大数を指定します。
spec.autoscale.minMemUsagePercentクラスターのメモリー使用量の最小しきい値をパーセンテージで指定します。
spec.autoscale.minReplicasクラスターのキャッシュサービス Pod の最小数を指定します。
たとえば、以下を
InfinispanCR に追加します。spec: service: type: Cache autoscale: disabled: false maxMemUsagePercent: 70 maxReplicas: 5 minMemUsagePercent: 30 minReplicas: 2- 変更を適用します。