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

From $11.99/month after trial. Cancel anytime.

Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure
Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure
Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure
Ebook1,062 pages5 hours

Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure

Rating: 0 out of 5 stars

()

Read preview

About this ebook

Master all the important and tough decision-making aspects involved in architecting an Azure public cloud for your organization.Key FeaturesDeploy Azure Active Directory and implement synchronization Manage storage solutions with Azure network servicesImplement Azure cloud based on organizational requirementsBook DescriptionMicrosoft Azure has numerous effective solutions that shape the future of any business. Over the years, Azure cloud services have grown quickly, and the number of organizations adopting Azure for their cloud services is also gradually increasing. Leading industry giants are finding that Azure fulfills their extensive cloud requirements.Deploying Azure Solutions starts with an extensive introduction to all the categories of designs available with Azure. These design patterns focus on different aspects of the cloud such as high availability, data management, and so on.You will learn various aspects such as building your cloud structure and architecture. You will also have a brief understanding of the different types of services provided by Azure, such as Azure functions and Azure Analytics, which can prove beneficial for an organization. You will learn each and every aspect and function required to develop an Azure cloud based on your organizational requirements.By the end of this Learning Path, you will be able to develop a full-fledged Azure cloud as well as implement Azure solutions such as networking, storage, and cloud effectively.This Learning Path includes content from the following Packt products:Implementing Azure Solutions by Florian Klaffenbach, Jan-Henrik Damaschke, Oliver MichalskiAzure for Architects by Ritesh ModiWhat you will learnImplement routing and network devicesUnderstand the working of different storage accounts in AzurePlan, deploy, and secure virtual machinesDeploy and manage Azure ContainersFamiliarize yourself with the components of the Azure Cloud platformUse enterprise security guidelines for your Azure deploymentDesign and implement Serverless solutionsUnderstand cloud architecture and the deployment pipelineWho this book is forDeploying Azure Solutions is for IT architects, system and network admins, and DevOps engineers who are aware of Azure solutions and want to implement them for their organization. Prior basic knowledge of the Azure Cloud platform is good to have.Florian Klaffenbach is currently working as Technology Solutions Professional at Microsoft. He is one of the well-known experts when it comes to hybrid cloud scenarios, cloud connectivity, and cloud environment optimization. Before he started at Microsoft, he worked at several companies in different roles, like as technical Community Manager and Solution Expert at Dell or Solutions Architect at CGI Germany. He is also one of Packt's authors and worked on books like Implementing Azure Solutions first and second edition and multi-cloud for architect. He spends his free time with his wife and little son and is currently waiting for his second son. Jan-Henrik Damaschke is an IT Consultant for Security, Network, and Infrastructure from Germany. He was MVP awarded in the categories of Enterprise Security, PowerShell, and AzureStack. PKI implementation and management is one of his core competencies as well as cloud-related security. He writes articles on security-related topics and is involved in many community events as a speaker as well as an organizer. He is passionate about sharing knowledge with others. For this purpose, he is member of the Microsoft Student Partner program and is engaged on forums and on other platforms. He was also the author on the first edition of this book Implementing Azure Solutions. Oliver Michalski started in 1999 with his IT carrier 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 Microsoft Azure. When he started in 2011 with Microsoft Azure, there was no Azure Community on
LanguageEnglish
Release dateDec 21, 2018
ISBN9781789953855
Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure

Read more from Florian Klaffenbach

Related to Deployment of Microsoft Azure Cloud Solutions

Related ebooks

Computers For You

View More

Related articles

Reviews for Deployment of Microsoft Azure Cloud Solutions

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

    Deployment of Microsoft Azure Cloud Solutions - Florian Klaffenbach

    Deployment of Microsoft Azure Cloud Solutions

    Deployment of Microsoft Azure Cloud Solutions

    A complete guide to cloud development using

    Microsoft Azure

    Florian Klaffenbach  

    Jan-Henrik Damaschke 

    Oliver Michalski

    Ritesh Modi

    BIRMINGHAM - MUMBAI

    Deployment of Microsoft Azure Cloud Solutions

    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.

    First published: December 2018

    Production reference: 1181218

    Published by Packt Publishing Ltd.

    Livery Place

    35 Livery Street

    Birmingham

    B3 2PB, UK.

    ISBN 978-1-78995-405-0

    www.packtpub.com

    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

    Packt.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.Packt.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at [email protected] 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

    Florian Klaffenbach started in 2004 with his IT carrier as 1st & 2nd Level IT Support Technician and IT Salesman Trainee for a B2B online shop. After that he changed to a small company working as IT Project Manager, planning, implementing & integration from industrial plants & laundries into enterprise IT. After spending some years, he changed his path to for Dell Germany. There he started from scratch as Enterprise technical Support Analyst and later worked on a project to start Dell technical Communities and support over social Media in Europe and outside of the U.S.

    Currently he is working as Technology Solutions Professional for Microsoft specialized on Hybrid Microsoft Cloud Infrastructure. Additionally, to his job engagement he is active as Microsoft Blogger and Lecturer. He blogs for example on his own page Datacenter-Flo.de or Brocade Germany Community. Together with a very good friend, he founded the Windows Server User Group Berlin to create network of Microsoft ITPros in Berlin.

    Florian is maintaining a very tight network to many vendors like Cisco, Dell or Microsoft and Communities. That helps him to grow his experience and to get the best out of a solution for his customers. Since 2016 he is also Co-Chairman of the Azure Community Germany. In April 2016 Microsoft awarded Florian as Microsoft Most Valuable Professional for Cloud and Datacenter Management. In 2017 after joining Microsoft, Florian became MVP reconnect member.

    Jan-Henrik Damaschke is an IT Consultant for Security, Network, and Infrastructure from Germany. He was MVP awarded in the categories of Enterprise Security, PowerShell, and AzureStack. PKI implementation and management is one of his core competencies as well as cloud-related security. He writes articles on security-related topics and is involved in many community events as a speaker as well as an organizer. He is passionate about sharing knowledge with others. For this purpose, he is member of the Microsoft Student Partner program and is engaged on forums and on other platforms. Currently, he is writing a book on Azure infrastructure solutions.

    Oliver Michalski started in 1999 with his IT career 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 Microsoft Azure. When he started in 2011 with Microsoft Azure, there was no Azure Community on the German market. Therefore, Oliver founded the Azure Community Germany (ACD). Oliver is Chairman of the Azure Community Germany, and since April 2016 he has been a Microsoft Most Valuable Professional for Microsoft Azure.

    Ritesh Modi is an ex Microsoft senior technology evangelist and Microsoft regional lead. He has worked on Ethereum and Solidity, extensively helping and advising companies. Ritesh is a regular speaker on blockchain and Solidity at conferences and local meetups. He is an architect, evangelist, speaker, and a known leader for his contributions toward blockchain, data centers, Azure Bots, cognitive services, DevOps, Artificial Intelligence, and automation. He is the author of five books.

    About the reviewers

    Sebastian Durandeu is a senior software engineer with a primary focus on building applications and services for the Cloud using Microsoft technologies. He works at Southworks, a high-end software development company that helps businesses leverage the latest technologies. There he has worked closely with several Microsoft divisions helping the developer community adopt emerging technologies using recommended practices. Sebastian currently lives in Buenos Aires, Argentina where he is an active contributor in the developer community. 

    Rafael dos Santos Christian, Geysla’s husband, Ted’s father, Entrepreneur, Developer, Cloud specialist. 10 years experience developing and architecting web based solutions.

    Paul Glavich has been an ASP.NET MVP for 13 years and currently works as a principal consultant for Readify. Previously, he was the Chief Technology Officer (CTO) for Saasu, a solution architect at Datacom, then the senior consultant for Readify, and prior to that was a technical architect for EDS Australia. He has over 20 years of industry experience ranging from PICK, C, C++, Delphi, and Visual Basic 3/4/5/6 to his current specialty in .NET with C#, ASP.NET, Azure, Cloud, and DevOps.

    Paul has been developing in .NET technologies since .NET was first in beta, and was a technical architect for one of the world's first internet banking solutions using .NET technology. Paul can be seen on various .NET-related newsgroups, has presented at the Sydney .NET user group and TechEd, and is also a member of ASPInsiders. He has also written some technical articles, which can be seen on community sites such as ASP Alliance. Paul has authored a total of three books, Beginning AJAX in ASP.NET, Beginning Microsoft ASP.NET AJAX, and the latest book on .NET Performance Testing and Optimisation. He is currently focusing on overall architecture, solution design, and Microsoft Cloud solutions. On a more personal note, Paul is married with three children, three grandkids, holds a 5thdegree black belt in Budo-Jitsu and also practices Wing Chun Kung fu.

    Vikram Pendse is a Microsoft MVP for Azure and has been a distinguished speaker at various Microsoft events over the last 10 years. He is a very active member of various Microsoft communities in India. He is a cloud solutions architect and is currently working with one of the leading Microsoft Partners in Pune, where he is responsible for building the strategy for moving Amazon AWS workloads to Azure, providing cloud-centric solutions, architecture, supporting RFPs, and global deliveries.

    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

    Title Page

    Copyright

    Deployment of Microsoft Azure Cloud Solutions

    About Packt

    Why Subscribe?

    Packt.com

    Contributors

    About the authors

    About the reviewers

    Packt is searching for authors like you

    Preface

    Who This Book Is For

    What This Book Covers

    To Get the Most out of This Book

    What You Need for This Book

    Conventions

    Get in Touch

    Reviews

    Getting Started with Azure Implementation

    Service Models

    Deployment Models

    Cloud Characteristics

    Microsoft Azure

    Azure Services Overview

    Azure Basics

    Azure Resource Manager

    Resources

    Azure Regions

    Azure Portal

    Azure Automation

    Azure Automation Tools

    REST APIs

    Summary

    Azure Resource Manager and Tools

    Understanding the Azure Resource Manager

    Functionalities Provided by the Azure Resource Manager

    Working with the Azure Resource Manager

    Creating an Azure Resource Group

    Adding a Resource to an Azure Resource Group

    First Approach: Adding a Storage Account to your Azure Resource Group

    Second Approach: Adding a Storage Account to your Azure Resource Group

    Third Approach: Adding a Storage Account to your Azure Resource Group

    Tagging in the Azure Resource Manager

    Locking Azure resources

    Azure Resource Locks

    Working with ARM Templates

    Exporting a Deployment as an ARM Template (for IT pros)

    Example 1:  Exporting a Resource Group to an ARM Template

    Example 2:  Exporting a Resource (from the Deployment History) to an ARM Template

    Example 3:  Exporting a Resource (Classic) to an ARM Template

    Modifying an ARM Template

    Authoring an ARM Template

    Creating your own ARM Template (for Developers)

    Azure Resource Explorer

    Summary

    Deploying and Synchronizing Azure Active Directory

    Azure Active Directory

    Azure Active Directory Options

    Azure AD Free

    Azure AD Basic

    Azure AD Premium P1

    Deploying a Custom Azure AD

    Adding Accounts and Groups to Azure AD

    Installing Azure AD Connect: Prerequisites

    Installing Basic Azure AD Connect Environment

    Azure AD Connect High Available Infrastructure

    Summary

    Implementing Azure Networks

    Azure Networking Limits

    Azure Networking Components

    Azure Virtual Networks (VNet)

    VNet Peering

    Azure VPN Gateways

    Azure Local Gateway

    Azure ExpressRoute

    Azure Global Points of Presence

    National Azure Points of Presence

    Azure Connections

    Azure Routes

    Azure Third-Party Network Devices

    Azure Load Balancer

    Hash-Based Distribution

    Port Forwarding

    Automatic Reconfiguration

    Service Monitoring

    Azure Application Gateways

    Azure Traffic Manager

    Azure DNS

    Setting up Azure Networks

    Setting up Azure VNet

    Setting up Azure Virtual Network Site-to-Site VPN

    Configuring Local Network Gateway

    Configuring Azure Virtual Network Gateway

    Configuring Connection Between Local and Virtual Network Gateways

    Setting up Azure Virtual Network with MPLS and ExpressRoute

    Configuring Azure Virtual Network Gateway

    Configuring Azure ExpressRoute Circuit

    Configuring Connection Between ExpressRoute Circuit and Azure Virtual Gateway

    Setting up Azure VNet Peering

    Preparing the Deployment

    Configuring VNet Peering

    Configuring Custom Routes

    Configuring Third-Party Network Appliances

    Common Azure Network Architectures

    Summary

    Implementing and Securing Azure Storage Accounts

    Storage Accounts

    General Purpose Storage Account

    Blob Storage Account

    Replication and Redundancy

    Locally Redundant Storage

    Zone-Redundant Storage

    Geo-Redundant Storage

    Read-Access Geo-Redundant Storage

    Azure Storage Services

    Blob Storage Services

    Table Storage Services

    Queue Storage Services

    File Storage Services

    Access Keys

    Exploring Azure Storage with Azure Storage Explorer

    Premium Storage Account

    Premium Storage Requirements

    Pricing

    Summary

    Planning and Deploying Virtual Machines in Azure

    Azure Virtual Machine Types

    A-series Virtual Machines

    D-series and DS-series Virtual Machines

    F-series and FS-series Virtual Machines

    G-series and GS-series Virtual Machines

    H-series Virtual Machines

    NV-series and NC-series Virtual Machines

    NV Virtual Machines

    NC Virtual Machines

    Ls-series Virtual Machines

    Virtual Machine Extensions

    Managed Disks

    Availability Sets

    Deploying a Virtual Machine in Azure

    Accessing a Virtual Machine in Azure

    Changing IP and DNS Settings

    Common Scenarios for Virtual Machines

    Optimization of Azure Related Communication Traffic

    On-demand Usage for Calculations

    Disaster Recovery for On-Premises Servers

    Summary

    Implementing Azure Cloud Services

    What is an Azure Cloud Service?

    Understanding the Cloud Service Architecture

    Roles

    The Service Endpoint

    Going Deeper into the Cloud Services

    Service Definition File

    LoadBalancerProbes

    WebRole

    WorkerRole

    NetworkTrafficRules

    Service Configuration File

    Role

    NetworkConfiguration

    Azure Cloud Services versus other Azure PaaS Offerings, such as Azure App Services

    Selection of a Guest OS and an Update Level

    Selection of an Azure Series

    Series A

    Series D

    series F

    series G

    series N

    Series H

    In a nutshell

    Creating your first Azure cloud service

    Part 1

    Part 2

    Summary

    Implementing Azure Container Service

    What is an Azure Container Service?

    Understanding Containers

    Cluster

    Orchestrator

    Mesosphere DC/OS

    Docker Swarm

    Kubernetes

    Creating your First Azure Container Service

    How to Work with Your Azure Container Service Cluster

    Summary

    Implementing Azure Security

    Azure Identity Security

    Azure Active Directory

    Azure Active Directory Editions

    Privileged Identity Management

    Identity Protection

    Detection of Vulnerabilities and Potential Risky Accounts

    Investigation of Potential Suspicious Events

    Multi-factor Authentication

    Conditional Access

    Resource Security

    Role-Based Access Control

    Resource Tags and Policies

    Azure Network Security

    Network Security Groups

    Priority

    Source

    Destination

    Network Virtual Appliances

    Azure Storage Security

    Key Management

    Shared Access Signatures

    Service-Level SAS

    Account-Level SAS

    Storage Encryption

    Storage Account Encryption

    Azure Disk Encryption

    Logging and Monitoring

    Azure Logs

    Azure Security Center

    Summary

    Azure Design Patterns

    Azure Zones and Regions

    Availability of Resources

    Data and Privacy Compliance

    Performance of Applications

    Cost of Running Applications

    Virtual Network

    Architectural Considerations for Virtual Networks

    Benefits of Virtual Networks

    Virtual Network Design

    Connecting to Resources within the Same Region and Subscription

    Connecting to Resources within the Same Region in Another Subscription

    Connecting to Resources in Different Regions in Another Subscription

    Connecting to On-Premise Data Centers

    Storage

    Storage Categories

    Storage Types

    Storage Features

    Architectural Considerations for Storage Accounts

    Design Patterns

    Messaging Patterns

    Competing Consumers

    Priority Queue

    Queue-Based Load Leveling Pattern

    Performance and Scalability patterns

    The Command and Query Responsibility Segregation (CQRS) Pattern

    Throttling Pattern

    Other Patterns

    Retry Pattern

    Circuit Breaker Pattern

    Summary

    Designing High Availability

    High Availability

    SLA

    Factors Affecting High Availability

    Planned Maintenance

    Unplanned Maintenance

    Application Deployment Architecture

    High Availability versus scalability

    High Availability versus Disaster Recovery

    Azure High Availability

    Concepts

    Availability Sets

    Fault Domain

    Update Domain

    Availability Zones

    Load Balancing

    Virtual Machine High Availability

    Computing High Availability

    Storage High Availability

    PaaS High Availability

    Application High Availability

    Load Balancing

    Azure Load Balancers

    Public Load Balancing

    Internal Load Balancing

    Port Forwarding

    Azure Application Gateways

    Azure Traffic Manager

    Architectural Considerations for High Availability

    High Availability within Azure regions

    High Availability across Azure regions

    Best Practices

    Application High Availability

    Deployment

    Data Management

    Monitoring

    Summary

    Implementing Scalability

    Scalability

    Scalability versus Performance

    Azure Scalability

    Concepts

    Scaling

    Scaling Up

    Scaling Down

    Scaling Out

    Scaling In

    Auto Scaling

    PaaS Scalability

    PaaS Scaling Up and Down

    PaaS Scaling Out and In

    IaaS Scalability

    Virtual Machine Scale Sets

    VMSS Architecture

    VMSS Scaling

    Horizontal versus Vertical Scaling

    Capacity

    Auto Scaling

    Upgrades

    Application Updates

    Guest Updates

    Image Updates

    Scaling Best Practices

    Prefer Scaling Out

    Bare Metal versus Dormant Instances

    Configuring Maximum and Minimum Number of Instances Appropriately

    Concurrency

    Stateless

    Caching and CDN

    N+1 Design

    Summary

    Designing IoT Solutions

    IoT

    IoT Architecture

    Connectivity

    Identity

    Capture

    Ingestion

    Storage

    Transform

    Analytics

    Presentation

    Azure IoT

    Identity

    Capture

    Ingestion

    Storage

    Transform and Analytics

    Presentation

    IoT Hubs

    Protocols

    Device Registration

    Message Management

    Device to Cloud Messaging

    Cloud to Device Messaging

    Security

    Security in IoT

    Scalability

    Sku Edition

    Units

    High Availability

    Summary

    Designing and Implementing Data Solutions

    Azure SQL

    Azure SQL Availability

    Azure SQL Security

    Elastic Pools

    Azure SQL Scaling Out

    Stream Analytics

    Data Sources

    Data Integration

    Data Transformation

    Stream Analytics Engine

    Storage and Presentation

    Architecture

    Azure Data Factory

    Data Sources

    Data Transformation

    Publish and Presentation

    Using Data Factory

    Azure Data Lake

    Azure Data Lake store

    Data Lake Security

    Data Lake Performance

    Azure Data Lake Analytics

    Azure SQL Data Warehouse

    Table Storage

    Summary

    Designing and Implementing Serverless Solutions

    A Short History of Serverless

    Serverless

    Principles of Serverless Technology

    Lower Cost

    Event-Driven

    Single Responsibility

    Execute Quickly

    Azure Functions or Functions-as-a-Service (FaaS)

    Azure Functions Runtime, Bindings, and Triggers

    Azure Function Runtime

    Azure Function Binding and Triggers

    Azure Function Proxies

    Monitoring

    Authentication and Authorization

    Azure Function Configuration

    Platform Configuration

    App Services Function Settings

    Azure Function Cost Plans

    Azure Functions Advantages

    Azure Functions Use Cases

    Implementing Microservices

    Integration Between Multiple Endpoints

    Data Processing

    Integrating Legacy Applications

    Scheduled Jobs

    Communication Gateways

    Types of Azure Functions

    Creating Your first Azure Function

    Creating an Event-Driven Function

    Creating a Connected Architecture with Functions

    Summary

    Designing Policies, Locks, and Tags

    Azure Tags

    Tags with PowerShell

    Tags with the ARM Template

    Resource Groups versus Resources

    Azure Policies

    Built-in Policies

    Policy Language

    Allowed Fields

    Azure Locks

    Azure RBAC

    Custom Roles

    How is it Different from RBAC?

    Examples of Implementing Azure Governance Features

    Background

    Role-Based Access Control

    Summary

    DevOps on Azure

    What is DevOps?

    DevOps Practices

    Configuration Management

    Desired State Configuration

    Chef, Puppet, and Ansible

    Azure Resource Manager Templates

    Continuous Integration

    Build Automation

    Test Automation

    Packaging

    Continuous Deployment

    Test Environment Deployment

    Test Automation

    Staging Environment Deployment

    Acceptance Tests

    Deployment to Production

    Continuous Delivery

    Continuous Learning

    Visual Studio Team Services

    Team Foundation Version Control

    GIT

    Preparing for DevOps

    Provision VSTS Account

    Provision Azure Key Vault

    Provisioning a Configuration Management Server

    Provisioning Log Analytics

    Azure Storage Account

    Images

    Monitoring Tools

    Management tools

    DevOps for PaaS Solutions

    Azure App Services

    Deployment Slots

    Azure SQL

    Build and Release Pipeline

    DevOps for Virtual Machine (IaaS) Based Solutions

    Azure Virtual Machine

    Azure Public Load Balancer

    Build Pipeline

    Release Pipeline

    DevOps for Container Based (IaaS) Solutions

    Containers

    Docker

    DockerFile

    Build Pipeline

    Release Pipeline

    Azure Automation

    Provision Azure Automation Account

    Author DSC Configuration

    Importing DSC Configuration

    Compiling DSC Configuration

    Assigning Configuration to Nodes

    Browse the Server

    Azure for DevOps

    Summary

    Other Books You May Enjoy

    Leave a Review - Let Other Readers Know What You Think

    Preface

    This learning path will guide you through all the important and tough decision-making aspects involved in architecturing a Azure public cloud for your organization. The book starts with an extensive introduction to all the categories of designs available with Azure. These design patterns focus on different aspects of cloud such as high availability, data management, and so on.

    You will move on to various aspects such as building your cloud structure and architecture. It will also include a brief description about different types of services provided by Azure, such as Azure functions and Azure Analytics, which can prove beneficial for an organization. This book will cover each and every aspect and function required to develop an Azure cloud based on your organizational requirements.

    By the end, you will be able to develop a full-fledged Azure cloud as well as implement Azure solutions such as networking, storage, and cloud effectively.

    Who This Book Is For

    This book focuses on providing essential information about the implementation of Azure solutions to software architects, developers, and IT professionals. The technical information will be offered to you in an intermediate and expert level. Basic knowledge is not necessary, but it is useful for a better understanding of the text. Therefore, some knowledge of programming languages is recommended.

    What This Book Covers

    Chapter 1, Getting Started with Azure Implementation, provides an overview of cloud service models, cloud deployment models, cloud characteristics, and Azure services.

    Chapter 2, Azure Resource Manager and Tools, explains all about the Azure Resource Manager and its concepts (Azure Resource Groups, Azure Resource Tags, and Locks). You will also get an introduction to working with the ARM Templates area.

    Chapter 3, Deploying and Synchronizing Azure Active Directory, gives you an overview of the deployment, management, and functionalities of Azure Active Directory and its relation to a Microsoft Azure subscription.

    Chapter 4, Implementing Azure Networks, explains how networking in Azure works, how to plan Azure network components, and how to deploy different network components within Azure.

    Chapter 5, Implementing and Securing Azure Storage Accounts, explains all about Azure Storage Management and its concepts (BLOBs, tables, queues, and files). You will also get some basic storage configurations.

    Chapter 6, Planning and Deploying Virtual Machines in Azure, demonstrates the difference between the Azure virtual machine types, the common use cases for the different types, and how to deploy virtual machines.

    Chapter 7, Implementing Azure Cloud Services, explains all about Azure Cloud Services, the Cloud Service architecture, Azure Cloud Services versus Azure App Services, and how to create your first Cloud Service.

    Chapter 8, Implementing Azure Container Service, provides basic knowledge about the Azure Container Service area and how to create your first container service. You will also learn the necessary steps to work with the service afterward.

    Chapter 9, Implementing Azure Security, explains all about Azure security concepts (identity management with Azure AD, Role-based Access Control (RBAC), and Azure Storage security) and the Azure Security Center.

    Chapter 10, Azure Design Patterns, talks about Azure cloud patterns related to virtual networks, storage accounts, regions, and availability sets. It also briefly discusses cloud patterns that help in implementing scalability and performance. Messaging patterns help with the building of reliable solutions. Messaging patterns will also be focused in this chapter.

    Chapter 11, Designing High Availability, focuses on describing the high availability features available on Azure. Enterprises need high availability for their deployments. This chapter will build a solid foundation on high availability concepts and help the user make informed decisions related to IaaS and PaaS deployment strategies.

    Chapter 12, Implementing Scalability, focuses on designing solutions that can automatically increase and decrease the available resources based on its current consumption to maintain its performance levels. Azure provides virtual machine scale sets (VMSS) for deploying highly scalable solutions. This chapter focuses on VMSS-based architecture and deployment. It will also describe PaaS-based scalability and its strategies.

    Chapter 13, Designing IoT Solutions, provides in-depth information about implementing an IoT solution using the Azure cloud. The Azure cloud provides a complete IoT platform for developing device-based solutions. This chapter will show how to architect IoT-based solutions using the Azure cloud. It will also describe architectural concerns that every architect should keep in mind while creating a solution. This chapter will discuss topics related to IoT hubs, event hubs, registering devices, a device to platform conversation, and logging and routing them to appropriate destinations.

    Chapter 14, Designing and Implementing Data Solutions, dedicates itself to data storage and services. Azure provides multiple features related to data services. This chapter will focus on providing insights about which features and resources to use for different types of solutions, and their pros, cons, and advantages. A complete architecture for ingesting data, cleaning and filtering data, and storing it in appropriate data stores, such as Data Lake and Cosmos DB, and then pushing data to Power BI for visualizing will be part of this chapter.

    Chapter 15, Designing and Implementing Serverless Solutions, focuses on serverless computing. Azure functions are a versatile platform for hosting small business functionalities as functions and help in weaving solutions together. This chapter will focus on understanding the serverless paradigm, Azure functions, its capabilities, creating solutions by combining multiple functions, understanding triggers and parameters, and different sources of inputs and outputs.

    Chapter 16, Designing Policies, Locks, and Tags, focuses on using the management features provided by Azure to implement better manage deployments. Tags help by adding additional metadata information to Azure resources. They also help by providing information architecture regarding Azure resources. This chapter provides design guidelines for defining tags for deployments. It also provides details about policies and locks to restrict and control Azure resources regarding their location, usage, size, accessibility, permissions, and so on. It is an important concept, providing management control over Azure resources.

    Chapter 17, DevOps on Azure, dedicates itself to DevOps. The Azure cloud provides rich tools, utilities, and scripting support to enable automation for DevOps. Azure supports Azure Resource Manager templates, desired state configuration, PowerShell, Rest API, and open source technologies such as Chef, Python, and Linux to devise end-to-end automation of continuous integration, delivery, and deployment. Infrastructure as Code and configuration management is also supported inherently using Azure features such as Azure automation. This chapter will focus on building CI/CD pipelines and configuration management for Azure resources using VSTS.

    To Get the Most out of This Book

    This book is essentially intended for cloud architects, developers, consultants, and DevOps engineers who are using Azure to provide their services to end customers and employers. If you are also willing to architect complete solutions on Azure, then this book is ideal for you. If you already have some experience with a architecture on Azure, this book can help you to speed up with it in a fast-paced way.

    What You Need for This Book

    Learning from a book only works if you have the opportunity to implement what you have learned in practice. That's why you need an Azure subscription. To do this without any cost, you can use a free Azure trial from https://azure.microsoft.com/en-us/free/. To understand parts of the book, you also need an installation of Visual Studio. You can use any edition of Visual Studio. To avoid unnecessary costs, it is recommend using the free Visual Studio Community Edition from https://visualstudio.microsoft.com/downloads/. If you think you do not possess that knowledge, it is always possible to catch up on the basic requirements by quickly reading up on the major components from the Azure documentation at https://docs.microsoft.com/en-us/azure/. 

    This book assumes a basic level of knowledge on cloud computing and Azure. All you need is a valid Azure subscription and internet connectivity to use this book. A Windows 10 operating system having 4 GB of RAM is sufficient for using Powershell and executing ARM templates.

    Conventions

    In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.

    Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: The current project consists of three artifacts in two solution folders, Templates and Scripts.

    A block of code is set as follows:

    parameters: {

        storageAccountName: {

        type: string,

        metadata: {

        description: Storage Account Name

            }

        }

    }

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

      description: Storage Account Name"

    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: "Notice how the white dress price was used to pad the missing values."

    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 [email protected] 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 [email protected].

    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 [email protected] 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.

    Getting Started with Azure Implementation

    Cloud services have come a long way in the last 5 to 10 years. Cloud was and still is one of the biggest trends in Information Technology (IT), with new topics still to be discovered.

    In the early 2000s, cloud computing wasn't a widely used phrase, but the concept as well as data centers with massive computing power were already existent and used. Later in that decade, the word cloud became a buzzword for nearly anything that was not tangible or online. But the real rise of cloud computing with all its different service models happened before, when the big IT companies started their cloud offers. That was Amazon, Google, and Microsoft in particular. As the cloud offers developed, they enabled companies from startups to Fortune 500s to use cloud services, from web services to virtual machines with billing exact to the minute.

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

    Cloud service models

    Cloud deployment models

    Cloud characteristics

    Azure services overview

    Service Models

    Cloud computing the new trend model for enabling workloads, that use resources from a a normally extreme huge resource pool, that is operated by a cloud service provider. These resources include servers, storage, network resources, applications, services or even functions. These can be rapidly deployed, operated and automated with a low effort and the prices are calculated on a minute base. This cloud model is composed of five essential characteristics, three service models, and four deployment models.

    Cloud offers are mainly categorized into the following service models:

    Infrastructure as a Service (IaaS): Infrastructure as a Service describes a model in which the cloud provider gives the consumer the possibility to create and configure resources from the computing layer upwards. This includes virtual machines, networks, appliances, and many other infrastructure-related resources:

    The most popular IaaS resources in Azure contain virtual machines, virtual networks (internal and external), container services and storage.

    Platform as a Service (PaaS): Platform as a Service gives the consumer an environment from the operating system upwards. So, the consumer is not responsible for the underlying IaaS infrastructure. Examples are operating systems, databases, or development frameworks:

    Microsoft Azure contains many PaaS resources such as SQL databases, Azure app services, or cloud services.

    Software as a Service (SaaS): Software as a Service 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 some application related management tasks.

    Examples of SaaS applications are Office 365, Visual Studio Online, Outlook website, OneDrive, and even the Amazon website itself is a SaaS app with Amazon as its own consumer.

    A comparison of service model responsibilities is as follows:

    Cloud service models

    Deployment Models

    Furthermore, there are a number of deployment models for cloud computing that need to be discussed. These deployment models cover nearly all common cloud computing provider scenarios. They describe the group of consumers that are able to use the services of the cloud service, rather than the institution or the underlying infrastructure:

    Public Cloud: A Public Cloud describes a cloud computing offer that can be accessed by the public. This includes individuals as well as companies.

    Examples of a Public Cloud are Microsoft Azure and Amazon AWS.

    Community Cloud: A Community Cloud is only accessible by a specified group. These are, for example, connected by location, an organization membership, or by reasons of compliance.

    Examples of a Community Cloud are Microsoft Azure Germany (location) or Microsoft Azure Government (organization and compliance) for US Government authorities.

    Private Cloud: Private Cloud describes an environment/infrastructure built and operated by a single organization for internal use. These offers are specifically designed for the different units in the organization.

    Examples are Microsoft Windows Azure Pack (WAP) or Microsoft Azure Stack, as well as OpenStack, if they are used for internal deployments.

    Hybrid Cloud: The Hybrid Cloud combines the Private and Public Clouds. It is defined as a Private Cloud environment at the consumer's premises as well as Public Cloud infrastructure that the consumer uses. These structures are generally connected by site-to-site VPNs or Multiprotocol Label Switching (MPLS). A Hybrid Cloud could also exist as combination of any other models such as Community and Public Clouds.

    Examples are Azure VMs connected to an on-premises infrastructure via ExpressRoute or site-to-site VPN.

    Below is a comparison between a related example, in this case between Azure (Public Cloud) and Azure Pack (Private Cloud):

    Comparison of Microsoft Azure (Stack) to Azure Pack

    With Summer 2017 Microsoft will release the new version of the private cloud adoption from Azure Resource Manager. The new version will be named Azure Stack and will sooner or later be equal to the Azure Resource Manager Framework.

    Cloud Characteristics

    Microsoft Azure is one of the biggest cloud service providers worldwide, offering a wide range of services from IaaS to PaaS to SaaS. It fulfills all the characteristics that the National Institute of Standards and Technology (NIST) describes for cloud computing. These are as follows:

    On-demand self-service: An automated deployment of resources

    Enjoying the preview?
    Page 1 of 1