The course is part of these learning pathsSee 6 more
This course takes a high-level look at Amazon CloudWatch and some of its features and components. CloudWatch is a service that enables you to monitor the health and performance of your environment to ensure its operating within its expected thresholds.
If you have any feedback relating to this course, please contact us at firstname.lastname@example.org.
- Get a high-level understanding of Amazon CloudWatch
- Learn about the features and use cases of the service
This course is ideally suited to those who are unfamiliar with Amazon CloudWatch and are looking to find out more about the service at an introductory level.
To get the most out of this course, you should have a very basic understanding of the AWS cloud platform.
Hi and welcome to our seventh lecture. In this lecture, we will take a look at Cloud Watch and explore its main features. We will also work with one of the best features of Cloud Watch, the custom metrics, where we can upload any data we want and monitor it from AWS.
First, we need to go to the Cloud Watch dashboard. Here, we can see the two alarms that we created in the last lecture. The low CPU utilization alarm is sending emails to the Cloud Motors admins topic.
We don't want that, as this information is not critical for us. So let's remove this notification and adjust the alarm, because after a while, we noticed that it was removing instances too soon. In the same way, let's modify the high CPU utilization alarm, because it was also adding instances to auto scaling too soon. If you explore enough, you will notice that we could use the same alarm to trigger the increase and decrease policies that we specified in auto scaling. Let's check the metrics. Here, we can see a list of all available metrics that we can query. We can see graphics, combine graphics with multiple metrics, or set alarms for the metrics that we see here. Depending on what you have in your environment, you could have more or less metrics to view.
If we select one metric, we can see a graphic with the metrics value over the time. We can also combine the current graphic with more than one metric. That way, we could, for instance, see what happens with the instance IO when the CPU utilization is high, or how the RDS database reacts when there is too much network traffic at the instances on the auto scaling group, or how many requests are being processed by ELB during the working hours. There are many possible choices. It's up to you to combine the data and explore the possibilities. You could select the metrics that you want, build a graphic and share it. You just need to click on Copy URL and share the link.
You can select the exact time frame that you want to see on the graphic. But besides AWS services, Cloud Watch can also monitor how much you're going to pay for the current month. You can also set alarms for that. You just need to go to the North Virginia region and view the billing metrics. Here you could, for instance, create a billing alarm in case you have a defined budget for your project. Since we want to save money, let's create an alarm that will send an email to the one who's responsible for the bills. Whenever the estimated cost is more than zero, it will trigger the alarm. In other words, we don't want to pay anything. To really have billing alarms, you would need to first go on the billing and cost management console, click on preferences, and then select the receive billing alerts. I can't do this since I'm not using the route account, and my IAM user doesn't have permissions for that. Now, we are done.
For me, the best feature of Cloud Watch is the custom metrics that we can send and monitor as we do with any other metric.
I've written a simple script that's available in the GitHub repository in the scripts folder. Before running, you need to have the AWS command line interface configured on your machine. Since I have it already, I will skip that part and show you the script.
You just need to change the end point variable and allow ping on the ELS' security group to allow it to work properly. The ping will get the latency and curl will count the time that the welcome page is taking to load. I'm running this script as we speak, and it's sending data already.
Let's check the data. And here we have our custom metrics. And we can compare them on the same graphic over a time frame as we already saw. We can also export the graphic URL as any other graphic. I strongly recommend you take some time and explore everything that Cloud Watch can provide.
- AWS SysOps Administrator Roles and Responsibilities
- Initial Application Setup
- Managing instances
- Deploying an Elastic Load Balancer
- Complete the Elastic infrastructure
- Infrastructure monitoring with CloudWatch
- Industry standards
- Application Security
- The AWS Shared Responsibility Model
- Elastic Beanstalk
Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.
To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.
Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.
He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.
In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.
Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.