問題のトラブルシューティング

このページでは、さまざまなエラーのシナリオと、それらのエラーを解決するためのガイダンスについて説明します。

レプリケーションのシナリオ

このセクションでは、クラスタで発生する可能性のあるレプリケーションの問題について説明します。

レプリケーションの遅延をモニタリングするにはどうすればよいですか?

Memorystore for Redis Cluster には /cluster/replication/maximum_offset_diff 指標があります。この指標は、プライマリ クラスタ内のノードの最大レプリケーション オフセット差分(バイト単位)をモニタリングします。

レプリケーション オフセットの差を小さくすることで、レプリカは増分同期オペレーションをフル同期オペレーションよりも頻繁に、低コストで実行できます。

maximum_offset_diff 指標のしきい値を設定することをおすすめします。しきい値を超えると、Memorystore for Redis Cluster はアラートで通知できます。

クラスタのノードタイプに基づいて、次のようにしきい値を設定することをおすすめします。

  • ノードタイプが redis-shared-core-nanoredis-standard-smallredis-highmem-mediumredis-highcpu-medium、または redis-standard-large の場合は、しきい値を 64 MB 未満に設定します。

  • ノードタイプが redis-highmem-xlarge または redis-highmem-2xlarge の場合は、しきい値を 1 GB 未満に設定します。

接続性エラーのシナリオ

このセクションでは、インスタンスで発生する可能性がある接続性の問題について説明します。

ファイアウォール ルールによる接続エラー

ファイアウォール ルールでは、Memorystore for Redis Cluster で使用されるポートをブロックすることによる接続エラーが発生することがあります。両方のインスタンスの Private Service Connect エンドポイントで、ポート 11000 ~ 13047 を許可リストに登録します。これらのエンドポイントの詳細については、予約済みネットワーク アドレスをご覧ください。

組織のポリシーによる接続エラー

Memorystore for Redis Cluster インスタンスへの Private Service Connect 接続をブロックする組織のポリシーを設定できます。

組織のポリシーで .restrictPrivateServiceConnectProducer ポリシーを使用している場合は、フォルダ番号 961333125034(Memorystore for Redis Cluster 専用のフォルダ)を許可リストに登録します。次に例を示します。

name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer
spec:
    rules:
      - values:
          allowedValues:
          - under:folders/961333125034

組織のポリシーで .disablePrivateServiceConnectCreationForConsumers ポリシーを使用している場合は、SERVICE_PRODUCERS を許可リストに登録する必要があります。次に例を示します。

name: organizations/Consumer-org-1/policies/compute.disablePrivateServiceConnectCreationForConsumers
spec:
    rules:
      - values:
          allowedValues:
          - SERVICE_PRODUCERS

CPU 使用率のシナリオ

このセクションでは、クラスタで発生する可能性がある CPU 使用率の問題について説明します。

クラスタの出力バッファの容量が不足している

クラスタの出力バッファの容量が不足した場合は、次の操作を行います。

  • maxmemory パラメータに小さい値を設定します。
  • allkeys-lru maxmemory ポリシーを使用します。

クラスタのメモリがいっぱいになり、新しい書き込みが発生すると、Memorystore for Redis Cluster はクラスタの maxmemory ポリシーに基づいてキーを削除し、書き込み用のスペースを確保します。allkeys-lru ポリシーは、キーセット全体から最近使用されていない(LRU)キーを削除します。

クラスタの maxmemory と使用済みメモリをモニタリングすることをおすすめします。これにより、クラスタがプロビジョニングされたクラスタ容量に達したかどうかを確認できます。また、maxmemory パラメータの値を減らすと、オーバーヘッド用のスペースが増えます。

永続性のシナリオ

このセクションでは、クラスタで発生する可能性のある永続性の問題について説明します。

書き込みトラフィックが、AOF の書き換えによる Memorystore for Redis Cluster のスペースの圧縮と再利用の能力を超えている

この状況が発生すると、Append-Only File(AOF)が書き換えプロセスで管理できるよりも速く増加します。これにより、ディスクが枯渇し、書き込みエラーが発生し、レプリカの作成と完全同期を必要とするオペレーションがブロックされます。

Memorystore for Redis Cluster は、書き込みスループットを調整するガードレールを実装しました。これにより、AOF の書き換えは、持続的な高書き込みワークロードに対応できます。