Stay up to date with weekly industry insights

the latest trends in web design, inbound marketing, mobile strategy and more...

Monitoring Your AWS Cloud Services With Amazon CloudWatch

Monitoring Your AWS Cloud Services With Amazon CloudWatch

In today’s digital ecosystem, one of the ways companies are able to ensure that their websites and apps are always available, reliable, and scalable is through the use of cloud hosting. Instead of running their software from a server that is hosted on-premises or located in space leased from a data center, many companies now utilize virtual instances from providers such as Amazon Web Services (AWS).

For administrators who are used to working with physical servers, this shift to the cloud can be somewhat jarring. However, the versatile tools that AWS provides more than make up for the perceived loss of control that comes with using virtual machines. Today, we’re looking at one of those tools: Amazon CloudWatch, which provides powerful monitoring of AWS resources and applications.

Intro to CloudWatch

Amazon CloudWatch provides robust monitoring of your entire AWS infrastructure, including:

  • Virtual instances hosted in Amazon EC2 (Elastic Compute Cloud)
  • Databases hosted in Amazon RDS (Relational Database Services)
  • Data stored in Amazon S3 (Simple Storage Service)
  • Elastic Load Balancers
  • Any other AWS resources

Administrators will be able to track a wide variety of helpful metrics, including:

  • CPU usage
  • CPU latency
  • Network traffic
  • Available storage space
  • Memory
  • Custom performance counters

AWS also provides access to system and application logs, and custom alarms can be created to provide near real time notification when specific phrases or metrics appear in the logs, or when certain events take place, such as low disk space. Dashboards can also be created to display graphs and statistics for both up to the minute and historical data.

With all of these capabilities, CloudWatch allows administrators to easily monitor multiple instances and resources from one console.

CloudWatch in Action

Let’s take a look at how administrators can use CloudWatch to monitor their AWS instance. Here's an example of a graph displaying the CPUUtilization metric for an EC2 instance, showing what percentage of the CPU has been used over time:

CloudWatch CPUUtilization graph

Graphs can be compiled into a dashboard, allowing administrators to view their AWS systems' performance at a glance:

CloudWatch dashboard

Alarms can also be created to notify administrators when metrics reach a certain point. For instance, here is an example of an alarm that will send a notification email when the CPUUtilization metric is greater than or equal to 90%:

CloudWatch alarm setup

As you can see, the options that CloudWatch provides for administrators are powerful and customizable, allowing administrators to monitor their AWS services and ensure their systems are running properly. Please stay tuned to the WSOL blog, where we'll continue to take a closer look at AWS and CloudWatch, including how to set up custom metrics. If you have any questions, please feel free to contact us or leave a comment below.

About the Author

Tom Bennett
Tom Bennett
As WSOL’s Lead Data Center Technician, Tom is responsible for managing and maintaining our data center environment. In addition to server administration, he provides Internal IT support and client end support. He is an expert in networking, virtualization, and data center technologies, providing the knowledge necessary to ensure the best hosting services for WSOL’s clients. When he’s not working, Tom enjoys golf and bowling.