Amazon EC2 provides several status checks to monitor the health and availability of instances and their attached resources. One such CloudWatch metric — StatusCheckFailed_AttachedEBS — is specifically designed to alert when one or more EBS volumes attached to a Nitro-based EC2 instance are impaired and unable to complete I/O operations. This article outlines how the metric works, the types of issues it can detect, and how to use CloudWatch alarms to take proactive action when failures occur.
Overview of StatusCheckFailed_AttachedEBS
StatusCheckFailed_AttachedEBS is a binary Amazon CloudWatch metric that monitors the I/O readiness of Amazon EBS volumes attached to EC2 instances. It reports:
0 – Healthy (all attached volumes are reachable)
1 – Failure detected (at least one volume is unreachable or cannot complete I/O)
Availability:
- Enabled by default at 1-minute granularity
- Available at no additional cost
- Supported only for Nitro-based EC2 instances
- Applicable across all commercial AWS Regions and GovCloud (excludes Outposts and Local Zones)
When and Why to Use This Metric
This metric is useful in the following scenarios:
- Diagnosing storage-level issues where attached volumes fail I/O operations
- Receiving alerts for potential instance storage degradation
- Triggering recovery workflows (e.g., stop/start or failover) using CloudWatch alarms
- Complementing volume-level metrics such as VolumeQueueLength, VolumeReadOps, or VolumeIdleTime
Common Causes of Failure
- Software or hardware issues in the EBS storage subsystem
- Physical host failures affecting EBS volume reachability
- Connectivity issues between the EC2 instance and attached EBS volumes
Creating a CloudWatch Alarm for the Metric (Console Steps)
To monitor this metric and respond automatically:
- Open the Amazon EC2 console
- Navigate to Instances and select the instance.
- Open the Status Checks tab.
- Choose Actions > Create status check alarm.
- On the Manage CloudWatch alarms page, click Create an alarm.
- Configure alarm settings:
- Metric: StatusCheckFailed_AttachedEBS
- Statistic: Average
- Evaluation Period: 60 seconds
- Consecutive Periods (Datapoints to Alarm): 1–3 (based on desired sensitivity)
- Alarm action: Specify auto-recovery or notify via Amazon SNS
- (Optional) Add to a CloudWatch dashboard for visibility
- Click Create.
This allows early detection and automated remediation of attached EBS volume impairments.
Additional Monitoring for Nitro-Based Instances
AWS provides a related metric for Nitro-based instances:
VolumeStalledIOCheck – Reports whether a volume failed an I/O operation in the past minute
Use this to complement instance-level alarms with volume-level visibility.
Important Notes
- This metric is exclusive to Nitro-based EC2 instances.
- It is not available via describe-instance-status in the AWS CLI—use CloudWatch for access.
- It provides a system-level signal for volume accessibility, regardless of workload activity
Reference Links
Status checks for Amazon EC2 instances