Search icon CANCEL
Subscription
0
Cart icon
Cart
Close icon
You have no products in your basket yet
Save more on your purchases!
Savings automatically calculated. No voucher code required
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Implementing Azure Cloud Design Patterns
Implementing Azure Cloud Design Patterns

Implementing Azure Cloud Design Patterns: Implement efficient design patterns for data management, high availability, monitoring and other popular patterns on your Azure Cloud

By Oliver Michalski , Stefano Demiliani
€14.99 per month
Book Jan 2018 300 pages 1st Edition
eBook
€25.99
Print
€32.99
Subscription
€14.99 Monthly
eBook
€25.99
Print
€32.99
Subscription
€14.99 Monthly

What do you get with a Packt Subscription?

Free for first 7 days. $15.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Implementing Azure Cloud Design Patterns

Chapter 1. An Introduction to the Microsoft Azure Platform

Cloud computing was, and still is, one of the biggest trends in Information Technology (IT) in the last 15 years, with many new topics still to be discovered.

At the beginning of this century, most of us didn't use the phrase, cloud computing, but the concept, as well as data centers with massive computing power, was already in existence and being used. Later in that first decade, the word cloud became a synonym for nearly anything that was not tangible or online. But the real rise of cloud computing didn't start until the big IT companies (Amazon, Google, and Microsoft) started with their cloud offerings. Now, companies from start-ups to the Fortune 500 are enabled to use cloud services, virtual machines and the like, all with a billing exactly to the minute.

The focus of this book is the Azure platform, which is the cloud offering from Microsoft. In this chapter, I would like to introduce you to the platform, but not in great detail, as over 200 services and 500 updates last year alone cannot be covered in the space we have. 

In this chapter, we'll explore the following topics:

  • Cloud service models and cloud deployment models
  • Azure execution models
  • Azure data services
  • Azure application blocks
  • Azure platform services
  • How is Azure access organized?
  • How is the work with Azure organized?

Cloud service models and cloud deployment models


Before we start on the actual topic (the Azure platform), we should clarify some terms related to cloud computing. Knowing these concepts, we will then be in a position to identify individual parts of the Azure platform.

Let's start.

Cloud service models

The first term we will look at is cloud service models.

All workloads in a cloud scenario use resources from an extremely large resource pool that is operated (managed) by you or a cloud service provider. These resources include servers, storage, networks, applications, services, and much more.

The cloud service models describe to what extent your resources are managed by yourself or by your cloud service providers.

Let's look at the available service models. In the following diagram, you will find a comparison of the models and the existing management responsibilities. Areas that are colored in blue are managed by you: all others are the responsibility of your provider:

The offers are mainly categorized into the following service models:

  • On-premises: On-premises describes a model in which the user manages all resources alone.
  • Infrastructure as a Service (IaaS): IaaS describes a model in which the cloud provider gives the consumer the ability to create and configure resources from the computing layer upwards. This includes virtual machines, containers, networks, appliances, and many other infrastructure-related resources.
  • Platform as a Service (PaaS): PaaS gives the consumer an environment from the operating system upwards. So the consumer is not responsible for the underlying infrastructure.
  • Software as a Service (SaaS): SaaS is the model with the lowest levels of control and required management. A SaaS application is reachable from multiple clients and consumers, and the owning consumer doesn't have any control over the backend, except for application-related management tasks.

Cloud deployment models

The second term we will look at is cloud deployment models.

Cloud deployment models describe the way in which resources are provided in the cloud.

Which cloud deployment models are available?

Let's look at the following diagram first:

The deployment model based on the on-premises service model is called the private cloud. A private cloud is an environment/infrastructure, built and operated by a single organization, which is only for internal use.

In the context of this book, you should know that the Windows Azure Pack (a free add-on for the Windows server) gives you the opportunity to deploy Azure technologies in a private cloud environment.

The deployment model based on the IaaS and the PaaS service model is called the public cloud. A public cloud is an offer from a service provider (for example, Microsoft Azure), that can be accessed by the public. This includes individuals as well as companies.

Note

Note: When we talk about Azure in this book, it always means the public cloud model.

There is still a third deployment model available, which is the hybrid cloud. A hybrid cloud combines parts of the private and public clouds. It is defined as a private cloud environment at the consumer's site, as well as the public cloud infrastructure that the consumer uses.

In the context of this book, you should know that Azure Stack (a new offering from Microsoft) gives you the opportunity to build a hybrid cloud environment:

Azure execution models


Now we have acquired some basic knowledge about cloud computing, the question arises: Where do we go Each of these models can be used independently, but also in combination. from here?

I think that when we start talking about the Microsoft Azure platform, we should first talk about running applications in the cloud. For this, Microsoft Azure provides five deployment models (also known as Azure execution models), that are outlined in the following diagram:

The five execution models are:

  • Cloud services: Cloud services are the oldest part of the Azure platform and they have been available since its first preview (announced at the Microsoft Professional Developers Conference 2008). Cloud services are a PaaS offering from Azure and even though there are now some alternatives, they are still the leading solution. Cloud services are highly available, scalable, and multi-layered web apps hosted on a Windows Virtual Machine with an installed IIS.
  • Virtual machines (VM): This model is the IaaS offer from Azure. With VMs (based on Windows or Linux OS) you have the flexibility to realize your own workloads. In order to work with VMs as easily as possible, over 3,000 prefabricated images are available in the Azure Marketplace.
  • Batch: Azure Batch is a platform service for running large-scale parallel and highperformance computing (HPC) applications efficiently in the cloud.
  • Websites: With this model, you can quickly create and deploy your websites.
  • Mobile services: With this model, you can quickly create and host a backend for any mobile device.

Each of these models can be used independently, but also in combination.

As I mentioned earlier, there are hundreds of updates every year on the Azure platform and the Azure execution models have also been affected. The execution models' websites and mobile services are now out of date and have been replaced by the execution model, App Services (Azure App Services):

Note

Azure App Services is not just the replacement for the outdated execution models but much more.

Just look at the following diagram:

As you can see, the Azure App Services execution model currently consists of the following elements:

  • Web Apps: Web Apps is simply the new name for the Azure websites' execution model and does not really differ in its functionality from the previous component (by combining it with other app service elements, but there are extended features).
  • Mobile Apps: Mobile Apps is the new name for the Azure mobile services execution model and does not differ in its functionality from the previous component (by combining it with other app service elements, but there are more features).
  • Logic Apps: With Logic Apps, you can easily build and deploy powerful integration solutions by automating business processes or integrating your SaaS and enterprise applications. A visual designer is available for creating the necessary workflows. Logic Apps are the next evolutionary step in the Integration Services and the BizTalk services, and starting from 2018 are the only offer in this area.
  • API Apps: First of all, I must mention that the Azure API Apps are the only truly new component of this model. API Apps allows you to discover, host, manage, and market APIs and SaaS connectors in a modern, feature-rich, scalable, and globally available platform. API Apps is a complete solution for enterprise developers and system integrators, which extends the development of Web Apps (mobile applications) with numerous useful features.
  • Function Apps: This is not really a component of the Azure App Services. Azure Functions uses the Azure App Services environment only to handle the functionality.
  • Container Apps: This is not really a component of the Azure App Services. Azure Container Services uses the Azure App Services environment only to handle the functionality.
  • Microsoft PowerApps: This is not really a component of the Azure App Services. Microsoft PowerApps is a SaaS variant of the Azure App Services and uses the Azure App Services and the Azure App Services environment only to handle the functionality.

A further change to the area of Azure execution models is the addition of another model, Azure Service Fabric (also known as Azure Microservice Architecture), in 2016:

With Azure Service Fabric, you can focus on building applications and business logic, and let the Azure platform solve all other problems by analyzing reliability, scalability, management, and latency.

Note

More details about Azure Service Fabric and Azure App Services can be found in the next chapter.

Azure application building blocks


Let's return to the last diagram in the previous section. In the bottom layer, you'll find two other components of the Azure platform:

  • Azure application building blocks
  • Azure data services

Both Azure application building blocks and Azure data services, are managed services that extend the platform with so-called common capabilities (shared functionalities).

In the following diagram, you will find an overview of the Azure application building blocks. Because of the high number of individual components on offer, they are only represented in categories:

The service categories are as follows:

  • Media: With the Azure Media Services, the Azure platform provides an extensive portfolio for on-demand and live video processing, video and audio encoding, and much more.
  • Cache: The use of a cache allows you high throughput and consistent data access with low latency for fast and scalable Azure applications. The solution for the Azure platform called Azure Redis Cache is based on the popular open source Redis cache and has been realized as a fully managed service.
  • CDN: The Content Delivery Network (CDN) offers a global solution for delivering high-bandwidth content that is hosted in Azure or any other location (for example any HTTP/HTTPS location).
  • Identity: This category contains the identity services, such as the Azure Active Directory (AD), Azure AD B2C, Multi-Factor Authentication, and Azure Key Vault which is a safe place for your certificates.
  • Networking: This category contains the basic networking services. For example, Azure ExpressRoute, VNet Peering, and VPN gateways.
  • Integration: The integration services include interfaces for hybrid connections, Enterprise Application Integration (EAI) and Electronic Data Interchange (EDI) message processing, an easy-to-use administrative portal for trading partners as well as support for common EDI schemas and comprehensive EDI processing via X12 and AS2.

Note

There is an end-of-lifetime message for this area. Existing applications must be upgraded to Azure App Services, Logic Apps and/or to Azure App Services hybrid connections, by June 2018.

  • Messaging: The messaging services include all interfaces from the Azure Service Bus not included in the integration category,  for example, Azure Service Bus topics and Azure Service Bus Notification Hubs.
  • Dev Services: These are cloud-based development tools for version control, collaboration, and other development-related tasks, for example Visual Studio Team Services (VSTS) and the Azure DevTest Labs.
  • IoT: IoT services include the fundamental tools needed to work with devices used for the IoT,  for example Azure IoT Hub, IoT Edge, and Azure Event Hubs.
  • Blockchain: Blockchain is a way for businesses, industries, and organizations to make and verify transactions—streamlining business processes, and reducing the potential for fraud.

Azure data services


Azure data services are managed services that extend the platform with so-called common capabilities (shared functionalities). Because of the special importance of data in today's digital world, they were separated from the Azure application building blocks and represent a separate kind of service.

In the following diagram, you will find an overview of the Azure data services. Because of the high number of individual components on offer, these are only represented in categories:

The service categories are as follows:

  • Storage: This category includes a total of five very different services: Blob Storage (storage of unstructured data), Table Storage (NoSQL storage based on key-value pairs), Queue Storage (for message processing), File Storage, and Disk Storage (Premium Storage).
  • SQL Database as a Service: This category includes three full managed Databases as a Service: SQL Server, MySQL and PostgreSQL. This category also includes some special offers: SQL Server DWH, SQL Server Stretch DB, SQL Server Elastic DB. All special offers are further developments of the SQL Server as a Service and cover specific cloud workloads.
  • NoSQL Database as a Service: This category includes a fully managed NoSQL Database as a Service: Azure CosmosDB. A NoSQL database is used to store semi-structured data. A NoSQL database distinguishes between storing key-values, graphs, and document data. You can specify what type of storage you want to use when creating the database.
  • Big Data: This category includes, along with Azure HDInsight, a fully managed implementation of Apache Hadoop. In addition, implementations (with varying levels of development) are available for Apache Storm, Apache Spark, Apache Kafka, and the Microsoft R Server.
  • Analytics: This category includes tools to analyze and process data, such as Azure Stream Analytics, Azure Data Lake Analytics, and the Azure Data Factory.
  • AI: This category includes a fully managed service, Azure Machine Learning (Azure ML), that enables you to easily build, deploy and share predictive analytics solutions, and also includes some prefabricated solutions for immediate use (Microsoft Cognitive Services).
  • Visualization: This category is a special case because the offered service (Microsoft PowerBI) is strictly an Azure service but is only offered by Microsoft as an SaaS solution.

Azure platform services


And finally, we now come to a special component of the Azure application building blocks: the Azure platform services. Azure platform services are all services that are responsible for internal workflows on the platform itself.

Since Microsoft has an open strategy for the Azure platform, these services are usually also available to the end user.

Examples of these type of services are as follows:

  • Azure Load Balancer
  • Azure Traffic Manager and much  more

How is access to Azure organized?


In the previous sections of this chapter, we've had an overview of the Azure platform. Now let's dig a bit deeper.

The first point in our discovery journey— How is access to the Azure platform organized?

As long as we look at Azure from our personal point of view, the answer is simple—our entire world consists of an Azure account, a subscription and the direct or indirect handling of Azure resources, as shown here:

But if we look at the situation from the perspective of an enterprise, it becomes much more complicated, as shown in the next figure. The reason for this is Microsoft's attempt to delineate your company with an Azure enrollment as precisely as possible.

Let's have a look—the high-level element in the figure is now the enterprise element linked to the Enterprise Administrator's role. Here, the most comprehensive and highest rights exist. An Enterprise Administrator is allowed to do everything within the Azure enrollment.

The rights of the Enterprise Administrator include:

  • If necessary, he/she can appoint additional Enterprise Administrators
  • It defines the so-called departments and appoints corresponding department administrators
  • It can set up accounts as required

The Enterprise Administrator is also the only person who can access all consumption and cost data at every level of the Azure enrollment.

The next element is departments (linked to the Department Administrator's role)—with the creation of departments, you can subdivide your enrollment into logical units. Even if the term department suggests something different, you have given yourself flexibility in terms of how the elements are divided.

The decision on how elements are classified is actually made based on the following:

  • Functional aspects (in fact, according to the organizational structure)
  • Business interests (that is according to the project's business)
  • Geographical aspects (different locations, branch offices, and so on)

Let's go to the Department Administrators—they have the ability to create accounts within their department and, if necessary, can create a cost center (for a complete cost control).

From the next level, everything is as usual (Azure account, subscriptions, Azure resources and so on):

How is work with Azure organized?


Now we know how access to Azure is organized. The question arises— How do I work with Azure?

In general, all work is done through the Azure portal (also known as the Azure management portal).

The Azure portal is a web-based application that can be used to create, manage, and remove all types of Azure resources and services. It includes a customizable dashboard, the ability to create your own dashboards and tooling for managing or monitoring Azure resources. It also provides information for cost and usage management.

The Azure portal is located at https://portal.azure.com.

 

A big thing, but wait, there's even more. Look at the following diagram:

As you can see, there are four other ways to work with Azure, namely:

  • Azure PowerShell: Azure PowerShell is a set of modules that provides cmdlets to manage Azure. You can use the cmdlets to create, manage, and remove Azure services. In most cases, you can use the cmdlets for the same tasks that you perform in the Azure portal. The cmdlets can help you achieve consistent, repeatable, and hands-off deployments. Azure PowerShell is an open source project and available at https://github.com/Azure/azure-powershell.
  • Azure CLI: The Azure CLI is a tool that you can use to create, manage, and remove Azure resources from the command-line. The Azure CLI is an open source project and available for Linux, macOS, and Windows at https://github.com/Azure/azure-cli.
  • REST APIs: All Azure services, including the Azure management portal, provide their own REST APIs for their functionality. They can therefore be accessed by any application that RESTful services can process.
  • Client libraries: In order for software developers to write applications in the programming language of their choice, Microsoft offers wrapper classes for the REST APIs. These are available as a so-called Azure SDK for numerous programming languages (for example .NET, Java, Node.js) at https://github.com/Azure.

Summary


In this chapter, I've given you an introduction to the Azure platform. You've learned the basics about cloud services and cloud deployment models, had an overview of the Azure execution model, the Azure application building blocks, and the Azure data services, and now know how to access and work with Azure.

In the next chapter, we will start with a more detailed look  at the Azure world and you will learn all about the basic architectures behind Azure App Services, Azure Service Fabric, Azure VMs, and Azure Container Services.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

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

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

Product Details

Country selected

Publication date : Jan 29, 2018
Length 300 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781788393362
Vendor :
Microsoft
Category :

What do you get with a Packt Subscription?

Free for first 7 days. $15.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details


Publication date : Jan 29, 2018
Length 300 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781788393362
Vendor :
Microsoft
Category :

Table of Contents

16 Chapters
Title Page Chevron down icon Chevron up icon
Dedication Chevron down icon Chevron up icon
Packt Upsell Chevron down icon Chevron up icon
Contributors Chevron down icon Chevron up icon
Preface Chevron down icon Chevron up icon
1. An Introduction to the Microsoft Azure Platform Chevron down icon Chevron up icon
2. Compute Design and Management Chevron down icon Chevron up icon
3. Data Storing and Processing Chevron down icon Chevron up icon
4. Networking Design and Management Chevron down icon Chevron up icon
5. Availability Chevron down icon Chevron up icon
6. Performance and Scalability Chevron down icon Chevron up icon
7. Monitoring and Telemetry Chevron down icon Chevron up icon
8. Resiliency Chevron down icon Chevron up icon
9. Identity and Security Chevron down icon Chevron up icon
1. Other Books You May Enjoy Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Top Reviews
Rating distribution
Empty star icon Empty star icon Empty star icon Empty star icon Empty star icon 0
(0 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
Top Reviews
No reviews found
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.