Memcached nodes placed in one Availability Zone

Spread Memcached nodes across Availability Zones to reduce the impact of a zone failure.

Description

Placing every node of a multi-node ElastiCache Memcached cluster in one Availability Zone can expose all nodes to that zone’s failure. AZMode: cross-az distributes the nodes across zones.

Potential impact

Widespread cache loss or unavailability can increase load on the application and its underlying data store.

Remediation

Set AZMode: cross-az for multi-node Memcached clusters. If PreferredAvailabilityZones is specified, include more than one zone. Spreading nodes across zones does not replicate Memcached data.

Examples

The examples distribute three nodes across Availability Zones. Other properties, such as node type, are omitted.

Before

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

After

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

References