All you need to know to take AZ-900
Tags: azure, cloud, tutorial, beginners
Published: 2024-06-10 14:02:18

### Here you'll find a summary and bullet points about exactly what you need to know to take Microsoft Certified: Azure Fundamentals (AZ-900).

&nbsp;
:bulb: To facilitate your study, all categories are splitted into topics so you can read and try to memorize the key words. 
&nbsp;

:warning: This article isn't small! The purpose is to elevate your study to a high level. It's a study guide for you. :warning:

####I hope you enjoy it. Have a good journey!:blush:
---

## 1. **Cloud Computing**

### 1.1.<u>Cloud Models</u>

* Public Cloud:

    - It belongs to a Hosting Provider (Azure, AWS, Oracle...);
    - CapEx. 

* Private Cloud:

    - On Premises/Local Data Center;
    - Organization is responsible to hardware's management and maintenance.

* Hybrid Cloud:

    - Mix between Public&Private.

&nbsp;

### 1.2. <u>Benefits of Cloud Computing</u>

* High Availability;
* Scalability (Vertical and Horizontal);
* Governance;
* Elasticity;
* Reliability;
* Security;
* Manageability.

&nbsp;

### 1.3. <u>Services Types</u>

* IaaS (Infrastructure as a Service): 

    - You don't need to worry about hardware; 
    - This type of service is the most flexible than the others;
    - Ex.: VNet, VMs, Storages, Servers... 

* PaaS (Platform as a Service): 

    - It's focus on application developments;
    - Platform Management provider's responsability;
    - Ex.: Azure App Service, Managed Store, Azure SQL, Front Door... 

* SaaS (Software as a Service):

    - Pay as you Go; 
    - You can use it through the internet, you just need to configure the environment to your usage; 
    - Ex.: Microsoft 365, E-mail, Windows Desktop... 
  
&nbsp;

### 1.4. <u>Investment Options</u>

* CAPEX (Capital Expenditure):

    - It's a one-time expense to buy or to protect resources like a Data Center construction.

* OPEX (Operating Expenditure):

    - It's a investment based on services and products that are used over the time.

* Consumption Based Model: 

    - Pay as you go.

---

&nbsp;

## 2. **Azure Architectural Components**

### 2.1.<u>Regions</u>

- It's made of one or more too closely Data Centers;
    - Each Data Center is called "Availability Zone", a.k.a "AZ"; 
    - Each Region is made of one or more AZs.
- They supply flexibility and scalability to reduce latency to the client;
- Azure has 60+ regions around the world;
- Each Region has it's own <u>Region Pair</u>; 
    - There're automatic replica from one Region to it's Region Pair.
* <u>Sovereign Region</u>: 

    - Regions are dedicated only to government services; 
    - They aren't acessible; 
    - EUA, China (21 ViaNet).

&nbsp;

### 2.2.<u>Availability Zone</u>
- There's a minimium of 3 AZs in each region. 

&nbsp;

---

## 3. **Resources**

### 3.1.<u>Resource Group</u>

- It's a logical agroupment; 
- For good practices, should allocate project resources into the same resource group; 
- Resources can be moved to differents resource groups. 

&nbsp;

### 3.2.<u>Subscriptions</u>

- Provides authenticated and authorizated access to Azure accounts and resources; 
- It's important to have Costs Alerts and Budgets Alerts in each Subscription;
- It inhrerits the conditions applied to Management Group.

&nbsp;

### 3.3.<u>Management Group</u>

- Manage Azure Account directly. 


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/64dpp04yv78tet1lhcbx.png)
(source: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-setup-guide/media/organize-resources/scope-levels.png)

&nbsp;

---

## 4. **Compute Services**

### 4.1.<u>Virtual Machine (VM - IaaS) </u>

- It's analogue to a Server. A single physical machine has been divided into slices and you can to rent a single slice of it; 
- Even if the VM is turned off, billing will be still charged. Billings won't be charged only if you delete the machine;
    - If you have a public IP assigned to your VM, when you delete it, don't forget to delete public IP too. Otherwise, you'll continue being charged. 
- <u>Must belong at least to 1 subnet using a Network Interface Card (NIC) - some VMs have 1 or more NIC and can connect to 1 or more subnet;</u>
- Can be assigned to a public IP which can be accessed from outside Azure.

&nbsp;
* <u>Standalone Server:</u> You don't share any resources/services. 
* <u>Virtualization:</u> Some resources/services are shared with other VMs.

&nbsp;

Microsoft provides over 700 images (CPU, RAM, IOPS...) os types to choose. 

&nbsp;

### 4.1.2.<u>VM Scaling Sets (VMSS)</u>

- <u>Scale Up</u>: To increase the size of a VM;
- <u>Scale Out</u>: Add more VMs and have them working together (it's the most common scenario);

&nbsp;

- <u>Scale Sets</u>: Group of VM that can grow and shrink based on a predefined rule (base on monitoring demand, time/schedule...);
    - A Scale Sets fills the elasticity requirement of cloud compute; 
    - Usually can handle over 100 VMs per Single Set, but you can configure to increase that to 1000 VMs per Single Set;
    - To deploy a VMSS you have to provision at least 2 VMs running the exact same code;
    - Can manage groups of VMs as one unit;
        - With a Load Balancer in front of it to direct traffic randomly to one of VMs.

&nbsp;

- <u>Availability Set</u>: Availability Sets allow you to tell Azure which virtual machines are identical, so that Azure will keep them apart physically inside the datacenter. This helps when there are either expected or unexpected downtime, by increasing the chances that one issue does not affect all VMs in a single Availability Set.

### 4.2.<u>App Services (Web Apps - PaaS)</u>

- Upload your code and configure it into Azure;
- You can download the software that you want, but only what is supported by Microsoft; 
- You can access servers through FTP to get your files; 
- You can do A/B tests using deployments slots.

&nbsp;

### 4.3.<u>Azure Container Instance (ACI)</u>

- Quickest way to create and to deploy a container on Azure;
- Isn't easily scalable;
- Single Instance.

&nbsp;

### 4.4.<u>Azure Container Apps</u>

- It's easy to use like a web service; 
- Has advanced features.

&nbsp;

### 4.5.<u>Azure Kuberenetes Services (AKS)</u>

- It runs on VMSS and has auto-scaling; 
- Enterprise grade. 

&nbsp;

### 4.6.<u>Azure Virtual Desktop</u>

- Windows desktop version that runs in the cloud; 
- Login with ID/Password on console and have your software installed available anywhere;
- Works on iOS, Android and any browser. 

&nbsp;

### 4.7.<u>Azure Functions (Serverless)</u>

- Small pieces of code that run entirely in the cloud; 
- Does something specific in a finite time; 
- Is triggered by something happening (Http call, timer, message queue...);
- Cheap; 
- Has free tier (1MM executions/month);
- Can support more complicated designs like durable functions, long running functions; 
- Has premium or dedicated hosting options. 

---

## 5. **Network Services**

### 5.1.<u>Virtual Networking (VNets - IaaS)</u>

- Are assigned to an address space of either iPv4 or iPv6 (both);
- <u>Private Address</u>: cannot be accessed from outside Azure or other networks inside Azure;
- A single VNet is usually assigned a large quantity address space to support future growth; 
- Allows VMs to talk to each other and to the Internet as long as it follows the rules that were defined previously;
- If you want to make 2 VNets seeing each other, you have to Peering their subnets. 

&nbsp;

### 5.2.<u>Subnets</u>

- All VNets are subdivided into one or more subnets and it's assigned a range of IP addressess which must exist in the address space of the VNet; 
- There is a security layer between subnets.

&nbsp;

### 5.3.<u>Network Security Group (NSG)</u>

- An access control list (ACL) that blocks traffic inbound/outbound from a subnet, unless it matches a rule(s); 
    - Rules can be based on source IP, source Port, destination IP/Port, Protocol (5-TUPLE-MATCH)...

&nbsp;

### 5.4.<u>Application Security Group (ASG)</u>

- Group all related resources together to facilitate to create rules in NSG.

&nbsp;

### 5.5.<u>VNet Peering</u>

- Connects 2 Subnets together;
- Allows communication between a VM on one VNet and another VM on a different VNet; 
    - Cannot have address IP that are conflicting. 

&nbsp;

### 5.6.<u>Azure DNS (Domain Name System)</u>

- Only applies internally to Azure; 
- Hosting domain resolution in Azure.

&nbsp;

### 5.7.<u>Azure VPN Gateway (Virtual Private Network - IaaS)</u>

- Allows communication between a workstation and a network; or between 2 networks;
    - Encrypts traffic between those two points;
    - Work from home: Point to Site (P2S).
- It works through the public internet;
- Less Expensive than Express Route.

&nbsp;

### 5.8.<u>VPN Peering</u>

- Connect 2 distant networks using "Site to Site VPN" (S2S);
- Those networks are private.

&nbsp;

### 5.9.<u>Express Route</u>

- Communicates into Azure with High Speeds; 
- Private Connection from Internet Services Provider (ISP) to an Azure endpoint; 
- Private Connection from Azure to On Prem;
- Traffic never travels to the public internet; 
    - Traffic can be encrypted. 
- More expensive than Azure VPN Gateway;
    - In unusual places around the globe, like Amazônia, Express Route isn't used as there isn't cabling there. Instead of it, "Azure VPN Gateway" is used.

---

## 6. **Storage Services - IaaS**

- First, you have to create an storage than you can create the specific type of it, like Blob, disk, queue, file...
- Storages name must be unique globally (Azure).

### 6.1.<u>Redundancy Options</u>

* Locally Redundant Storage (LRS):

    - 3 copies, one zone.

* Zone-Redundant Storage (ZRS): 
   - 3 copies, 3 zones, 3 DCs (one copy in each zone/DC).

* Geo-Redundant Storage (GRS):
    - LRS + LRS (into another region). Six copys, 2 DCs, 2 regions. 

* Geo-Zone-Redundant Storage (GZRS):
    - ZRS + LRS (into another region). Six copys, 3 DCs, 3 AZs, 2 regions.

&nbsp;

### 6.2.<u>Azure Storage GPv2 (General Purpose)</u>

- Standard Storage; 
- Subdivided into 4 types of data:
    - Container;
    - File;
    - Queue;
    - Table.
- Hold up to 5PB;
- Cost: U$0,20/GB per month;
- It isn't recommended for high demand workloads;
- When you create a GPv2 you can transform it into a Data Lake.

&nbsp;

### 6.3.<u>Azure Data Lake</u>

- Good for big data;
- Can hold PB and Exabytes;
- Extremely large storage;
- https://<storage-account-name>.dfs.core.windows.net

&nbsp;

### 6.4.<u>Premium Storage Options</u>

- For high performance requirements;
- Can only hold Blobs, not queue or tables;
    - You can choose the type for blobs or for files.
- Uses premium SSD;
- 3x OPs and less latency; 
- More expensive than GPv2.

&nbsp;

### 6.5.<u>High performance</u>

- Premium SSD;
- Premium SSD v2; 
- Ultra Disk.

&nbsp;

### 6.6.<u>Blob Storage (Binary Large Object)</u>

- Files of any type (txt, pdf, zip, csv...);
- Can be public or private;
- Unstructured data;
- <u>For Redundancy</u>: Azure keeps 3 copies of your data by default;
- <u>Global Redundancy</u>: Azure will keep 6 copies of your data. 3 are locally and 3 in another region of the same geo;
- https://<storage-account-name>.blob.core.windows.net

&nbsp;

### 6.7.<u>Azure File</u>

- Hierarchical structure with folders;
- You can mount this storage to a server and use a drive letter for it:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/13s7utaupf5zi00f5unx.png) 

- Supports Windows, Linux, MacOS, SMB, NFS (Linux);
- You can use Azure File for lift and shift; or to replace or supplement your on premises file storage;
- https://<storage-account-name>.file.core.windows.net

&nbsp;

### 6.8.<u>Access Tiers</u>

- Hot:
    - Default;
    - Balanced Access;
    - Frequently data that are accessed.
- Cool:
    - Cheaper storage with more expensive Read/Write (compared to Hot);
    - Frequently data that are less accessed than Hot Tier;
    - Data needs to be stored for at least 30 days.
- Cold:
    - Much cheaper storage, more expensive Read/Write (compared to Cool);
    - Infrequently accessed data;
    - Data needs to be stored for at least 90 days.
- Archive: 
    - Cannot get immediate access to files;
    - Cheapest storage, more expensive Read/Write;
    - Rarely accessed data;
    - Data need to be stored for at least 180 days, with flexible latency.

&nbsp;

### 6.9.<u>Failover</u>

- If hard disks fails Azure recreates a new hard disk keeping your data safe.

---


## 7. **Migration and Moving Options**

&nbsp;

### 7.1.<u>Azure File Sync</u>

- File Sync between on premises and Azure;
- Hybrid option (on premises files with cloud options);
- Cloud backup for on premises files; 
- Distributed access around the world.

&nbsp;

### 7.2.<u>AZCopy</u>

- It's a CLI (Command Line Interface) tool for copying blobs or files;
- Allows you to copy files between two Azure Storage accounts without having to download the files to your local machine;
- Is the best approach when you need to copy large amount of files between two Azure Storage accounts.

&nbsp;

### 7.3.<u>Azure Migrate</u>

- Assess your systems environment and make recommendations that will make easier to move to the cloud.

&nbsp;

### 7.4.<u>Azure Data Box</u>

- Helps to decide how you'll transfer your data from on premises to cloud, depending on the data volume. There are 3 types:
    - Data Box: 100TB;
    - Data Box Disk: 8TB;
    - Data Box Heavy: 1PB.
- Microsoft mail it to you, you'll fill it up with your data and you'll mail it back to them. 
    - Data is encrypted.

&nbsp;

### 7.5.<u>Azure Storage Explorer</u>

- Allows you to upload something to Azure, download from Azure or move between storage accounts. 

---

## 8. **Identity, Access and Security**

&nbsp;

- <u>Authentication</u>: user proving who they are (ID + password);
- <u>Authorization</u>: Ensuring that a user is permited to do an action.

&nbsp;

### 8.1.<u>Microsoft Entra ID</u>

- Allows you to synchronize on premises directories to enable a consistent ID between on premises and Cloud;
- Uses SAML and OAuth protocols for communication;
- Handle Authentication and Authorization;
- Entra ID Global ADM must have MFA;
- B2B;
- Microsoft Entra ID isn't the same as Active Directory (AD uses LDAP and Kerberos protocols for communication while Entra uses SAML/OAuth).


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m6zu38y5uqro6qc592t9.png)

&nbsp;

- Benefits:
    - More security;
    - Reduced development time + easier support;
    - Additional features (like uses IA to analyze the login patterns to see possible threats); 
    - Centralized administration (see who has access to what); 
    - SSO (Single Sign On);
    - Integrated with others Azure services.

&nbsp;

- Licenses:
    - Microsoft Entra ID P1;
    - Microsoft Entra ID Free;
    - Microsoft Entra ID P2;
    - Microsoft Entra Governance.

&nbsp;

### 8.2.<u>Entra ID Conditional Access</u>

- Classifies some login attributes on system as <u>normal</u>, <u>routine </u> and <u>exactly as expected</u> accross an spectrum to things that are highly suspiscious and to completely unexpected; 
    - You decide how is the risk you allow.

&nbsp;

### 8.3.<u>Passwordless</u>

- Using gestures to sign in; 
- Using PIN or biometric with windows devices; 
- Windows Hello offers support by a bluetooth link, so when you leave your computer, Windows Hello blocks it as soon as you were some meters away. 

&nbsp;

### 8.4.<u>Role-Based Access Control (RBAC)</u>

- Microsoft's preferred solution for authorization to <u>resources</u>;
- It's only for <u>allow rules</u> (following principle of least privilege);
- 3 basic roles: 
    - Reader;
    - Contributor (has all access, but can't give access to others);
    - Owner.

&nbsp;

### 8.5.<u>Zero-Trust Model of Security</u>

- You can't trust any connection, regardless where it comes from, so you'll gonna force everybody to prove them authentication.
- Principles:
    - Verify Explicity;
    - Use least privileged access;
    - Assume breach.
- Use every available method to validate identity and authorization it;
    - Just in Time (JIT);
    - Just Enough Access (JEA).
- Security even inside the network;
    - Encryption, segmentation and threat detection.

&nbsp;

- <u>Devices</u>: ensure compliance and health status;
- <u>Applications</u>: appropriate in-app permissions, monitor user actions;
- <u>Data</u>: data driven protection, encryption and restrict access;
- <u>Infrastructure</u>: robust monitoring to detect attacks, block and flag risky behavior;
- <u>Network</u>: encrypt all communications.

&nbsp;

### 8.6.<u>Defence in Depth</u>

- Security layer all accross your application. 

&nbsp;

- There are 5 layers:
 
**1. Identity and Access**
    - RBAC;
    - MFA;
    - Central ID Management; 
    - Identity Protection;
    - Privileged Identity Management.


**2. Apps and Data Security**
    - Encryption;
    - Confidential Computing;
    - Key Management; 
    - Certificate Management;
    - Information Protection.


**3. Network Security**
    - DDoS Protection;
    - NG Firewall;
    - Web App Firewall; 
    - Private Connections;
    - Network Segmentations.

**4. Threat Protection**
    - Antimalware;
    - AI - Based Detection and Response;
    - Cloud Workload Protection; 
    - SQL Threat Detection;
    - IoT Security.

**5. Security Management**
    - Log Management;
    - Security Posture Assessment;
    - Policy and Governance; 
    - Regulatory;
    - SIEM.

&nbsp;

### 8.7.<u>Azure Firewall</u>

- You can restrict traffic to multiple virtual networks in multiple subscriptions;
- Managed; 
- Stateful;
- Built-in high availability and unrestricted cloud scalability.

&nbsp;

### 8.8.<u>Microsoft Defender</u>

- You have all types of defender in one service, like servers, app service, SQL, Storage, Key...
- Provides protection against DC and locally threats;
- Has free trial;
- Pattern: all access are denied by default;
- Has a dashboard to see how all mecanisms are going;
- Rates you in protection recommendations to improve your security.

&nbsp;

### 8.9.<u>Microsoft Service Trust Portal</u>

- A list of standards that Microsoft follows, pen test results, security assessments, white papers, faqs, and other documents that can be used to show Microsoft's compliance efforts.

&nbsp;

### 8.10.<u>Azure Security Center</u>

- It's a security dashboard that contains all the security and threat protection in one place.
---

## 9. **Cost Management in Azure**

### 9.1.<u>Factors that affect cost in Azure</u>
- Time;
- Consumption (storage, compute, bandwidth);
- Service Tier;
- Computing Power (vCPUs, RAM, CPU Type);
- Software Licenses;
- Bandwidth (Egress from Azure);
    - First 5GB outbound is free.
- Bandwidth (Between Azure Regions);
    - Ingress bandwidth is free.
- IP Addresses;
- Reservations;
- Per Transaction. 

&nbsp;

### 9.2.<u>Total Cost of Ownership Calculator (TCO)</u>

- Compare the cost of cloud (Azure) to On Premises, including all type of costs (hardware, software, electricity, backups, cooling, etc).

&nbsp;

### 9.3.<u>Pricing Calculator</u>

- You can create costs estimates in Azure;

&nbsp;

### 9.4.<u>Azure Cost Management</u>

- Set of tools for managing and optimize existing costs;
- Free;
- Analyzing spending over time;
- Tracking against budgets;
- See all your past invoices;
- Schedule reports;
- Resources tags (Metadata);
- Helps with billing and support issues. 

&nbsp;

### 9.5.<u>Best Practices to Reduce Costs</u>

- Use Azure Advisor cost tab for recommendations;
- Auto shutdown of Dev resources;
- Utilize storage lifecycle;
- Utilize reserved instances if you'll use a VM for a 
long period;
- Configure alerts when billing exceeds an expected level;
- Use Azure Policy to prevent excessive spending;
- Implement automatic scaling to reduce costs;
- Downsize resources that are bigger than your need;
- Use tags to identify named owners/projects of running resources in
Azure.

---

## 10. **Governance and Compliance**

### 10.1.<u>Azure Policy</u>

- Create rules for some/all resources and groups;
- Evaluate compliance of those rules;
- Can operate a custom policy using JSON;
- Scope: Management Group + Subscription + Resource Group.

&nbsp;

### 10.2.<u>Microsoft Purview</u>

- It's a big centralized dashboard for all your data government;
- Some features: 
    - Auditing;
    - Communication Compliance;
    - Data Map and Data Catalog;
    - eDiscovery;
    - Information Protection;
    - Insider Risk Management;
    - Data lifecycle management;
    - Data loss prevention;
    - Compliance Manager.

&nbsp;

### 10.3.<u>Azure Blueprint</u>

- Defines a repeatable set of Azure resources that implements and adheres to an organizations patterns and requirements;
- It's a way to define templates for subscriptions; new subscriptions already comes with a default set of users and policies. Instead of having to set up a subscription before using and possibly missing a security policy.

&nbsp;

### 10.4.<u>Resource Locks</u>

- There're 2 types: "read only" and "can not delete";
- <u>Lock Access Control (LAC)</u>: You can use RBAC to restrict who can update, delete or add some locks.

---

## 11. **Deploying Tools**

### 11.1.<u>Azure ARC</u>

- Allows you to manage a VM, DC and Containers outside of Azure as if they're Azure VM Servers and Containers; 
- It's cross platform, VM hybrid and Container Management;

&nbsp;

-<u>Features</u>:
    - Consistent management for servers accross your environment;
    - Azure VM extensions allows Azure tools to work for monitoring, security and updates;
    - Supports data services;
    - Works with Kubernetes Clusters;
    - Works with Azure Policy.

&nbsp;

-<u>Servers</u>:
    - Manage Windows/Linux physical servers and VMs outside of Azure through installing Azure VM extensions on non-Azure Windows and linux VMs.
    - Collect log data for log analytics and monitor;
    - Use VM insights to analyze performance;
    - Download and execute scripts to hybrid connected machines;
    - Refresh certification using key vault.

&nbsp;

### 11.2.<u>Infrastructure as Code (IaC)</u>

- Related with all servers, storage, DB settings, network settings, firewalls, load balancer, etc;
- You define your desired infrastructure in a configuration file;
    - <u>Desired Configuration File (DCF)</u>:
        - Using automation to ensure your configuration doesn't drift from the original setup.

&nbsp;

-<u>IaC Options</u>:
    - ARM Templates (JSON);
    - Bicep;
    - Terraform;
    - Chef Puppet;
    - Powershell scripts;
    - CLI;
    - Azure Portal;
    - SDK/API REST ...

&nbsp;

### 11.3.<u>ARM Templates (Azure Resources Manager)</u>

- To manage IaC;
- Pieces of code/files that allows you to define what your infrastructure needs to be;
    - Management layer that allows you to create/update/delete resources called deployments;
    - All actions that you take to manage your resources goes through the ARM layer.
- The most common resource for deployments.

&nbsp;

### 11.4.<u>Azure Cloud Shell</u>

- You can run scripts using Bash or Power Shell;
- It allows access to the CLI and PowerShell consoles in the Azure Portal (CLI and PowerShell aren't entirely compatible with each other).

&nbsp;

### 11.5.<u>Azure Services LifeCycle</u>

- <u>Private Preview:</u> Available only to a selected audience; Microsoft invites select participants to test and provide feedback on new features or services before a wider release.
- <u>Public Preview:</u> Available to all Azure customers with an active subscription, but with some limitations;
- <u>General Availability (GA):</u> Available to all customers.

---

## 12. **Monitoring Tools**

### 12.1.<u>Azure Advisor</u>

- Analyzes your account and make some recommendations following 5 pillars:
    

1. Cost;
2. Security;
3. Reliability;
4. Operational excellence;
5. Performance.

&nbsp;

### 12.2.<u>Azure Service Health</u>

- It's a dashboard tool to track the resources health in all regions you're using it;
- You can see services/resources health through all regions, not only the ones you have.

&nbsp;

### 12.3.<u>Azure Monitor</u>

- It's a centralized dashboard of all the login and analytics across your account;
- You can use it to other clouds and on premises too;
- Collects all of the logs from various resources into a central dashboard, where you can run queries, view graphs, and create alerts on certain events.

---

_Thanks for reading till the end :smiley:_
_Hope it helps you and increase your cloud knowledge. :cloud: :sunglasses:_

&nbsp;
:round_pushpin: _If you want, you can find me on [LinkedIn](https://www.linkedin.com/in/b%C3%A1rbara-cardozo-26a055147/)_