Skip to main content

Azure

logo

https://azure.microsoft.com/

Without too much fuss, Azure is Microsoft's Cloud. I learned cloud using AWS, so I didn't feel very comfortable when I arrived at the Azure dashboard and saw the service nomenclatures were completely different. So I decided to create some documentation to become familiar with the resource names and how to manage them.

If you know AWS, that's great, but sometimes your employer wants to work on Azure because they got more attractive prices. In theory, AWS has many more types of SaaS than Azure, but in the end, most of what we need is also available on Azure. I say this because every day there's a new thing on AWS that nobody uses!

The Azure portal works with the ARM (Azure Resource Manager) concept. This is one of the biggest differences from AWS.

  • Every resource needs to belong to an ARM.
  • Based on JSON templates, allowing you to manage infrastructure through declarative models.
  • Enables deploying, managing, and monitoring all solution resources as a group rather than handling these resources individually.
  • We can define dependencies between resources so they are deployed correctly. This enables the use of Terraform.

Once the resource group containing the resources for your app is a single deployment unit, it also becomes a single management unit. This allows us to group all the resources we're going to create for something and manage them centrally. This is an advantage over AWS. We can destroy an entire resource group (pool) without forgetting anything behind.

Main Resources​

Resources we work with most.

  1. Compute

    • Azure Virtual Machines (VMs): Virtual machines that can run Windows or Linux operating systems.
    • Azure App Service: PaaS service for hosting web applications, APIs, and mobile applications with support for multiple programming languages like .NET, Java, Node.js, Python, etc.
    • Azure Kubernetes Service (AKS): Managed Kubernetes service that simplifies the deployment, management, and operations of Kubernetes clusters.
    • Azure Functions: Serverless compute service that allows you to run code snippets in response to events without the need to manage servers.
  2. Storage

    • Azure Blob Storage: Scalable object storage service, optimized for storing large amounts of unstructured data, such as image files, videos, and logs.
    • Azure Files: Offers fully managed file shares in the cloud, accessible via SMB or NFS protocol.
    • Azure Disk Storage: Managed disks for VMs, offering high availability and performance with different storage tiers (Standard, Premium).
  3. Networking

    • Azure Virtual Network (VNet): Enables the creation of private virtual networks that can be segmented into subnets, connected to on-premises networks via VPN, and configured with firewall rules.
    • Azure Load Balancer: Automatically distributes incoming network traffic across multiple service instances to ensure high availability.
    • Azure Application Gateway: A layer 7 (HTTP/HTTPS) load balancer that includes web application firewall (WAF) features.
  4. Database

    • Azure SQL Database: Managed database service for SQL Server in the cloud, offering scalability, high availability, and support for transactional operations.
    • Azure Cosmos DB: Globally distributed NoSQL database that supports multiple data models and guarantees low latency and high availability.
    • Azure Database for MySQL/PostgreSQL: Managed services for MySQL and PostgreSQL databases, with automatic backup, scalability, and high availability features.
  5. DevOps

    • Azure DevOps: Set of tools for software development lifecycle management, including Git repositories, continuous integration, continuous delivery, and CI/CD pipeline management.
    • Azure Pipelines: Service that allows you to create and manage CI/CD pipelines to automate application building, testing, and deployment.
  6. Security and Identity

    • Azure Active Directory (AAD): Identity and access management service that provides authentication and authorization for applications, APIs, and users.
    • Azure Security Center: Unified security hub that provides threat protection for workloads running on Azure, hybrid datacenters, and even in other clouds.
  7. Management and Governance

    • Azure Monitor: Monitoring tool that collects, analyzes, and acts on log data and metrics from your applications and infrastructure in Azure.
    • Azure Policy: Service that allows the creation, assignment, and management of governance and compliance policies in your Azure environment.

Main Specialized Resources​

Resources intended for specific areas but good to know about.

  1. AI and Machine Learning

    • Azure Cognitive Services: Set of APIs and AI services that enable the inclusion of functionalities like speech recognition, computer vision, natural language processing, and intelligent search in applications.
    • Azure Machine Learning: Service that offers tools to build, train, and deploy machine learning models at scale.
  2. Analytics and Big Data

    • Azure Synapse Analytics: Integrated analytics service that combines data warehousing with big data analytics, enabling SQL and Spark queries at large scale.
    • Azure HDInsight: Managed service for running big data workloads like Hadoop, Spark, Hive, HBase, and Storm.
    • Azure Data Lake Storage: Storage service for big data, enabling data capture and analysis in any format and scale.