0% found this document useful (0 votes)
110 views17 pages

Overview of Amazon CloudWatch Services

Amazon CloudWatch is a monitoring and observability service for AWS resources that enables users to track metrics, monitor logs, set alarms, and respond to changes in real-time. It provides insights into operational health and performance, allowing for automated actions and troubleshooting. Key features include metrics, alarms, dashboards, and log management, with benefits such as improved resource optimization and automated notifications, while challenges include cost management and complexity in setup.

Uploaded by

nagalaks.ece
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
110 views17 pages

Overview of Amazon CloudWatch Services

Amazon CloudWatch is a monitoring and observability service for AWS resources that enables users to track metrics, monitor logs, set alarms, and respond to changes in real-time. It provides insights into operational health and performance, allowing for automated actions and troubleshooting. Key features include metrics, alarms, dashboards, and log management, with benefits such as improved resource optimization and automated notifications, while challenges include cost management and complexity in setup.

Uploaded by

nagalaks.ece
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

Amazon Cloud Watch

Amazon CloudWatch provides monitoring administration services for AWS cloud resources
and applications. Users benefit from the Amazon CloudWatch tool to gather and track data
analytics, screen log records, set alerts, and respond to changes in your AWS assets.
Benefits: Amazon EC2 monitoring
AWS resource monitoring Custom metrics monitoring
Log monitoring and storage View data in visual reports React to resource changes Set alarms
Amazon CloudWatch can screen AWS assets, for example, Amazon EC2 occurrences,
Amazon DynamoDB tables and Amazon RDS DB instances and custom metrics produced by
your application and service.
Introduction to Amazon CloudWatch
Amazon CloudWatch is a service used for monitoring and observing resources in real-time,
built for DevOps engineers, developers, site reliability engineers (SREs), and IT managers.
CloudWatch provides users with data and actionable insights to monitor their respective
applications, stimulate system-wide performance changes, and optimize resource utilization.
CloudWatch collects monitoring and operational data in the form of logs, metrics, and events,
providing its users with an aggregated view of AWS resources, applications, and services that
run on AWS. The CloudWatch can also be used to detect anomalous behavior in the
environments, set warnings and alarms, visualize logs and metrics side by side, take
automated actions, and troubleshoot issues.
Amazon CloudWatch Agent
Amazon CloudWatch is an open-source lightweight tool that is used to collect the data of the
resources in which they are deployed. Some of the data is as follows
 Metrics: Amazon CloudWatch agent will record the data of CPU utilization, memory
usage, disk i/o other system-level stats.
 Logs: It will collect all the logs which are used for the further analysis
 Events: Launching of significant instances, modifications to security groups, and
other events.
What is Amazon CloudWatch?
Amazon CloudWatch is a monitoring and observability service provided by Amazon Web
Services (AWS) that enables users to collect and track metrics, monitor log files, set alarms,
and automatically react to changes in AWS resources. It helps users gain insights into the
operational health, performance, and resource utilization of their AWS infrastructure and
applications.
Why Amazon CloudWatch?
Amazon Cloud Watch is a monitoring service offered by Amazon Web Services to monitor
applications like the following.
 Performance.
 Health of the application.
 Monitors the resource use, etc.
You can set the alarm to the to the resource use of the applications when the limits are
exceeded then you will get the notification to the mail automatically.
How Amazon CloudWatch Works
At first Amazon Cloud watch will configured to the resource that you want to monitor from
there the agents that are configured will be used to collect the logs from the resources the
service may be run on-premises or AWS. CloudWatch also provides the overall view of the
resources with the help of a dashboard from where you can troubleshoot the issues.
CloudWatch also performs the operational changes depending on the changes made to the
resources they will also perform the AWS auto-scaling of the resources depending on the
changes that occurred. CloudWatch performs real-time analysis based on the logs that have
been received.
Amazon CloudWatch Features
Metrics
 It represents a time-ordered set of data points that are published to Amazon
CloudWatch.
 All data point is marked with a timestamp.
 Metric is a variable that is monitored and data points are the value of that variable
over time.
 They are uniquely defined by a name, namespace, and zero or more dimensions.
 Metric math is used to query multiple CloudWatch metrics and use math expressions
to create new time series based on these metrics
Dimensions
 A dimension is a name/value pair which uniquely identifies a metric.
 Dimensions are the unique identifiers for a metric, so whenever you add a unique
name/value pair to one of the metrics, you are creating a new variation of that metric.
Statistics
 Statistics are metric data aggregations over specified periods of time.
 The few available statistics on CloudWatch are maximum, minimum, sum, average,
and sample count.
Alarm
 It is used to automatically initiate actions on our behalf.
 It watches a single metric over a specified time period and performs one or more
specified actions based on the value of the metric.
 The estimated AWS charges can also be monitored using the alarm.
Percentiles
 It represents the relative weightage of the data in a dataset.
 It helps the user to get a better understanding of the distribution of metric data.
CloudWatch dashboard
 A user-friendly CloudWatch console is available which is used for monitoring
resources in a single view.
 There is no limit on the number of CloudWatch dashboards you can create.
 These dashboards are global and not region-specific.
CloudWatch agent
 It is required to be installed.
 It collects logs and system-level metrics from EC2 instances and on-premises servers.
CloudWatch Events
 CloudWatch events help you to create a set of rules that match with any event(i.e.
stopping of EC2 instance).
 These events can be routed to one or more targets like AWS
Lambda functions, Amazon SNS Topics, Amazon SQS queues, and other target types.
 CloudWatch Events observes the operational events continuously and whenever there
is any change in the state of the event, it performs the action by sending notifications,
activating lambda, etc.
 An event indicates a change in the AWS environment. Whenever there is a change in
the state of AWS resources, events are generated.
 Rules are used for matching events and routing to targets.
 Target process events. They include Amazon EC2 instances, AWS Lambda
functions, etc. A target receives the events in JSON format.
CloudWatch logs
 Amazon CloudWatch logs enable you to store, monitor, and access files from AWS
resources like Amazon EC2 instances, Route53, etc.
 It also helps you to troubleshoot your system errors and maintain the logs in highly
durable storage.
 It also creates log of information about the DNS queries that Route 53 receives.
Getting started with Amazon CloudWatch
Notifying gfg website management team when the instance on which gfg website is hosted
stops Whenever the CPU utilization of instance (on which GeeksForGeeks website is hosted )
goes above 80%, CloudWatch event is triggered. This CloudWatch event then activates the
SNS topic which sends the alert email to the attached gfg subscribers.
Create an SNS Topic
Step 1: Let us assume that you have already launched an instance with the name tag
‘instance’.

Step 2: Go to SNS topic dashboard and click on create a topic.

Step 3: You will be directed to this dashboard. Now specify the name and display name.

Step 4: Scroll down and click on create the topic.

Step 5: The SNS topic is created successfully.

Add Subscribers
Step 1: Go to the SNS topic dashboard and click on gfgtopic link.

Step 2: Under the subscriptions section, Click on Create subscription.

Step 3: Select Email as protocol and specify the email address of subscribers in Endpoint.
Click on create the subscription. Now Go to the mailbox of the specified email id and click
on Subscription confirmed.

Craft the CloudWatch Alarm


Step 1: Go to the CloudWatch dashboard on the AWS management console. Click on Metrics
in the left pane.

Step 2: In All metrics section click on EC2

Step 3: Click on Per-instance metrics.

Step 4: Select the instance you launched.


Step 5: Go to Graphed metrics, click on the bell icon.

Step 6: This dashboard shows the components of Amazon CloudWatch such as Namespace,
Metric Name, Statistics, etc.

Set the Threshold


Step 1: Select the greater threshold. Also, specify the amount( i.e. 80 ) of the threshold value.
Click on Next.

Connect the Dots


Step 1: Click on Select an existing SNS topic, also mention the name of the SNS topic you
created now.

Step 2: Specify the name of alarm and description which is completely optional. Click on
Next and then click on Create alarm.

Monitor your Instances using CloudWatch


Step 3: The alarm is successfully created.

Step 4: You can see the graph which notifies whenever CPU utilization goes above 80%.

Use Cases for CloudWatch


 CloudWatch can be used to monitor the performance of AWS resources, applications,
and infrastructure components in real-time
 CloudWatch allows users to set up alarms that trigger notifications or automated
actions in response to changes in the state of their resources.
 CloudWatch can be used to store, search, and analyze log data from various AWS
services, applications, and infrastructure components.
 CloudWatch can be used to monitor the performance of EC2 instances, RDS
databases, and other resources, which can then be used to trigger automatic scaling
events.
Benefits of Amazon CloudWatch
 A large amount of data is produced by web applications nowadays so amazon
CloudWatch acts as a dashboard that contains the organized collection of whole data.
 It improves the total cost of ownership by providing alarms and also takes automated
actions when there is an error in limits provided.
 Applications and resources can be optimized by examining the logs and metric data.
 Detailed Insights from the application are provided through data like CPU utilization,
capacity utilization, memory utilization, etc.
 It provides a great platform to compare and contrast the data produced by various
AWS services.
Draw Backs of Amazon CloudWatch
 Cloud Watch can be expensive, especially for large-scale monitoring and logging
needs.
 Cloud Watch may not be able to handle large amounts of log data, especially during
spikes in usage, making it difficult to maintain a consistent level of monitoring and
logging.
 The monitoring and logging processes of CloudWatch can consume significant system
resources, impacting the overall performance of an application.
 Integrating CloudWatch with other AWS services and third-party tools can be
challenging.
 Setting up and managing CloudWatch can be complex, especially for users who are
not familiar with cloud-based systems.
Challenges of CloudWatch
 Complexity in Setup: Setting up CloudWatch monitoring and configuring alarms can
be challenging, especially for users who are new to AWS. Understanding which
metrics to monitor and how to interpret them effectively requires familiarity with
AWS services and best practices.
 Limited Visibility and Granularity: CloudWatch provides metrics and logs at a high
level, which may lack the granularity needed for detailed analysis and
troubleshooting. Users may encounter difficulty in pinpointing the root cause of issues
due to limited visibility into specific system components or resources.
 Cost Management: CloudWatch costs can accumulate, particularly when monitoring
a large number of resources or enabling detailed logging and retention settings. Users
need to carefully manage and optimize their CloudWatch configurations to avoid
unexpected charges while ensuring adequate monitoring coverage.

AWS CloudTrail
An important operational tool, AWS CloudTrail helps enterprise businesses achieve
compliance and track user activity. The service offers governance, compliance, operational
and risk auditing of your account. Cloud Trail provides a comprehensive list of actions taken
throughout AWS and aligned services.
Benefits: User activity is recorded in a secure log
Compliance audits become easier with pre-stored event logs generated by the system
Find areas where your system is vulnerable and monitor or fix them
Security automation
AWS Control Tower
Manages multiple AWS accounts and teams for your AWS cloud environment. Security,
compliance, and visibility protocols extend to all accounts that are provisioned with a few
simple clicks with the AWS Control Tower tool.
Benefits: Easy provisioning and configuration of multiple AWS accounts.
Automate policy management: enforce rules, Service Control Policies (SCPs).
Gain full dashboard visibility into accounts and policies.
AWS CloudFormation
AWS CloudFormation provides a common language to provision foundational assets in your
cloud instance. Using a basic text file, CloudFormation enables you to model and provision
each asset required.
Benefits: Model your infrastructure from a single source: a text file
Standardize the infrastructure for your entire organization in a simplified way
Provisions can be automated and deployed over and over again without being rebuilt
Demystify infrastructure by treating it like what it is: code
AWS License Manager
Introduction
AWS License Manager streamlines the process of bringing software vendor licenses to the
cloud. As you build out cloud infrastructure on AWS, you can save costs by using bring-your-
own-license (BYOL) opportunities, that is, by repurposing your existing license inventory for
use with cloud resources.
License Manager reduces the risk of licensing overages and penalties with inventory tracking
that is tied directly into AWS services. With rule-based controls on the consumption of
licenses, administrators can set hard or soft limits on new and existing cloud deployments,
stopping non-compliant server usage before it happens. A reporting dashboard provides
ongoing visibility into license usage and assists with vendor audits.
License Manager helps you manage licenses for the following:
 AWS Cloud resources
 On-premises resources
 Track BYOL software obtained from the AWS Marketplace
License Manager integrates with Amazon EC2, allowing you to track licenses for the
following resources:
EC2 instances
 Dedicated Instances
 Dedicated Hosts
 Spot Instances and Spot Fleet
Systems Manager
 Systems Manager Managed Instances
Using License Manager along with AWS Systems Manager, you can manage licenses on
physical or virtual servers hosted outside of AWS.
License Manager supports tracking any software that is licensed based on virtual cores
(vCPUs), physical cores, sockets, or number of machines. This includes a variety of
software products from Microsoft, IBM, SAP, Oracle, and other vendors.
Effective software license management relies on the following:
 An expert understanding of language in enterprise licensing agreements
 Appropriately restricted access to operations that consume licenses
 Accurate tracking of license inventory
The following diagram illustrates the distinct but coordinated duties of license administrators,
who manage permissions and configure License Manager, and users, who create, manage,
and delete resources through the Amazon EC2 console.

If you are responsible for managing licenses in your organization, you can use License
Manager to set up licensing rules, attach them to your launches, and keep track of usage. The
users in your organization can then add and remove license-consuming resources without
additional work.
A licensing expert manages licenses across the entire organization, determining resource
inventory needs, supervising license procurement, and driving compliant license usage. In an
enterprise using License Manager, this work is consolidated through the License Manager
console. As shown in the diagram, this involves setting service permissions, creating rule-
based license configurations, taking inventory of computing resources both on-premises and
in the cloud, and associating license configurations with discovered resources. In practice,
this could mean associating a license configuration with an approved Amazon Machine
Image (AMI) that IT uses as a template for all Amazon EC2 instance deployments.
License Manager saves costs that would otherwise be lost to license violations. While internal
audits reveal violations only after the fact, when it is too late to avoid penalties for non-
compliance, License Manager prevents expensive incidents from ever occurring. License
Manager simplifies reporting with built-in dashboards showing license consumption and
resources tracked.
Requirements: Administrator access to an active AWS account and a laptop.
Amazon EC2 Auto Scaling

Auto Scaling is a cloud computing feature that enables an application to automatically adjust
its resources, such as servers and compute instances, based on real-time demand. The goal is
to ensure sufficient resources for performance and availability, while optimizing costs by
scaling up or down as needed.

Scaling Amazon EC2 means you start with the resources you require at the time of starting
your service and build your architecture to automatically scale in or out, in response to the
changing demand. As a result, you only pay for the resources you utilize. You don’t have to
be concerned about running out of computational power to satisfy your consumer’s demand.
Benefits of Auto Scaling
 Dynamical Scaling: AWS auto-scaling service doesn’t require any type of manual
intervention it will automatically scale the application down and up by depending up
on the incoming traffic.
 Pay For You Use: In auto scaling the resource will be utilised in the optimised way
where the demand is low the resource utilisation will be low and the demand will high
the resource utilisation will increase so the AWS is going to charge you only for the
amount of resources you really used.
 Automatic Performance Maintenance: AWS auto scaling maintains the optimal
application performance with considering the workloads it will ensures that the
application is running to desired level which will decrease the latency and also the
capacity will be increased by based on your application.
Example: Here it involves a simple web application that helps employees locate conference
rooms for virtual meetings. In this scenario, the app sees light usage at the start and end of the
week. However, as more employees book meetings midweek, the demand for the application
rises during that period. The graph below shows the usage of the application’s capacity over a
week:

You can prepare for fluctuating capacity by provisioning enough servers to handle peak
traffic, guaranteeing the application always meets demand. However, this approach often
leads to excess capacity on slower days, which raises the overall operating costs.
Alternatively, you could allocate resources based on average demand, which reduces costs by
avoiding unnecessary equipment for occasional spikes. However, this might negatively
impact user experience when demand surpasses available capacity. EC2 Auto Scaling
addresses this problem by automatically adding instances as demand increases and removing
them when no longer needed. It uses EC2 instances, allowing you to pay only for what you
actually use, resulting in a more cost-efficient architecture that reduces unnecessary expenses.
Amazon EC2 Auto Scaling
 Amazon EC2 auto-scaling will helps you to scale the resources of EC2 depending on
the demand of incoming traffic. It will maintain the high availability and optimize the
cost of AWS EC2.
 EC2 Auto Scaling is will helps to create collection of EC2 instances called an
Autoscaling group where load balancer will transfer the load to this instances. The
minimum, maximum and preferred capacity for your Auto Scaling group can then be
specified. To keep instances running at the appropriate capacit EC2 Auto Scaling will
start and stop them automatically.
 EC2 auto scaling will offers you to configure the policies where you mention the
details like at which percent of CPU utillizaion or memory usage you need to scale
the instance based on the demand. They can be scaled automatically based on the
traffic to the demand.
Auto Scaling Components
 Groups: For scaling and managing the EC2 instances are grouped together so that
they may be thought of as a single logical entity. You can mention the minimum and
maximum number of EC2 instance are required based up on the demand of the
incoming traffic.
 Configuration Templates: Configuration template or an launch template which is
used by the EC2 autoscaling group for the EC2 instance. In which you can specify the
Amazon Machine Image ID, keypair, security group and so on.
 Scaling Options: AWS Autoscaling provides number of options some of them are
mentioned as following.
o Dynamic scaling
o Predictive scaling
o Scheduled scaling
o Manual scaling

That’s the point where Amazon EC2 Autoscaling comes into the picture. You may use
Amazon EC2 Auto Scaling in order to add or delete Amazon EC2 instances with respect to
changes in your application demand. You can maintain a higher feeling of application
availability by dynamically scaling your instances in and out as needed.
Features of AWS Auto Scaling
Here are the some most important features of Aws Auto scaling
 Dynamic Scaling: Adapts to changing environments and responds with the EC2
instances as per the demand. It helps the user to follow the demand curve for the
application, which ultimately helps the maintainer/user to scale the instances ahead of
time. Target tracking scaling policies, for example, may be used to choose a loaded
statistic for your application, such as CPU use. Alternatively, you might use
Application Load Balancer’s new “Request Count Per Target” measure, which is a
load balancing option for the Elastic Load Balancing service. After that, Amazon EC2
Auto Scaling will modify the number of EC2 instances as needed to keep you on
track.
 Load Balancing: Load balancing involves distributing incoming traffic across
multiple instances to improve performance and availability. Amazon Elastic Load
Balancing (ELB) is a service that automatically distributes incoming traffic across
multiple instances in one or more Availability Zones.
 Multi-Availability Zone Deployment: Multi-Availability Zone (AZ) deployment
involves launching instances in multiple AZs to improve availability and fault
tolerance. Amazon EC2 Auto Scaling can be used to automatically launch instances in
additional AZs to maintain availability in case of an AZ outage.
 Containerization: Containerization involves using containers to package and deploy
applications, making them more portable and easier to manage. Amazon Elastic
Container Service (ECS) is a service that makes it easy to run, stop, and manage
Docker containers on a cluster of EC2 instances.
Computing power is a programmed resource in the cloud, so you may take a more flexible
approach to scale your applications. When you add Amazon EC2 Auto Scaling to an
application, you may create new instances as needed and terminate them when they’re no
longer in use. In this way, you only pay for the instances you use, when they’re in use.
Types of AWS (Amazon Web Services) Autoscaling
 Horizontal Scaling: Horizontal scaling involves adding more instances to your
application to handle increased demand. This can be done manually by launching
additional instances, or automatically using Amazon EC2 Auto Scaling, which
monitors your application’s workload and adds or removes instances based on
predefined rules.
 Vertical Scaling: Vertical scaling involves increasing the resources of existing
instances, such as CPU, memory, or storage. This can be done manually by resizing
instances, or automatically using Amazon EC2 Auto Scaling with launch
configurations that specify instance sizes based on the workload.
 Reactive Scaling: Reactive Scaling responds to changes in demand as they occur by
adding or removing instances based on predefined thresholds. This type of scaling
reacts to real-time changes, such as sudden spikes in traffic, by scaling the application
accordingly. However, it is not predictive, meaning the system adjusts only when
demand changes are detected.
 Target Tracking Scaling: Target Tracking Scaling adjusts the number of instances in
your Auto Scaling group to maintain a specific metric at a target value. For example,
you can set a target for the average CPU utilization, and Auto Scaling will
automatically add or remove instances to keep the metric at the defined level.
 Predictive Scaling: Helps you to schedule the right number of EC2 instances based
on the predicted demand. You can use both dynamic and predictive scaling
approaches together for faster scaling of the application. Predictive Scaling forecasts
future traffic and allocates the appropriate number of EC2 instances ahead of time.
Machine learning algorithms in Predictive Scaling identify changes in daily and
weekly patterns and automatically update projections. In this way, the need to
manually scale the instances on particular days is relieved.
 Scheduled Scaling: As the name suggests allows you to scale your application based
on the scheduled time you set. For example, A coffee shop owner may employ more
baristas on weekends because of the increased demand and frees them on weekdays
because of reduced demand.
Limitations of AWS EC2 Autoscaling
There are several limitations to consider when using Amazon EC2 Auto Scaling:
 Number of instances: Amazon EC2 Auto Scaling can support a maximum of 500
instances per Auto Scaling group.
 Instance health checks: Auto Scaling uses Amazon EC2 instance health checks to
determine the health of an instance. If an instance fails a health check, Auto Scaling
will terminate it and launch a new one. However, this process can take some time,
which can impact the availability of your application.
 Scaling policies: Auto Scaling allows you to set scaling policies based
on CloudWatch metrics, but these policies can be complex to configure and may not
always scale your application as expected.
 Application dependencies: If your application has dependencies on other resources
or services, such as a database or cache, it may not scale as expected if those
resources become overloaded or unavailable.
 Cost: Using Auto Scaling can increase the cost of running your application, as you
may be charged for the additional instances that are launched.
Overall, It’s important to carefully consider the limitations of Amazon EC2 Auto Scaling and
how they may impact your application when deciding whether to use this service. To know
the difference between Auto scaling and load balancing refer to Auto Scaling vs Load
Balancer.
AWS Autoscaling For EC2 (Elastic Cloud Computing)
Amazon EC2 Autoscaling provides the liberty to automatically scale the instances as per the
demand. Even if some problems are detected, the model replaces the unhealthy instances with
ones that are fully functional. To automate fleet management for EC2 instances, Amazon EC2
Auto Scaling will perform three major functions:
 Balancing the capacities across different Availability zones: If your application has
three availability zones, Amazon EC2 Autoscaling can help you balance the number
of instances across the three zones. As a result, each zone receives no more or fewer
instances than the others, resulting in a balanced distribution of traffic and burden.
 Replacing and Repairing unhealthy instances: If the instances fail to pass the
health check, Autoscaling replaces them with healthy instances. As a result, the
problem of instances crashing is reduced, and you won’t have to manually verify their
health or replace them if they’re determined to be unhealthy.
 Monitoring the health of instances: While the instances are running, Amazon EC2
Auto Scaling ensures that they are healthy and that traffic is evenly allocated among
them. It does health checks on the instances on a regular basis to see if they’re
experiencing any issues.

Use Cases of AWS (Amazon Web Services) AutoScaling


 Automatic Scaling: Application scaling can be done automatically based upon the
incoming traffic if the load is increased then the application will scale up and the load
decrease application will scale down automatically.
 Schedule Scaling: Based the data that previously available in at which particular
point of time there going to be peak point and at which time there going to be less
traffic we can schedule the auto scaling.
 Integration: You can integrate with other service in the AWS. Mainly the machine
learning which will helps to predict the incoming traffic and can scale according to
the traffic.
Configuring AWS Auto Scaling Steps
Auto Scaling is an Amazon Web Service it allows instances to scale when traffic or CPU load
increases. Auto-scaling is a service that monitors all instances that are configured into the
Auto Scaling group and ensures that loads are balanced in all instances. Depending on the
load scaling group, increase the instance according to the configuration. When we created the
auto-scaling group, we configured the Desired capacity, Minimum capacity, maximum
capacity, and CPU utilization. If CPU utilization increases by 60% in all instances, one more
instance is created, and if CPU utilization decreases by 30% in all instances, one instance is
terminated. These are totally up to us what is our requirement. If any Instance fails due to any
reason then the Scaling group maintains the Desired capacity and starts another instance.
To know how to create autoscaling refer to Create and Configure the Auto Scaling Group in
EC2.
Amazon EC2 Auto Scaling Instance Lifecycle
Every EC2 instance within an auto scaling group follows a distinct lifecycle. This lifecycle
begins when the instance is launched and concludes with its termination. Below is an
illustration of the various stages an instance goes through during its lifecycle

You might also like