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