Deployment of Microsoft Azure Cloud Solutions: A complete guide to cloud development using Microsoft Azure
()
About this ebook
Read more from Florian Klaffenbach
Implementing Azure Solutions Rating: 0 out of 5 stars0 ratingsImplementing Azure: Putting Modern DevOps to Use: Transform your software deployment process with Microsoft Azure Rating: 0 out of 5 stars0 ratingsImplementing Azure Solutions: Deploy and manage Azure containers and build Azure solutions with ease, 2nd Edition Rating: 0 out of 5 stars0 ratings
Related to Deployment of Microsoft Azure Cloud Solutions
Related ebooks
Implementing Azure Solutions: Eliminate the pain point of implementation Rating: 0 out of 5 stars0 ratingsMigrating Applications to the Cloud with Azure: Re-architect and rebuild your applications using cloud-native technologies Rating: 0 out of 5 stars0 ratingsMicroservices with Azure Rating: 0 out of 5 stars0 ratingsServerless Integration Design Patterns with Azure: Build powerful cloud solutions that sustain next-generation products Rating: 0 out of 5 stars0 ratingsMicrosoft Azure Security Rating: 0 out of 5 stars0 ratingsMastering Cloud Development using Microsoft Azure Rating: 0 out of 5 stars0 ratingsDynamics 365 Business Central Development Quick Start Guide: Modern development techniques for Dynamics 365 Business Central Rating: 0 out of 5 stars0 ratingsHands-On Cloud Solutions with Azure: Architecting, developing, and deploying the Azure way Rating: 0 out of 5 stars0 ratingsSolutions Architect's Handbook: Kick-start your solutions architect career by learning architecture design principles and strategies Rating: 0 out of 5 stars0 ratingsAzure Serverless Computing Cookbook Rating: 0 out of 5 stars0 ratingsLearning Windows Server Containers Rating: 0 out of 5 stars0 ratingsSoftware Architecture for Busy Developers: Talk and act like a software architect in one weekend Rating: 0 out of 5 stars0 ratingsMastering Azure Virtual Desktop: The ultimate guide to the implementation and management of Azure Virtual Desktop Rating: 0 out of 5 stars0 ratingsLearning NServiceBus Sagas Rating: 0 out of 5 stars0 ratingsHands-On Machine Learning with Azure: Build powerful models with cognitive machine learning and artificial intelligence Rating: 0 out of 5 stars0 ratingsExtending Microsoft Dynamics 365 for Operations Cookbook Rating: 5 out of 5 stars5/5Cloud Analytics with Google Cloud Platform: An end-to-end guide to processing and analyzing big data using Google Cloud Platform Rating: 0 out of 5 stars0 ratingsMulti-Cloud Architecture and Governance: Leverage Azure, AWS, GCP, and VMware vSphere to build effective multi-cloud solutions Rating: 0 out of 5 stars0 ratingsAccelerate DevOps with GitHub: Enhance software delivery performance with GitHub Issues, Projects, Actions, and Advanced Security Rating: 0 out of 5 stars0 ratingsLearning System Center App Controller Rating: 0 out of 5 stars0 ratingsMicrosoft Exchange Server 2016 PowerShell Cookbook - Fourth Edition Rating: 0 out of 5 stars0 ratingsBlockchain across Oracle: Understand the details and implications of the Blockchain for Oracle developers and customers Rating: 0 out of 5 stars0 ratingsLearning ASP.NET Core 2.0: Build modern web apps with ASP.NET Core 2.0, MVC, and EF Core 2 Rating: 0 out of 5 stars0 ratings
Computers For You
The Invisible Rainbow: A History of Electricity and Life Rating: 5 out of 5 stars5/5CompTIA Security+ Get Certified Get Ahead: SY0-701 Study Guide Rating: 5 out of 5 stars5/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5Mastering ChatGPT: 21 Prompts Templates for Effortless Writing Rating: 4 out of 5 stars4/5Standard Deviations: Flawed Assumptions, Tortured Data, and Other Ways to Lie with Statistics Rating: 4 out of 5 stars4/5How to Create Cpn Numbers the Right way: A Step by Step Guide to Creating cpn Numbers Legally Rating: 4 out of 5 stars4/5Procreate for Beginners: Introduction to Procreate for Drawing and Illustrating on the iPad Rating: 5 out of 5 stars5/5Elon Musk Rating: 4 out of 5 stars4/5The Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution Rating: 4 out of 5 stars4/5Alan Turing: The Enigma: The Book That Inspired the Film The Imitation Game - Updated Edition Rating: 4 out of 5 stars4/5An Ultimate Guide to Kali Linux for Beginners Rating: 3 out of 5 stars3/5The Hacker Crackdown: Law and Disorder on the Electronic Frontier Rating: 4 out of 5 stars4/5Deep Search: How to Explore the Internet More Effectively Rating: 5 out of 5 stars5/5CompTIA IT Fundamentals (ITF+) Study Guide: Exam FC0-U61 Rating: 0 out of 5 stars0 ratingsThe ChatGPT Millionaire Handbook: Make Money Online With the Power of AI Technology Rating: 4 out of 5 stars4/5Tor and the Dark Art of Anonymity Rating: 5 out of 5 stars5/5Slenderman: Online Obsession, Mental Illness, and the Violent Crime of Two Midwestern Girls Rating: 4 out of 5 stars4/5101 Awesome Builds: Minecraft® Secrets from the World's Greatest Crafters Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are Rating: 4 out of 5 stars4/5Creating Online Courses with ChatGPT | A Step-by-Step Guide with Prompt Templates Rating: 4 out of 5 stars4/5People Skills for Analytical Thinkers Rating: 5 out of 5 stars5/5The Best Hacking Tricks for Beginners Rating: 4 out of 5 stars4/5Discord For Dummies Rating: 0 out of 5 stars0 ratingsI Forced a Bot to Write This Book: A.I. Meets B.S. Rating: 4 out of 5 stars4/5Uncanny Valley: A Memoir Rating: 4 out of 5 stars4/5Excel 101: A Beginner's & Intermediate's Guide for Mastering the Quintessence of Microsoft Excel (2010-2019 & 365) in no time! Rating: 0 out of 5 stars0 ratings
Reviews for Deployment of Microsoft Azure Cloud Solutions
0 ratings0 reviews
Book preview
Deployment of Microsoft Azure Cloud Solutions - Florian Klaffenbach
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