Implementing Azure Cloud Design Patterns
eBook - ePub

Implementing Azure Cloud Design Patterns

Oliver Michalski, Stefano Demiliani

Share book
  1. 300 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Implementing Azure Cloud Design Patterns

Oliver Michalski, Stefano Demiliani

Book details
Book preview
Table of contents
Citations

About This Book

A hands-on guide to mastering Azure cloud design patterns and best practices.

Key Features

  • Master architectural design patterns in Azure.
  • Get hands-on with implementing design patterns.
  • Implement best practices for improving efficiency and security

Book Description

A well designed cloud infrastructure covers factors such as consistency, maintenance, simplified administration and development, and reusability. Hence it is important to choose the right architectural pattern as it has a huge impact on the quality of cloud-hosted services. This book covers all Azure design patterns and functionalities to help you build your cloud infrastructure so it fits your system requirements.

This book initially covers design patterns that are focused on factors such as availability and data management/monitoring. Then the focus shifts to complex design patterns such as multitasking, improving scalability, valet keys, and so on, with practical use cases. The book also supplies best practices to improve the security and performance of your cloud.

By the end of this book, you will thoroughly be familiar with the different design and architectural patterns available with Windows Azure and capable of choosing the best pattern for your system.

What you will learn

  • Learn to organize Azure access
  • Design the core areas of the Azure Execution Model
  • Work with storage and data management
  • Create a health endpoint monitoring pattern
  • Automate early detection of anomalies
  • Identify and secure Azure features

Who this book is for

This book is targeted at cloud architects and cloud solution providers who are looking for an extensive guide to implementing different patterns for the deployment and maintenance of services in Microsoft Azure. Prior experience with Azure is required as the book is completely focused on design patterns.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Implementing Azure Cloud Design Patterns an online PDF/ePUB?
Yes, you can access Implementing Azure Cloud Design Patterns by Oliver Michalski, Stefano Demiliani in PDF and/or ePUB format, as well as other popular books in Informatik & Cloud Computing. We have over one million books available in our catalogue for you to explore.

Information

Year
2018
ISBN
9781788396639
Edition
1

Monitoring and Telemetry

In the last two chapters, I've tried to extend our current perspective on Azure to specific architectural aspects. These aspects affect our day-to-day work and therefore, the design process for our own Azure solutions.
So far, the focus has been on availability, performance, and scalability. All three themes have one thing in common. They only work with telemetry data and sophisticated monitoring solutions.
In order to fully deal with the topic, we will focus on monitoring and telemetry in this chapter.
This chapter is divided into two parts. In part one, we discuss the question of what type of data we are actually talking about. Then, in part two, I will introduce you to the possible solutions for capturing this data.
We will explore the following topics in detail in this chapter:
  • Telemetry data
  • An overview of monitoring
  • Azure management portal
  • System specific tools
  • Microsoft System Center
  • Microsoft Operations Management Suite (OMS)
  • Azure Monitor
  • Azure Application Insights
  • Grafana
  • Azure Log Analytics
  • Azure Network Watcher

About telemetry data

Let's start with the question: What is telemetry data? The term telemetry, refers to the transmission of measured values from a sensor to a spatially separated location.
At this receiving point, the measured values are either only recorded and collected, or transferred directly to an evaluation process.
The acquisition of telemetry data is often supplemented by a path of action to the detecting sensor, so as to be able to respond to the delivered measured values with suitable actions. This return path is called remote control.
Let's move on to the area of monitoring. Here, we could also talk about a telemetry process. For example, a network device can assume the role of a sensor and constantly transmit data about the state of the connection, latency, and much more.
Although we can speak of telemetry, I would like to introduce a second term that is more common when using monitoring solutions: metrics.

What is a metric?

A metric is a collection of telemetry data that is visualized within the monitoring solution and provided in a monitoring dashboard.
In the area of metrics, we know two types and, according to the level of abstraction, five classifications.
Types of metrics are:
  • Pre-defined or common metrics
  • Custom metrics
What is the difference between these two types? While common metrics come in the context of general infrastructure elements (for example, to measure the CPU usage), custom metrics cover all user-defined measurement points.
Classifications of metrics are:
  • Client metrics: Client metrics are concerned with measuring the perception of the end user, for example, how long does it take for a client application to process and render results? Other areas covered by client metrics are the responsiveness of local and remote operations, the memory footprint, and the CPU usage.
  • Business metrics: Business metrics provide a viewpoint to the logical operations (all end user activities) that define the business process. In terms of best practice, business metrics should cover all business transactions that the system performs.
  • Application metrics: Application metrics include all measurements of the activity and performance of the application layer (that is, the application code, all application frameworks, and runtime execution environments used by the application). The purpose of these metrics is to help you synchronize the flow through the application with a potentially large number of concurrent user requests, analyze the resources that are consumed, and evaluate the likelihood and causes of performance issues.
  • System metrics: System metrics capture information about the performance of the underlying infrastructure. These metrics are typically focused on Key Performance Indicators (KPIs) associated with memory occupancy, network utilization, disk activity, and CPU use.
  • Service metrics: Service metrics cover the performance of dependent services, such as Azure Storage, messaging, cache, database, and any other external services your application may use. However, these types of metrics do not measure the performance of these services themselves, but capture information about the performance of the queries your system sends to them.
Let's look again at the classifications in detail.

Client metrics

Let's start with the general definition: client metrics give you an insight into the use of the system by an end user. All metrics at this level typically depend on how responsive the UI is, and how many client-side resources the application consumes.
Many modern user interfaces are browser or device based. In these situations, the primary measured values are those that are related to page views, page load time, JavaScript code, the browser or device types' geographical location, and session traces.

How do I collect the data from client metrics?

The common solution is to include JavaScript code in client-side code that records the necessary information. This code can then capture metrics such as page load times, session data (the life cycle of an interaction that can span multiple web pages and operations), JavaScript and other client-side code exceptions, or AJAX time information.
The JavaScript code sends this data to a service that collects and retrieves and inspects this information.
Azure Applicatio...

Table of contents