1 Answer
- Newest
- Most votes
- Most comments
0
Hi, yes, replicas can trigger trafic shaping when you've intense write activity. The bandwidth of those replications is part of the total count.
Have a look at https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/TroubleshootingConnections.html#Network-limits
Network traffic limits: Check the following CloudWatch metrics for Redis
to identify possible network limits being hit on the ElastiCache node:
NetworkBandwidthInAllowanceExceeded / NetworkBandwidthOutAllowanceExceeded:
Network packets shaped because the throughput exceeded the aggregated bandwidth limit.
It is important to note that every byte written to the primary node will be replicated
to N replicas, N being the number of replicas. Clusters with small node types, multiple
replicas, and intensive write requests may not be able to cope with the replication backlog.
For such cases, it's a best practice to scale-up (change node type), scale-out (add shards
in cluster-mode enabled clusters), reduce the number of replicas, or minimize the
number of writes.
NetworkConntrackAllowanceExceeded: Packets shaped because the maximum number
of connections tracked across all security groups assigned to the node has been exceeded.
New connections will likely fail during this period.
NetworkPackets PerSecondAllowanceExceeded: Maximum number of packets
per second exceeded. Workloads based on a high rate of very small requests may
hit this limit before the maximum bandwidth.
The metrics above are the ideal way to confirm nodes hitting their network limits.
However, limits are also identifiable by plateaus on network metrics.
If the plateaus are observed for extended periods, they will be likely followed by
replication lag, increase on bytes Used for cache, drop on freeable memory,
high swap and CPU usage. Amazon EC2 instances also have network limits that can
tracked through ENA driver metrics. Linux instances with enhanced networking support
and ENA drivers 2.2.10 or newer can review the limit counters with the command:
# ethtool -S eth0 | grep "allowance_exceeded"
Relevant content
- asked 2 years ago
- Accepted Answerasked 6 years ago
- asked a year ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago