

# Pause I/O fault injection
<a name="ebs-fis-pause-io"></a>

Use Amazon Fault Injection Service and the Pause I/O action to temporarily stop I/O between an Amazon EBS volume and the instances to which it is attached to test how your workloads handle I/O interruptions. 

For more information about Amazon FIS, see the [https://docs.amazonaws.cn/fis/latest/userguide/what-is.html](https://docs.amazonaws.cn/fis/latest/userguide/what-is.html).

**Considerations**

Keep in mind the following considerations for pausing volume I/O:
+ Pause I/O is supported on all [Nitro-based instance types](https://docs.amazonaws.cn/ec2/latest/instancetypes/ec2-nitro-instances.html).
+ To test your OS timeout configuration, set the experiment duration equal to or greater than the value specified for `nvme_core.io_timeout`. For more information, see [NVMe I/O operation timeout for Amazon EBS volumes](timeout-nvme-ebs-volumes.md).
+ If you drive I/O to a volume that has I/O paused, the following happens:
  + The volume's status transitions to `impaired` within 120 seconds. For more information, see [Amazon EBS volume status checks](monitoring-volume-checks.md).
  + The CloudWatch metric for `VolumeStalledIOCheck` will be `1` if volume I/O is paused for over 60 seconds. For more information see [Metrics for Amazon EBS volumes](using_cloudwatch_ebs.md#ebs-volume-metrics).
  + The CloudWatch metrics for queue length (`VolumeQueueLength`) will be non-zero. Any alarms or monitoring should monitor for a non-zero queue depth.
  + The CloudWatch metrics for `VolumeReadOps` or `VolumeWriteOps` will be `0`, which indicates that the volume is no longer processing I/O.

You can perform a basic experiment from the Amazon EC2 console, or you can perform more advanced experiments using the Amazon FIS console. For more information about performing advanced experiments using the Amazon FIS console, see [ Tutorials for Amazon FIS](https://docs.amazonaws.cn/fis/latest/userguide/fis-tutorials.html) in the *Amazon Fault Injection Service User Guide*.

**To perform a basic experiment using the Amazon EC2 console**

1. Open the Amazon EC2 console at [https://console.amazonaws.cn/ec2/](https://console.amazonaws.cn/ec2/).

1. In the navigation pane, choose **Volumes.**

1. Select the volume for which to pause I/O and choose **Actions**, **Fault injection**, **Pause volume I/O**.

1. For **Duration**, enter the duration for which to pause I/O between the volume and the instances. The field next to the Duration dropdown list shows the duration in ISO 8601 format.

1. In the **Service access** section, select the IAM service role for Amazon FIS to assume to perform the experiment. You can use either the default role, or an existing role that you created. For more information, see [Create an IAM role for Amazon FIS experiments](https://docs.amazonaws.cn/fis/latest/userguide/getting-started-iam-service-role.html).

1. Choose **Pause volume I/O**. When prompted, enter `start` in the confirmation field and choose **Start experiment**.

1. Monitor the progress and impact of your experiment. For more information, see [Monitoring Amazon FIS](https://docs.amazonaws.cn/fis/latest/userguide/monitoring-experiments.html) in the *Amazon FIS User Guide*.