Kinesis stream has more than one provisioned shard
What it checks
Kinesis stream has more than one provisioned shard
Where it applies
Terraform: aws_kinesis_stream
CloudFormation: AWS::Kinesis::Stream
How to fix it
- Measure ingest/read demand, partition-key distribution, throttling and latency before choosing capacity. Compare provisioned shard-hour costs with On-demand Standard per-GB plus stream-hour billing and On-demand Advantage per-GB billing with account-level minimums of 25 MB/s ingress and 25 MB/s egress, without a fixed stream-hour charge.
- For provisioned downscaling, keep each target at least half the current shard count. Use 8 -> 4 -> 2 -> 1 or 3 -> 2 -> 1, one apply per step, waiting for ACTIVE between updates; review the ten scaling changes per rolling 24-hour limit. Edit the existing Terraform shard_count or CloudFormation ShardCount, preserving all unrelated settings.
- If changing modes, review the workload and current pricing first. Use the existing Terraform stream_mode_details.stream_mode or CloudFormation StreamModeDetails.StreamMode and follow the dialect's shard-count constraints. Mode switching is limited to twice within 24 hours per stream; do not combine an on-demand mode with an incompatible authored shard count.
Frameworks
- AWS Well-Architected COST.6
These mappings are advisory, not an attestation of compliance.