Monitoring and Reporting
As an AWS Admin you should be able to
Create and maintain metrics and alarms utilizing AWS monitoring services
Recognize performance & availability metrics
Perform the necessary steps to remediate base on performance and availability metrics
AWS Cloudwatch is one of the most important tools to use as AWS admin.
AWS provides a service called as CloudWatch which will have
Create an ec2 instance (free-tier)
Create an rds instance (free-tier)
Now what problems can happen in ec2 and rds that we as admins need to manage?
How can i know the problems are occuring in my resources?
So we need to have some view of aws resources (ec2 instance & rds instance) which of we created
Lets look at ec2 instance
Lets look at rds instance
So AWS is giving us some graphs which show some information.
Basic Workflow of Cloudwatch
In AWS Cloudwatch we have to know these basic terms
metric: This is fundamental concept of Cloudwatch which represents time-ordered set of data points that are published to Cloudwatch
Namespace: This is a container for Cloudwatch metrics. Typically namespaces have following convention ‘AWS/service’
Timestamp: Every metric is associated with the timestamp
Now lets findout what are different metrics that are published by ec2
Refer Here and rds Refer Here
Refer Here for aws cloudwatch namespace list To find the metrics published for each resource build cli queries
aws cloudwatch list-metrics --namespace AWS/EC2 --query "Metrics[*].MetricName"
Now we can find metrics that are published by AWS. In Some cases these metrics might not be enough, we might need to get more metrics delivered which are not defined by Amazon. So how do we deal about that
Now imagine a scenario
where you need to increase size of database when free disk space is less than 500 MB
Shutdown the ec2 instance when cpu is at 100% for the last 10 mins
Create a Dashboard with visualization to easily monitor resources running your application.