Memcached ノードが単一のアベイラビリティーゾーンに配置

Memcached ノードを複数のアベイラビリティーゾーンに分散し、障害の影響を抑えます。

説明

複数ノードの ElastiCache Memcached クラスターを一つのアベイラビリティーゾーンに配置すると、そのゾーンの障害が全ノードに及ぶおそれがあります。AZMode: cross-az はノードを複数のゾーンに分散します。

想定される影響

広範囲のキャッシュが失われたり利用できなくなったりすると、アプリケーションや元のデータストアの負荷が増えるおそれがあります。

対処方法

複数ノードの Memcached クラスターに AZMode: cross-az を設定してください。PreferredAvailabilityZones を指定する場合は複数のゾーンを含めてください。ゾーンへの分散は Memcached データの複製を行いません。

例

この例では 3 個のノードを複数のアベイラビリティーゾーンに配置します。ノードタイプなど、他のプロパティは省略しています。

変更前

yaml
Resources:
  CacheCluster:
    Type: AWS::ElastiCache::CacheCluster
    Properties:
      Engine: memcached
      NumCacheNodes: 3
      AZMode: single-az

変更後

yaml
Resources:
  CacheCluster:
    Type: AWS::ElastiCache::CacheCluster
    Properties:
      Engine: memcached
      NumCacheNodes: 3
      AZMode: cross-az

参考資料