0% found this document useful (0 votes)
12 views13 pages

Serverless Monitoring Instana Ebook

The document is a comprehensive guide on monitoring serverless computing, highlighting its benefits and the unique challenges it presents compared to traditional application monitoring. It discusses the limitations of legacy Application Performance Monitoring (APM) tools and emphasizes the need for cloud-native APM solutions that can effectively handle the complexity and dynamism of serverless environments. The guide concludes by recommending Instana as a suitable APM platform designed for cloud-native applications, offering features such as comprehensive tracing, dependency mapping, and cloud-agnostic monitoring.

Uploaded by

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

Serverless Monitoring Instana Ebook

The document is a comprehensive guide on monitoring serverless computing, highlighting its benefits and the unique challenges it presents compared to traditional application monitoring. It discusses the limitations of legacy Application Performance Monitoring (APM) tools and emphasizes the need for cloud-native APM solutions that can effectively handle the complexity and dynamism of serverless environments. The guide concludes by recommending Instana as a suitable APM platform designed for cloud-native applications, offering features such as comprehensive tracing, dependency mapping, and cloud-agnostic monitoring.

Uploaded by

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

Monitoring

Serverless
Successfully:
A Comprehensive Guide
Monitoring Serverless Successfully: A Comprehensive Guide

Table of
Contents
P. 3
Monitoring Serverless Successfully:
A Comprehensive Guide

P. 4
Serverless monitoring challenges

P. 7
Why legacy APM is not enough for
serverless monitoring
P. 8
Selecting APM for serverless
monitoring

P. 8
Conclusion

2
Monitoring Serverless Successfully: A Comprehensive Guide

Monitoring Serverless Successfully:


A Comprehensive Guide
Since the introduction of AWS Lambda in 2014, serverless computing has grown
into one of the core building blocks of cloud-native infrastructure. By allowing
organizations to run resource-intensive application code, on-demand, in a cloud
environment, and pay only for computing when the code is actually running,
serverless functions have unlocked new opportunities for optimizing
application performance, availability and cost-efficiency.

In each respect, serverless computing delivers serverless environments, as well as the functions
critical benefits that are not available from themselves, is more difficult in some respects.

traditional physical servers or virtual machines,


With that reality in mind, this eBook offers
which incur costs constantly (even when they are
a comprehensive look at the challenges of
sitting idle) and have limited resource allocations
monitoring serverless functions, as well as tips
for handling high-intensity workloads.
and best practices for solving them. It starts
by discussing the reasons that make serverless
At the same time, the serverless paradigm has
monitoring so challenging, and explaining why
created a series of new challenges for the teams
traditional Application Performance Monitoring
tasked with monitoring and managing serverless (APM) tools come up short when applied to
functions. Because there are certain aspects of serverless workloads. It then identifies the features
serverless architectures that are fundamentally necessary to effectively monitor serverless and to
different from conventional application fully realize the performance, cost and reliability
deployment models, obtaining visibility into advantages that serverless can unlock.
Monitoring Serverless Successfully: A Comprehensive Guide

Serverless monitoring
challenges
Although the code inside a serverless function may not differ
fundamentally from that inside a traditional application, the
architecture, host environment and deployment patterns associated
with serverless functions are profoundly different. From these
differences arise a number of serious challenges when it comes to
monitoring and maintaining visibility into serverless deployments.

Vendor-specific serverless services

A conventional application When it comes to serverless, however, inconsistent if you add on-prem serverless
operates in the same workload cross-compatibility breaks down. frameworks, such as OpenFaaS, into the mix.
essential manner Although all cloud-based serverless services
regardless of where it is
deliver the same basic features, each one is For these reasons, attempting to monitor
hosted. An NGINX Web
configured in unique, vendor-specific ways. serverless functions at the level of the service
server or WordPress
AWS Lambda does not support all of the same itself leads to an approach that is not portable,
instance hosted on AWS
EC2 virtual server programming languages as Azure Functions and that is dependent on the particular
works – and, by extension, and Google Cloud Functions, for example. Each configuration provided by a certain vendor. For
can be monitored – in the serverless service also comes with different teams wary of lock-in and the inefficiency of
same way as it would if it environment configurations, which for the having to build a new monitoring process from
were hosted on the Azure most part cannot be modified by end-users. scratch whenever they migrate to a different
Virtual Machines service. Configurations become even more diverse and serverless platform, this is a serious limitation.

4
Monitoring Serverless Successfully: A Comprehensive Guide

Serverless functions come in many Serverless is one piece of larger


languages deployments

Similarly, serverless functions can be written It is rare to deploy a workload that is composed
in a variety of different languages. And, as solely of serverless functions. In many cases,
noted above, some serverless services support serverless functions comprise one part of a
different languages than others. In some cases, larger application. For example, most of the
serverless platforms require functions written components of a Web application might be
in one language to be “wrapped” in another in hosted using traditional virtual machines and
order to execute them, adding another layer of databases, while serverless functions are used
complexity. to handle certain resource-intensive processes
(such as resizing images or performing optical
What all of this means for monitoring is that character recognition), on-demand.
there is no easy or consistent way to monitor
serverless functions by hooking into specific For this reason, effectively monitoring
programming languages. serverless requires not only an understanding
of what is happening within functions
Conventional APM methods such as themselves, but also mapping that data to
language-specific tracing and metrics the performance of the larger application.
collection are of limited use for gaining Monitoring tools must be able to interpret
visibility into serverless performance and the complex relationships and dependencies
availability. between each serverless function and the
various non-serverless microservices that
power the rest of the workload.

5
Monitoring Serverless Successfully: A Comprehensive Guide

Lack of control over serverless Highly dynamic Too many functions


environments functions

Serverless is so-called because it eliminates Serverless functions are The final challenge in
the need for the teams who deploy serverless often deployed as part monitoring serverless
functions to set up or manage the servers that of continuous delivery functions is the sheer number
host them. The provider of the serverless server pipelines. Updates are rolled of functions that serverless
delivers a prebuilt, preconfigured environment out on an ongoing basis, workloads entail. Although
in which end-users can quickly deploy and meaning that new versions there is no minimum number
execute functions. This is one of the features of functions are frequently of functions required to use a
that makes serverless so valuable. deployed. serverless service, teams that
leverage serverless computing
From the perspective of monitoring, however, Static approaches to serverless often deploy a dozen or more
end-users’ inability to access or modify the host monitoring can’t keep up with functions at the same time.
environment represents a significant challenge. this rapid change. If monitoring They introduce new functions
It means they cannot modify the way that the tools must be manually and retire old ones on an
servers hosting their serverless functions log mapped to a specific serverless ongoing basis.
data or other metrics. Most serverless services function deployment, they
do provide facilities for forwarding log data to must be reconfigured manually Monitoring functions
other cloud services (such as AWS CloudWatch whenever the functions are on this scale, using
in the case of Lambda), but there is little or no updated. This dependency conventional, manual
ability for teams to customize the way that means that monitoring can approaches, is very
data is generated or structured. Nor can they get in the way of continuous difficult. It requires
deploy monitoring agents on host servers in delivery – or, worse, that tremendous effort and time
a conventional way to collect and aggregate new versions of serverless commitment on the part
metrics. functions are not properly of admins, and undercuts
monitored because the tools the ability of teams to
used to monitor them aren’t continue scaling up their
yet configured for the new deployments.
deployment.
6
Monitoring Serverless Successfully: A Comprehensive Guide

Why legacy APM is not enough


for serverless monitoring
A variety of legacy APM tools – meaning those designed before the advent
of the cloud-native era – may support serverless monitoring to some
extent. However, they come up short in several respects.

For one, they typically lack the ability to Ultimately, legacy APM solutions were
map and interpret the complex application designed for fundamentally different types of
architectures, of which serverless functions infrastructure. If they can work with serverless
are a part. Legacy APM tools were designed for functions at all, it is because facilities for
monitoring monoliths, and they are ill-equipped monitoring serverless under certain conditions
to understand inter-service dependencies or were grafted onto tools that were originally
distinguish normal activity from anomalies within created for different purposes. They simply lack
highly dynamic environments. cloud-native monitoring functionality.

Legacy APM tools are also usually vendor-specific


when it comes to serverless monitoring. They may
support the monitoring of serverless functions
on certain cloud services, like Lambda and
perhaps Azure Functions. But they cannot monitor
serverless functions in a vendor-agnostic way,
and they are not portable from one
cloud to another.
Monitoring Serverless Successfully: A Comprehensive Guide

Selecting APM for serverless


monitoring
Although legacy APM solutions are inadequate for serverless
monitoring, cloud-native APM tools offer the features required to
handle the complexity, dynamism and scale of serverless computing
services. Following is a summary of the key functionalities required
in an APM solution to monitor serverless effectively.

Comprehensive tracing and analytics

To monitor serverless functions effectively, collected from the application as a whole,


There are two foundations
APM tools must be able to not just perform as well as on collections of traces. It’s only
to effective monitoring
both of these features on individual parts of through comprehensive tracing and analytics
in cloud-native
the application, but also to perform them that APM tools can provide visibility into all
environments: Tracing and
comprehensively – meaning, across the entire layers of a complex application and give teams
analytics.
application. multiple vantage points for gaining the insight
they need to address performance, availability
In other words, APM solutions require the ability or cost-optimization issues.
to trace and analyze individual application
requests across every component of the
application, including serverless functions and
other services. At the same time, they must be
able to perform analytics on aggregate metrics

8
Monitoring Serverless Successfully: A Comprehensive Guide

Dependency mapping Auto-discovery


Because serverless functions If monitoring instrumentation
depend on each other, as has to be configured manually
well as other application each time a new serverless
components that are external function is deployed, or a new
to the serverless environment, version of an existing function
being able to map and interpret is released, it is virtually
dependencies is critical. impossible for monitoring tools
APM tools that are designed to keep pace with continuous
only to monitor each part of delivery chains, at scale.
the application individually, For that reason, serverless
without understanding how APM tools should be able to
relationships between each discover new deployments
part form a larger whole, are and updates automatically,
insufficient. then begin monitoring them
without manual intervention
Instead, performance by human engineers.
and cost optimization
in a serverless workload
requires the ability to
determine how a problem
with one serverless
function impacts other
functions or services within
the application.

9
Monitoring Serverless Successfully: A Comprehensive Guide

Cloud-agnostic Real-time and


serverless monitoring historical visualization

As explained above, serverless Finally, successful serverless


monitoring tools that work monitoring requires the ability
only with certain cloud to visualize analytics and traces
services lack portability. They clearly. Visualization is critical
depend on specific services for enabling monitoring teams
or configurations in order to make sense of and act on
to monitor functions at the monitoring data. Without
environment level. rich visualizations, teams are
hard-pressed to interpret the
A more flexible and portable complex, rapidly-changing
approach is to choose an metrics generated by serverless
APM tool that can monitor functions and the applications
functions regardless of of which they are a part.
which serverless service
hosts them. This requires In order to be most effective,
the ability to perform APM tools should provide
tracing and analytics within visualization both for real-
functions themselves, time and historical data. Real-
rather than hooking into the time visualizations give teams
host environment. visibility into the application
as it currently exists, while
historical visualizations enable
them to research and issue or
gain crucial historical context
when troubleshooting a
problem.

10
Monitoring Serverless Successfully: A Comprehensive Guide

Conclusion
Serverless monitoring requires a fundamentally different set
of strategies and tooling than monitoring for conventional
applications. Without an APM solution that can handle the
unique challenges of serverless computing, organizations risk
performance and availability problems that bloat their costs and
undercut the value of adopting serverless in the first place.

Legacy APM tools are not designed to handle the complexity of serverless environments, or to keep
pace with the continuous delivery chains of which serverless functions are a part. But Instana, an
APM platform designed from the start for the cloud-native age, does.

Using data analytics and machine learning, Instana maps the complex dependencies that link
serverless functions to each other and to the rest of the application. It performs comprehensive
tracing and analytics, and offers rich visualizations to help teams understand both real-time and
historical data. And it works in a cloud-agnostic way, allowing teams to monitor their serverless
workloads across a range of serverless services. We invite you to sign up for a free Instana trial.
Monitoring Serverless Successfully: A Comprehensive Guide

About Try It For


Instana Yourself
Instana provides the only APM Don‘t just take our word
solution that automatically for it. Try Instana‘s Automatic
discovers services, deploys Monitoring for yourself.
agents and monitors component You can be monitoring
health for microservice and your applications in just
containerized applications. a few minutes.
Built to handle the demands of agile
organizations, Instana continuously aligns
application maps with any changes, detects Start Your Trial Today
behavioral anomalies and automatically
provides a health score for each technology
component.Organizations benefit from real-
time impact analysis, improved quality of
service, and optimized workflows that keep
applications healthy.

The solution notifies DevOps teams when


service quality is at risk, providing precise
information identifying the triggering event
and potential root cause.
www.in s tan a.co m

You might also like