Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
The Azure Cloud Native Architecture Mapbook

You're reading from  The Azure Cloud Native Architecture Mapbook

Product type Book
Published in Feb 2021
Publisher Packt
ISBN-13 9781800562325
Pages 376 pages
Edition 1st Edition
Languages
Authors (2):
Stéphane Eyskens Stéphane Eyskens
Profile icon Stéphane Eyskens
Ed Price Ed Price
Profile icon Ed Price
View More author details

Table of Contents (13) Chapters

Preface 1. Section 1: Solution and Infrastructure
2. Chapter 1: Getting Started as an Azure Architect 3. Chapter 2: Solution Architecture 4. Chapter 3: Infrastructure Design 5. Chapter 4: Infrastructure Deployment 6. Section 2: Application Development, Data, and Security
7. Chapter 5: Application Architecture 8. Chapter 6: Data Architecture 9. Chapter 7: Security Architecture 10. Section 3: Summary
11. Chapter 8: Summary and Industry Scenarios 12. Other Books You May Enjoy

Preface

Have you ever visited a large city on your own? Sometimes you get lost, and sometimes you lose time. However, you can make your trip more valuable by taking an expert-guided tour. That's what this book is: an expert-guided tour of Azure. Our different maps will be your compass to sail the broad Azure landscape. The Microsoft cloud platform offers a wide range of services, providing a million ways to architect your solutions. This book uses original maps and expert analysis to help you explore Azure and choose the best solutions for your unique requirements. Beyond maps, the book is inspired by real-world situations and challenges. We will share typical and cross-industry concerns to help you become a better Azure architect. Our real-world-inspired architecture diagrams and use cases should put you in a better position to tackle your own challenges. Although an architecture role may be high-level, we also wanted to dive deeper into some topics and make you work harder on some use cases. In this respect, you will have some hands-on work to do too. However, our primary objective is to make you stronger in the various architecture disciplines that are scoped to Azure and that every Azure architect should be comfortable with.

Who this book is for

This book is intended for aspiring and confirmed Azure architects. This book is broad and encompasses multiple architecture disciplines and concepts, so you should ideally have a broad skillset to enjoy the book. Nevertheless, IT engineers and developers will also ramp up their knowledge and find value in this book.

What this book covers

Chapter 1, Getting Started as an Azure Architect, starts by sharing a view of the different architecture disciplines. We define the roles and responsibilities of the various architects (enterprise, solution, infrastructure, data, and security). The rationale of going through these definitions lies in the fact that, from our experience, we have noticed some knowledge gaps in what the different stakeholders are doing. This often leads to turf wars, which can be avoided simply by understanding the broader picture. We then introduce our maps, and we help you understand how to properly conduct a cloud strategy and what the key aspects are that will make your cloud journey successful. In a nutshell, we give you a glimpse into what it feels like to be an Azure architect who has to deal with all these different disciplines, and who sometimes must report to top management on strategic aspects.

Chapter 2, Solution Architecture, covers key aspects to consider when building a cloud solution. A solution architect is responsible for the end-to-end aspects of a solution, from its development to its monitoring. A solution architect knows what Agile methodologies are, as well as what ITIL, TOGAF, and COBIT are. They are the cornerstone of a solution, its main pillar. The primary role of a solution architect is to assemble all the building blocks to make a consistent and coherent design, as well as to talk to various stakeholders. Their stakeholders are other, more specialized architects, developers, and IT engineers, as well as enterprise architects and management. This chapter remains high-level from a technical perspective because we will still envision Azure as a whole. We share the solution architecture map, which encompasses many Azure services, and we explore multiple dimensions around the non-functional requirements. We also zoom in on Azure's container platform offering, which has been booming and expanding greatly over the last few years. Lastly, we will walk you through a concrete use case and a glimpse into what comes next, including a deeper dive into the technical and technological aspects.

Chapter 3, Infrastructure Design, delves deeper into technical matters. We will review the typical infrastructure topologies and we will zoom into infrastructure-specific concerns such as networking, monitoring, backup and restore, high availability, and disaster recovery (for which we'll see a sample use case). Because containerization has become mainstream, we will also dive into Azure Kubernetes Services (AKS) and unveil a dedicated AKS architecture map. You will learn that AKS is not really a service like the others, and we will walk you through a reference architecture to host a service mesh (for microservices) in AKS.

Chapter 4, Infrastructure Deployment, is almost entirely hands-on! You will learn about the different Infrastructure as Code (IaC) tools and frameworks. You will provision some Azure services using Azure Resource Manager templates, Bicep, and Terraform. Nevertheless, we won't forget our architecture glasses, so we will also look at the machinery of a Continuous Integration and Continuous Delivery/Deployment (CI/CD) factory.

Chapter 5, Application Architecture, looks at what the development architecture would look like for building an app on the Microsoft cloud. You may ask 10 different people what cloud-native means, and you might receive 10 different answers. So, we will start by explaining what we mean when we refer to the cloud and cloud-native solutions. Next, we will review some modern design patterns, such as CQRS, Event Sourcing, and so on. In the process, we will map them to the Azure services to help you identify how to bundle the services together in order to build solutions based on these patterns. Lastly, we will go through a microservices use case, using Dapr (Distributed Application Runtime), which is a very recent and promising framework for developing distributed applications. Throughout this chapter, our motto will be to not reinvent the wheel. Instead, leverage the ecosystem to design and build your solutions.

Chapter 6, Data Architecture, explores how data is processed and stored. Data is the new gold, and Azure contains many gold mines! In this chapter, we will consider traditional and modern data practices in opposition to each other, and see how to use both in Azure. We will also explore big data and artificial intelligence and analytics. At last, our hands-on use case is based on a data-streaming scenario. We are going to build a real-time dashboard, which consolidates aggregates of metrics from a fake speed detector (which we have developed for you). A separate real-time tile will show all the vehicles that should receive a fine (for breaking the law).

Chapter 7, Security Architecture, emphasizes and explains the importance of security in the cloud. Security is everywhere, and it's even more important with the cloud. This tends to awaken age-old fears and trepidations. This topic certainly deserves an entire book, so (to avoid writing a second book) we decided to be very pragmatic and to focus on the essential parts only. We start by giving you a glimpse into cloud-native security, to see beyond the technology and what the required mindset is. We will then explain why there is a paradigm shift in identity with the public cloud, by simply … proving it! Lastly, we will focus on the most recurrent security services and topics in Azure, which you must absolutely master as an Azure architect. Throughout the chapter, our motto will be to not simply stack network layers. Instead, think further and modernize your security practices.

Chapter 8, Summary and Industry Scenarios, revisits the topics covered in the book and consolidates our key ideas from each previous chapter. In other words, we'll identify what the most important aspects to remember are. In addition, we'll look at several key industry verticals through the lens of the previous chapters, to guide you through some existing architectures that you can continue exploring after you complete the book. We'll finish with some notes on the unique key values of this book, and a brief summary.

To get the most out of this book

To enjoy the book and practice our hands-on exercises, you will of course need an Azure subscription, and for the bravest readers (those who are implementing our use cases), you'll also need Docker, Visual Studio 2019, and/or Visual Studio Code. All our code samples are built in .NET Core. From a higher-level perspective, you'll be able to quickly grasp the concepts in this book if you're already an architect or a senior developer/IT pro. Don't worry if you need to use Google from time to time (to look up names and terms); it's perfectly normal, as we explore the main architectural dimensions. (We do explain all the basic concepts, but to keep the content focused for senior developers, senior IT pros, and new architects, the book is written with a certain expectation of technical knowledge.)

If you are using the digital version of this book, we advise you to type the code yourself or access the code via the GitHub repository (the link is available in the next section). Doing so will help you avoid any potential errors related to the copying and pasting of code.

Download the example code files

You can download the maps, diagrams, and sample code for this book from GitHub at https://github.com/PacktPublishing/The-Azure-Cloud-Native-Architecture-Mapbook. In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Code in Action

Code in Action videos for this book can be viewed at http://bit.ly/3pp9vIH.

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://static.packt-cdn.com/downloads/9781800562325_ColorImages.pdf.

Conventions used

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

Code in text: 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: "Locate and open the appsettings.json file, in the netcoreapp3.1 folder."

A block of code is set as follows:

public class DataObject{
    private string[] sensorNames = new string[] { "Brussels",         "Genval" };
    public string sensorName { get; private set; }
    public double speed { get; private set; }
    public string plateNumber { get; private set; }
    public DataObject()

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 class DataObject{
    private string[] sensorNames = new string[] {         "Brussels", "Genval" };
    public string sensorName { get; private set; }
    public double speed { get; private set; }
    public string plateNumber { get; private set; }
    public DataObject()

Any command-line input or output is written as follows:

$ az storage account list

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: "Choose the Custom Streaming data tile type."

Tips or important notes

Appear like this.

Get in touch

Feedback from our readers is always welcome.

General feedback: If you have questions about any aspect of this book, mention the book title in the subject of your message and email us at customercare@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/support/errata, select your book, click the Errata Submission Form link, and enter 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@packt.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 packt.com.

lock icon The rest of the chapter is locked
Next Chapter arrow right
You have been reading a chapter from
The Azure Cloud Native Architecture Mapbook
Published in: Feb 2021 Publisher: Packt ISBN-13: 9781800562325
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime}