In our previous blog post we introduced CloudWatch envimation, CloudWatch Dashboard automation service, that allows you to generate dashboards for your EC2 instances easily.
EBS volumes are a vital part of almost any infrastructure running on EC2 instances. Luckily, CloudWatch provides a number of metrics for EBS volumes. Since EBS volumes are a separate entity in AWS, when you create EC2 instance monitoring dashboards, the EBS metrics are not included by default. Furthermore, all the metrics are labelled with their respective Volume IDs. That, unfortunately, does not tell you:
To provide our customers with a better overview of their system, we included the EBS volume monitoring in the ec2 dashboards request. Each EBS metric is labelled with the respective instance name, as well as the device name it has.
In this blog post, we’ll show the end-result dashboard looks like if you have multiple instances with EBS volumes in your infrastructure.
Our product is available on AWS Marketplace, and as a first step, you would need to subscribe to it. After finishing the registration on our developer portal and setting up the trusted role in your account, you would gain access to the token you can use to authenticate towards our endpoints.
Using the provided token, you can now make requests to our endpoints and get access to your CloudWatch-based EC2 and EBS monitoring.
For this example, we’ll create launch two EC2 instances, both having EBS volumes as root volumes.
The template uses latest Amazon Linux AMI with EBS volume as root volume. The user data script simulates some I/O so that we can see graphs in the generated CloudWatch Dashboard.
$ curl -X POST --header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'x-api-key: <YOUR_KEY>' \
-d '{"accountId": "<YOUR_ACCOUNT_ID>", "region": "eu-central-1", "nameFilter": "^CloudWatchEBS.*"}' \
'https://api.envimation.com/dashboards'
Don’t forget to use your key, which you have received after registration, and replace your account id. The result dashboard looks somewhat like this:
You can see now EBS widgets next to your EC2-related widgets. The endpoint will take care of plotting all available metrics for the types of EBS volumes attached to your.
Don’t forget to remove the CloudFormation template used in this example in order not to have additional costs.
CloudWatch includes some additional metrics for different EBS types. For example VolumeConsumedReadWriteOps
and VolumeThroughputPercentage
are available only for Provisioned IOPS SSD volumes. Using our endpoint, you can get an overview which metrics are available for your configuration and which of them are relevant for you.