Redis 用 Amazon ElastiCache
Redis 用 ElastiCache ユーザーガイド (API バージョン 2015-02-02)

モニタリングすべきメトリクス

次の CloudWatch メトリクスは、ElastiCache パフォーマンスを把握するのに役立ちます。ほとんどの場合、パフォーマンスの問題が発生する前に修正作業を行うことができるように、これらのメトリクスに CloudWatch アラームを設定することをお勧めします。

モニタリングするメトリクス

CPUUtilization

パーセント単位でレポートされるホストレベルのメトリクスです。詳細については、「Host-Level Metrics」を参照してください。

一般的に、利用可能な CPU 帯域幅の 90% にしきい値を設定することをお勧めします。Redis はシングルスレットであるため、実際のしきい値はノードの総容量の割合として計算します。たとえば、4 個のコアを搭載するノードタイプを使用しているとします。この場合、CPUUtilization のしきい値は 90/4、つまり 22.5% になります。ノードタイプに搭載されたコア数 (vCPU) を調べる方法については、「Amazon ElastiCache 料金表」を参照してください。

使用しているキャッシュノードのコア数に基づいて独自のしきい値を決定する必要があります。このしきい値を超えた場合で、主なワークロードが読み込みリクエストから生成されている場合、リードレプリカを追加してキャッシュクラスターをスケールします。主なワークロードが書き込みリクエストからのものである場合、クラスター設定に応じて、以下のことをお勧めします。

  • Redis (クラスターモードが無効) クラスター: より大きいキャッシュインスタンスタイプを使用してスケールアップします。

  • Redis (クラスターモードが有効) クラスター: より多くのシャードを追加して、より多くのプライマリノード間で書き込みワークロードを分散します。

ヒント

Redis ユーザーは、ホストレベルのメトリクス CPUUtilization を使用する代わりに、利用できるシングルコアでの使用率をレポートする Redis メトリクス EngineCPUUtilization を使用できる場合があります。コードでこのメトリクスが利用できるかどうか、およびその詳細については、「Redis のメトリクス」を参照してください。

SwapUsage

バイト単位でレポートされるホストレベルのメトリクスです。詳細については、「Host-Level Metrics」を参照してください。

このメトリクスは 50 MB を超えてはなりません。その場合は、以下のトピックを参照してください。

Evictions

これは、キャッシュエンジンのメトリクスです。アプリケーションニーズに基づいてこのメトリクスの独自のアラームしきい値を決定することをお勧めします。

CurrConnections

これは、キャッシュエンジンのメトリクスです。アプリケーションニーズに基づいてこのメトリクスの独自のアラームしきい値を決定することをお勧めします。

CurrConnections の値が大きくなった場合、アプリケーションに問題があることを示している可能性があります。アプリケーション動作を調査してこの問題を解決する必要があります。