Book Image

The Azure Cloud Native Architecture Mapbook

By : Stéphane Eyskens, Ed Price
Book Image

The Azure Cloud Native Architecture Mapbook

By: Stéphane Eyskens, Ed Price

Overview of this book

Azure offers a wide range of services that enable a million ways to architect your solutions. Complete with original maps and expert analysis, this book will help you to explore Azure and choose the best solutions for your unique requirements. Starting with the key aspects of architecture, this book shows you how to map different architectural perspectives and covers a variety of use cases for each architectural discipline. You'll get acquainted with the basic cloud vocabulary and learn which strategic aspects to consider for a successful cloud journey. As you advance through the chapters, you'll understand technical considerations from the perspective of a solutions architect. You'll then explore infrastructure aspects, such as network, disaster recovery, and high availability, and leverage Infrastructure as Code (IaC) through ARM templates, Bicep, and Terraform. The book also guides you through cloud design patterns, distributed architecture, and ecosystem solutions, such as Dapr, from an application architect's perspective. You'll work with both traditional (ETL and OLAP) and modern data practices (big data and advanced analytics) in the cloud and finally get to grips with cloud native security. By the end of this book, you'll have picked up best practices and more rounded knowledge of the different architectural perspectives.
Table of Contents (13 chapters)
Section 1: Solution and Infrastructure
Section 2: Application Development, Data, and Security
Section 3: Summary

Getting started with Terraform

Terraform is HashiCorp's star IaC product. They define it as a tool that can be used to provision and manage any cloud, infrastructure, or service. Terraform's architecture is based on hundreds of providers, among which is the Azure provider. The value proposal of Terraform is to propose a common way to define IaC templates, no matter the target platform. The least we can say is that HashiCorp succeeded in making a very broad and good product. In addition to the official providers, there are also dozens of community-provided providers. Terraform's most important commands are the following:

  • init: Used only when referencing a new provider or a new provider version
  • plan: An optional step for comparing the known state with the new desired state
  • apply: A command to apply the new desired state for the resources defined in the template

Templates are written in HCL (HashiCorp configuration languagehttps://www.terraform...