Amazon Elastic Block Store (Amazon EBS) sends data points to CloudWatch for
several metrics. Most EBS volumes automatically send five-minute metrics to
CloudWatch only when the volume is attached to an instance. This aws `ebs`
metricset collects these Cloudwatch metrics for monitoring purposes.

[float]
=== AWS Permissions
Some specific AWS permissions are required for IAM user to collect AWS EBS metrics.
----
ec2:DescribeRegions
cloudwatch:GetMetricData
cloudwatch:ListMetrics
tag:getResources
sts:GetCallerIdentity
iam:ListAccountAliases
----

[float]
=== Dashboard

The aws ebs metricset comes with a predefined dashboard. For example:

image::./images/metricbeat-aws-ebs-overview.png[]

[float]
=== Configuration example
[source,yaml]
----
- module: aws
  period: 300s
  metricsets:
    - ebs
  # This module uses the aws cloudwatch metricset, all
  # the options for this metricset are also available here.
----

[float]
=== Metrics
Please see more details for each metric in
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using_cloudwatch_ebs.html[ebs-cloudwatch-metric].

|===
|Metric Name|Statistic Method
|VolumeReadBytes | Average
|VolumeWriteBytes | Average
|VolumeReadOps | Average
|VolumeWriteOps | Average
|VolumeQueueLength | Average
|VolumeThroughputPercentage | Average
|VolumeConsumedReadWriteOps | Average
|BurstBalance | Average
|VolumeTotalReadTime | Sum
|VolumeTotalWriteTime | Sum
|VolumeIdleTime | Sum
|===
