Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Discover millions of ebooks, audiobooks, and so much more with a free trial

From $11.99/month after trial. Cancel anytime.

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

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

Rating: 0 out of 5 stars

()

Read preview

About this ebook

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.

LanguageEnglish
Release dateJan 29, 2018
ISBN9781788396639
Implementing Azure Cloud Design Patterns: Implement efficient design patterns for data management, high availability, monitoring and other popular patterns on your Azure Cloud

Read more from Oliver Michalski

Related to Implementing Azure Cloud Design Patterns

Related ebooks

Networking For You

View More

Related articles

Reviews for Implementing Azure Cloud Design Patterns

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Implementing Azure Cloud Design Patterns - Oliver Michalski

    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

    Oliver Michalski

    Stefano Demiliani

    BIRMINGHAM - MUMBAI

    Implementing Azure Cloud Design Patterns

    Copyright © 2018 Packt Publishing

    All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

    Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.

    Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

    Commissioning Editor: Gebin George

    Acquisition Editor: Heramb Bhavsar

    Content Development Editor: Nithin Varghese

    Technical Editor: Komal Karne

    Copy Editor: Safis Editing

    Project Coordinator: Virginia Dias

    Proofreader: Safis Editing

    Indexer: Francy Puthiry

    Graphics: Tom Scaria

    Production Coordinator: Melwyn Dsa

    First published: January 2018

    Production reference: 1250118

    Published by Packt Publishing Ltd.

    Livery Place

    35 Livery Street

    Birmingham

    B3 2PB, UK.

    ISBN 978-1-78839-336-2

    www.packtpub.com

    I would like to dedicate this book to my little daughter, Sara: I love you! maybe one day you will be proud of me for this!

    – Stefano Demiliani

    mapt.io

    Mapt is an online digital library that gives you full access to over 5,000 books and videos, as well as industry leading tools to help you plan your personal development and advance your career. For more information, please visit our website.

    Why subscribe?

    Spend less time learning and more time coding with practical eBooks and Videos from over 4,000 industry professionals

    Improve your learning with Skill Plans built especially for you

    Get a free eBook or video every month

    Mapt is fully searchable

    Copy and paste, print, and bookmark content

    PacktPub.com

    Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at service@packtpub.com for more details.

    At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters, and receive exclusive discounts and offers on Packt books and eBooks.

    Contributors

    About the authors

    Oliver Michalski started his IT career in 1999 as a web developer. Now, he is a senior software engineer for Microsoft .NET and an SOA architect. He also works as an independent enterprise consultant in the field of Microsoft Azure. When he started with Microsoft Azure in 2011, there was no Azure community in Germany. Therefore, Oliver founded Azure Community Germany (ACD).

    Oliver has been the chairman of the ACD, since April 2016, and since July 2017 he has been a Microsoft Most Valuable Professional for Microsoft Azure.

    Stefano Demiliani is a Microsoft Certified Solution Developer (MCSD) and a long-time expert on different Microsoft technologies. He has a master's degree in computer engineering from Politecnico of Turin. He works as a CTO for EID/Navlab (Microsoft partner in Italy) and he's frequently involved on helping customers on moving their business to the Azure cloud.

    He has worked with Packt for many IT books and he's the author of Building ERP solutions with Microsoft Dynamics NAV, a hands-on guide to building enterprise architectures based on the Microsoft Dynamics NAV ERP and the Azure platform.

    This book is a dream that has come true (the cloud is my passion and writing a book about Azure is for me a reached target). Thanks to all the wonderful staff that has worked with me over these months, and thanks also to my family (I'll return to you all the hours spent working on this book).

    About the reviewer

    Florian Klaffenbach started his IT career in 2004 as first- and second-level IT support technician and IT salesman trainee for a B2B online shop. Since then, he has taken several steps from IT admin, to support agent, to community manager, and cloud architect at Dell and CGI, and then ended up as a technology solutions professional for Microsoft in 2017. In April 2016, he was awarded the Microsoft Most Valuable Professional, honoring his work for the IT community.

    I want to thank the team at Packt for giving me the chance to review the book, as well as my little family for letting me invest the time I had into these projects.

    Packt is searching for authors like you

    If you're interested in becoming an author for Packt, please visit authors.packtpub.com and apply today. We have worked with thousands of developers and tech professionals, just like you, to help them share their insight with the global tech community. You can make a general application, apply for a specific hot topic that we are recruiting an author for, or submit your own idea.

    Table of Contents

    Preface

    Who this book is for

    What this book covers

    To get the most out of this book

    Download the example code files

    Download the color images

    Conventions used

    Get in touch

    Reviews

    An Introduction to the Microsoft Azure Platform

    Cloud service models and cloud deployment models

    Cloud service models

    Cloud deployment models

    Azure execution models

    Azure application building blocks

    Azure data services

    Azure platform services

    How is access to Azure organized?

    How is work with Azure organized?

    Summary

    Compute Design and Management

    IaaS I (Azure VMs)

    What is an Azure series?

    Single VMs

    Multiple VMs

    Azure availability sets

    N-tier deployment

    N-tier (multi-regions) deployment

    IaaS II (Azure Container Services)

    What is an Azure Container Service?

    Understanding containers

    Cluster

    Orchestrator

    Which Orchestrator should I choose?

    Mesosphere DC/OS

    Docker Swarm

    Kubernetes

    PaaS I (Azure App Services)

    PaaS II (Azure Service Fabric, also known as Azure microservices)

    Summary

    Data Storing and Processing

    Choosing the right data solution

    What is variety?

    What is volume?

    Concurrency and consistency

    Replication and redundancy

    Other factors

    Which Azure data services are available?

    Management

    Azure Data Catalog

    Processing

    Azure Data Factory

    Azure Stream Analytics

    Azure Time Series Insights

    Storage

    Azure Storage Blob service

    Azure Storage Blob service premium

    Azure Storage Queue service

    Azure Storage Table service

    Azure Files

    SQL as a service

    Azure SQL Database

    SQL Server Stretch Database

    Azure PostgreSQL

    Azure MySQL

    Other offers

    NoSQL as a service

    Azure CosmosDB

    Big data

    Azure HDInsight

    Azure Data Lake Store

    Azure Data Lake Analytics

    Analytics

    Cortana Intelligence Suite

    AI

    Azure Machine Learning

    Cognitive Services

    Bot Framework

    Virtualization

    PowerBI

    PowerBI Embedded

    Azure Time Series Insights

    Summary

    Networking Design and Management

    Anatomy of a VNet infrastructure

    Connectivity

    Internet connectivity

    Connectivity between Azure resources (internal connectivity)

    Azure VNet peering

    Azure global VNet peering

    Azure VNet-to-VNet (VPN gateway)

    On-premises connectivity

    Azure Site-to-Site

    Azure Point-to-Site

    Azure ExpressRoute

    Azure VNet service endpoints

    Important note

    Routing, load balancing, or more general traffic directions

    Routing

    User-defined routes

    Routing using the BGP

    Azure Load Balancer

    Azure Traffic Manager

    Azure Application Gateway

    Security

    NSG

    Application security groups

    Security infrastructure

    NVA

    Management and monitoring

    Summary

    Availability

    What is availability?

    First approach

    Second approach

    Uptime and downtime

    SLA

    Planned maintenance

    What are the effects?

    Azure autoscaling

    Summary

    Performance and Scalability

    What is performance?

    What is a DTU?

    Service level objectives

    Analyzing and interpreting performance data

    What are our business workloads?

    Why is knowledge about existing business workloads important to us?

    What are we still missing?

    Scaling

    What can you see?

    What is different here?

    Where can I use autoscaling?

    Summary

    Monitoring and Telemetry

    About telemetry data

    What is a metric?

    Client metrics

    How do I collect the data from client metrics?

    What data is collected?

    Business metrics

    How do I collect the data from business metrics?

    What is a profiler?

    What data is collected?

    Application metrics

    How do I collect the data from application metrics?

    What data is collected?

    System metrics

    How do I collect the data from system metrics?

    What data is collected?

    Service metrics

    How do I collect the data from service metrics?

    What data is collected?

    An overview of monitoring

    Azure management portal

    System specific tools

    Microsoft SC

    Microsoft OMS

    How do I start my work with the OMS?

    Azure Monitor

    Which capabilities can be seen here?

    Which data (metric) is available?

    Azure Application Insights

    What data is captured by Azure Application Insights?

    Grafana

    How do I start my work with Grafana?

    Azure Log Analytics

    If Azure Log Analytics is part of OMS, why do I need to talk about it again?

    Azure Network Watcher

    Summary

    Resiliency

    What is Resiliency?

    Architecture design patterns for Resiliency

    Retry pattern with transient failures

    Load balancing

    Data replication

    Circuit Breaker pattern

    Throttling pattern

    Queue-Based Load Leveling pattern

    Compensating Transaction pattern

    Summary

    Identity and Security

    Security in the cloud

    Azure network security

    SSO and MFA

    Azure MFA setup

    Federation and the Federated Identity Pattern

    Gatekeeper pattern

    Valet Key pattern

    Summary

    Other Books You May Enjoy

    Leave a review - let other readers know what you think

    Preface

    A well-designed cloud infrastructure covers factors such as consistency, maintenance, simplified administration and development, security, scalability, 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 needed to help you build your cloud infrastructure to fit your system requirements. Each of these patterns describes a problem that you normally could have when implementing a cloud infrastructure—a recommended solution for your problem (pattern appliance) and pros and cons of applying this pattern.

    Using a pattern (or at least thinking about it) is a recommended way of working when designing an enterprise cloud-based infrastructure.

    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.

    What this book covers

    Chapter 1, An Introduction to the Microsoft Azure Platform, gives an overview of the Azure platform. Also, we will learn the basics of cloud services and cloud deployment models,  the Azure execution model, the Azure application building blocks, the Azure data services, and how to access and work with Azure.

    Chapter 2, Compute Design and Management, discusses the basic architectures behind the compute services from the Azure platform, such as Azure VMs, Azure Container Services, Azure App Services, and Azure Service Fabric. We will also learn that services never act alone, but rather interact with various Azure resources.

    Chapter 3, Data Storing and Processing, gives basic information on data storage and processing. Here we will get an answer to the question: How do you choose the right data solution? We will also see an overview of the Azure data services that are available.

    Chapter 4, Networking Design and Management, takes you through the anatomy of a VNet, and the network elements also deep dives into connectivity, routing, and more.

    Chapter 5, Availability, starts with an insight into specific aspects of architecture that are important for the daily use of the Azure platform and are part of the design process for your own Azure solutions.

    Chapter 6, Performance and Scalability, provides an answer to all your questions related to these topics and also part of the design process for your own Azure solutions.

    Chapter 7, Monitoring and Telemetry, covers these topics in two parts. In part one, we discuss the question of what type of data we are actually talking about. In part two, we discuss the possible ways to capture this data.

    Chapter 8, Resiliency, describes the recommended patterns to implement in order to create a cloud-based solution that can handle and recover from failures in a secure way without compromising data and transactions.

    Chapter 9, Identity and Security, describes the recommended patterns for implementing identity and security features on Azure (for users and for applications and cloud services).

    To get the most out of this book

    Activate a free Azure subscription (30 days with all the Azure features available to test). Practice with the samples described in the book.

    Download the example code files

    You can download the example code files for this book from your account at www.packtpub.com. If you purchased this book elsewhere, you can visit www.packtpub.com/support and register to have the files emailed directly to you.

    You can download the code files by following these steps:

    Log in or register at www.packtpub.com.

    Select the SUPPORT tab.

    Click on Code Downloads & Errata.

    Enter the name of the book in the Search box and follow the onscreen instructions.

    Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

    WinRAR/7-Zip for Windows

    Zipeg/iZip/UnRarX for Mac

    7-Zip/PeaZip for Linux

    The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Implementing-Azure-Cloud-Design-Patterns. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

    Download the color images

    We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here: https://www.packtpub.com/sites/default/files/downloads/ImplementingAzureCloudDesignPatterns_ColorImages.pdf.

    Conventions used

    There are a number of text conventions used throughout this book.

    CodeInText: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: Mount the downloaded WebStorm-10*.dmg disk image file as another disk in your system.

    A block of code is set as follows:

    public interface IOrderRepository

        {

            List Read();

            void Write(Order order);

        }

    When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

    public interface IOrderRepository

        {

    List Read();

            void Write(Order order);

        }

    Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: Now select the Queues option and add a new queue

    Warnings or important notes appear like this.

    Tips and tricks appear like this.

    Get in touch

    Feedback from our readers is always welcome.

    General feedback: Email feedback@packtpub.com and mention the book title in the subject of your message. If you have questions about any aspect of this book, please email us at questions@packtpub.com.

    Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details.

    Piracy: If you come across any illegal copies of our works in any form on the Internet, we would be grateful if you would provide us with the location address or website name. Please contact us at copyright@packtpub.com with a link to the material.

    If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.

    Reviews

    Please leave a review. Once you have read and used this book, why not leave a review on the site that you purchased it from? Potential readers can then see and use your unbiased opinion to make purchase decisions, we at Packt can understand what you think about our products, and our authors can see your feedback on their book. Thank you!

    For more information about Packt, please visit packtpub.com.

    An Introduction to the Microsoft Azure Platform

    Cloud computing was, and still is, one

    Enjoying the preview?
    Page 1 of 1