diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-01.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-01.md new file mode 100644 index 000000000..8b6fa9e22 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-01.md @@ -0,0 +1,25 @@ +# Challenge 1 - Introduction to Azure NetApp Files + +**[Home](../Readme.md)** - [Next Challenge Solution](challenge-02.md) + +## Goal + +Overview of Azure NetApp Files, including its purpose, benefits, and key features. + +## Actions + +* Azure NetApp Files overview +* Key attributes: performance, cost optimization, and scale +* Supported protocols: SMB, NFS, and dual protocol +* Use cases: File sharing, ome directories, databases, high-performance computing +* Introduction to Microhack subscription and challenges + +## Success criteria + +* Describe the key attributes of Azure NetApp Files +* Performance characteristics and service levels +* Cost optimization considerations +* Scalability and enterprise readiness + +## Learning resources +* [Azure NetApp Files documentation](https://learn.microsoft.com/en-us/azure/azure-netapp-files/) diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-02.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-02.md new file mode 100644 index 000000000..fc40e37df --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-02.md @@ -0,0 +1,22 @@ +# Challenge 2 - Setup Network Configuration + +[Previous Challenge Solution](challenge-01.md) - **[Home](../Readme.md)** - [Next Challenge Solution](challenge-03.md) + +## Goal + +Design an effective network architecture for your workloads to benefit from the rich capabilities of Azure NetApp Files. + +## Actions + +* Design considerations for Azure NetApp Files network planning +* Review basic requirements and networking options +* Setup vNet and delegated subnet + +## Success criteria + +* Explain the networking requirements and dependencies +* Identify and evaluate network design considerations +* Design a scalable and secure network architecture + +## Learning resources +* [Guidelines for Azure Netapp Files network planning ](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-network-topologies) diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-03.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-03.md new file mode 100644 index 000000000..1d3242c17 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-03.md @@ -0,0 +1,26 @@ +# Challenge 3 - Setting Up Azure NetApp Files + +[Previous Challenge Solution](challenge-02.md) - **[Home](../Readme.md)** - [Next Challenge Solution](challenge-04.md) + +## Goal + +Set up and configure Azure NetApp Files. + +## Actions + +* Create a NetApp accounts in Azure NetApp Files +* Setting up Capacity Pools +* Create a volume with NFSv3 +* Deploy a Virtual Instance and mount a volume +* Write test data to a volume (Download larger data amount) +* Create Snapshot +* Restore from Snapshot + +## Success criteria + +* Create an Azure NetApp Files account in the correct region and subscription +* Create and configure capacity pools with appropriate service levels and sizing aligned to workload needs. +* Create, manage, and modify volumes, including selecting the correct protocol, capacity, and performance settings. + +## Learning resources +* [Quickstart: Set up Azure NetApp Files and create an NFS volume](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-quickstart-set-up-account-create-volumes?tabs=azure-portal) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-04.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-04.md new file mode 100644 index 000000000..d6553fde8 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-04.md @@ -0,0 +1,26 @@ +# Challenge 4 - Setting Up Azure NetApp Files for VDI/AVD + +[Previous Challenge Solution](challenge-03.md) - **[Home](../Readme.md)** - [Next Challenge Solution](challenge-05.md) + +## Goal + +Explore the use cases and benefits of Azure NetApp Files for Virtual Desktop Infrastructure (VDI) and Azure Virtual Desktop (AVD). + +## Actions + +* Configure Active Directory connection for Azure NetApp Files +* Create SMB volume for AVD environment +* Deploy and Test AVD Integration + +## Success criteria +* Deploy and connect the required infrastructure components. +* Be able to provision storage and perform basic data operations. +* Integrate identity and user profiles with the platform. +* Access the environment as a user and verify functionality. +* Observe, test, and adjust performance behavior. +* Understand storage requirements for Azure Virtual Desktop + +## Learning resources + +* [Storage options for FSLogix profile containers in Azure Virtual Desktop](https://learn.microsoft.com/en-us/azure/virtual-desktop/store-fslogix-profile#azure-platform-details) +* [Store FSLogix profile containers on Azure NetApp Files](https://learn.microsoft.com/en-us/fslogix/how-to-configure-profile-container-netapp) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-05.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-05.md new file mode 100644 index 000000000..0f880177b --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-05.md @@ -0,0 +1,25 @@ +# Challenge 5 - Managing and Monitoring Azure NetApp Files + +[Previous Challenge Solution](challenge-04.md) - **[Home](../Readme.md)** - [Next Challenge Solution](challenge-06.md) + +## Goal + +Equip participants with the skills to manage and monitor Azure NetApp Files. + +## Actions + +* Monitoring performance and health +* Managing Active Directory integration +* Backup and restore operations +* Participants adjust performance levels based on simulated workloads. + +## Success criteria + + +## Learning resources +* [Create an Active Directory connection for Azure NetApp Files](https://learn.microsoft.com/en-us/azure/azure-netapp-files/elastic-active-directory) + +* [Understand Azure NetApp Files backup](https://learn.microsoft.com/en-us/azure/azure-netapp-files/backup-introduction) + +* [Performance FAQs for Azure NetApp Files](https://learn.microsoft.com/en-us/azure/azure-netapp-files/faq-performance) +* [Azure NetApp Files performance considerations](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-performance-considerations) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-06.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-06.md new file mode 100644 index 000000000..88f26c0b0 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-06.md @@ -0,0 +1,33 @@ +# Challenge 6 - Azure NetApp Files Backup + +[Previous Challenge Solution](challenge-05.md) - **[Home](../Readme.md)** - [Next Challenge Solution](challenge-07.md) + +## Goal + +The goal of this challenge is to configure Azure NetApp Files Backup to protect data used in an Azure Virtual Desktop environment. +You will ensure that Azure NetApp Files volumes are covered by a backup configuration that supports data protection and recovery requirements. + +## Actions + +* Enable Azure NetApp Files Backup in the target region +* Create or use an existing backup vault +* Configure a backup policy for Azure NetApp Files volumes +* Assign the backup policy to the relevant Azure NetApp Files volume +* Verify that backups are being created successfully + +## Success criteria + +This challenge is completed successfully when: + +* Azure NetApp Files Backup is enabled +* A backup vault exists and is available +* A backup policy is configured and assigned to an Azure NetApp Files volume +* Backup jobs are visible and complete successfully +* The volume is protected according to the configured policy + +## Learning resources + +* [Azure NetApp Files Backup overview](https://learn.microsoft.com/azure/azure-netapp-files/backup-introduction) +* [Configure Azure NetApp Files Backup](https://learn.microsoft.com/azure/azure-netapp-files/backup-configure) +* [Azure NetApp Files data protection](https://learn.microsoft.com/azure/azure-netapp-files/azure-netapp-files-data-protection) + diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-07.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-07.md new file mode 100644 index 000000000..dc405509c --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/challenge-07.md @@ -0,0 +1,24 @@ +# Challenge 7 - Best Practices and Use Cases + +[Previous Challenge Solution](challenge-06.md) - **[Home](../Readme.md)** - [Next Challenge Solution](finish.md) + +## Goal +* Build a solid understanding of Azure NetApp Files best practices +* Become familiar with official documentation, architectures, and solution designs +* Understand common Azure NetApp Files use cases across workloads (e.g., SAP, databases, Kubernetes, HPC) + +## Actions +* Review Azure NetApp Files use cases and reference architectures +* Study architecture and well-architected best practice guidance +* Explore official Azure NetApp Files documentation and product updates +* Review available tools, community articles, and pricing models +* Use learned content to understand design patterns and real-world scenarios + +## Success criteria +* Ability to identify suitable Azure NetApp Files use cases per workload +* Clear understanding of recommended architectures and best practices +* Familiarity with key documentation, tools, and community resources +* Confidence in discussing Azure NetApp Files design considerations and solutions + +## Learning resources +[Best Practices](https://learn.microsoft.com/en-us/azure/azure-netapp-files/best-practices) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/finish.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/finish.md new file mode 100644 index 000000000..f7b9cc3d6 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /challenges/finish.md @@ -0,0 +1,15 @@ +# Finish + +[Previous Challenge Solution](challenge-08.md) + +## Congratulations + +You finished the MicroHack *Azure NetApp Files Microhack VDI/AVD*. We hope you had the chance to learn about the how to implement a successful Azure Virtual Desktop environment with Azure NetApp Files. + +If you want to give feedback please dont hesitate to open an Issue on the repository or get in touch with one of us directly. + +Thank you for investing the time and see you next time! + +## Contributors +* Sascha Petrovski [GitHub](https://github.com/saschape/) [LinkedIn](https://www.linkedin.com/in/sascha-petrovski/) +* Tristan Daude [LinkedIn](https://www.linkedin.com/in/tristandaude/) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/1920x300_EventBanner_MicroHack_ANF_VDI_AVD.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/1920x300_EventBanner_MicroHack_ANF_VDI_AVD.png new file mode 100644 index 000000000..8f26b014b Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/1920x300_EventBanner_MicroHack_ANF_VDI_AVD.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/fsl-ccd-ha.jpg b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/fsl-ccd-ha.jpg new file mode 100644 index 000000000..9ca1df600 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/fsl-ccd-ha.jpg differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/vnet_title.jpg b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/vnet_title.jpg new file mode 100644 index 000000000..b1a7d0ea6 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /img/vnet_title.jpg differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /readme.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /readme.md new file mode 100644 index 000000000..297b935a3 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /readme.md @@ -0,0 +1,91 @@ +![image](./img/1920x300_EventBanner_MicroHack_ANF_VDI_AVD.png) + +# Azure NetApp Files Microhack VDI/AVD + +- [**MicroHack introduction**](#MicroHack-introduction) +- [**MicroHack context**](#microhack-context) +- [**Objectives**](#objectives) +- [**MicroHack Challenges**](#microhack-challenges) +- [**Contributors**](#contributors) + +# MicroHack introduction + +This MicroHack is a hands-on technical workshop designed to help participants build practical experience with Azure NetApp Files (ANF) in the context of Virtual Desktop Infrastructure (VDI) using Azure Virtual Desktop (AVD). + +Rather than focusing only on theory or documentation, this MicroHack guides you through real-world configuration tasks and challenges that reflect common customer scenarios. MicroHacks are intentionally scoped, time‑boxed, and challenge‑driven. + +They allow you to learn by doing and to incrementally build technical confidence by solving practical problems step by step + +![image](img/fsl-ccd-ha.jpg) + +# MicroHack context + +Many organizations adopt Azure Virtual Desktop to modernize their end-user computing strategy, but quickly encounter challenges around performance, profile management, and scalable storage. + +Azure NetApp Files is a native Azure service that provides high‑performance, low‑latency file storage, making it an ideal backend for FSLogix profiles, user home directories, and application data in AVD environments. + +This MicroHack places Azure NetApp Files into a realistic VDI scenario, where participants must integrate ANF with Azure networking, identity services and AVD workloads. The focus is on understanding why specific design decisions matter, not just how to configure them. + +# Objectives + +By completing this MicroHack, you will be able to: + +Understand the role of Azure NetApp Files in a Virtual Desktop Infrastructure scenario +Create and configure an Azure NetApp Files account, capacity pools, and volumes +Integrate Azure NetApp Files with Azure Virtual Desktop +Configure networking prerequisites such as VNets and delegated subnets +Understand how ANF integrates with FSLogix user profiles and session-based workloads +Configure Azure NetApp Files backup for protecting user data +Understand how to monitor and tune Azure NetApp Files performance +Gain hands-on experience that can be transferred directly to customer or production environments + +The challenges are designed to build on each other, reinforcing learning outcomes as you progress. + +# MicroHack challenges + +## General prerequisites + +Before starting this MicroHack, you should have: + +* An active Azure subscription with sufficient permissions to create: + * Resource groups + * Virtual networks and subnets + * Azure NetApp Files resources + +* Basic knowledge of: + * Azure networking concepts (VNets, subnets, delegation) + * Azure Virtual Desktop fundamentals + * Azure Active Directory + +* Familiarity with the Azure Portal and Azure CLI or PowerShell A workstation with: + * Internet access + * A modern web browser + * Access to the Azure Portal + +No prior Azure NetApp Files experience is required, but a general understanding of storage concepts will be helpful. + + +## Challenges +* [Challenge 1 - Introduction to Azure NetApp Files](challenges/challenge-01.md) +* [Challenge 2 - Setup Network Configuration](challenges/challenge-02.md) +* [Challenge 3 - Setting Up Azure NetApp Files](challenges/challenge-03.md) +* [Challenge 4 - Azure NetApp Files for VDI/AVD Use-Case](challenges/challenge-04.md) +* [Challenge 5 - Managing and Monitoring Azure NetApp Files](challenges/challenge-05.md) +* [Challenge 6 - Azure NetApp Files Backup](challenges/challenge-06.md) +* [Challenge 7 - Best Practices and Use Cases](challenges/challenge-07.md) + + +## Solutions - Spoilerwarning + +* [Solution 1 - Get to know and Register](./walkthrough/challenge-01/solution-01.md) +* [Solution 2 - Setup Network Configuration](./walkthrough/challenge-02/solution-02.md) +* [Solution 3 - Setting Up Azure NetApp Files](./walkthrough/challenge-02/solution-03.md) +* [Solution 4 - Setting Up Azure NetApp Files for VDI/AVD](./walkthrough/challenge-02/solution-04.md) +* [Solution 5 - Managing and Monitoring Azure NetApp Files](./walkthrough/challenge-02/solution-05.md) +* [Solution 6 - Setting Up Azure NetApp Files Backup](./walkthrough/challenge-02/solution-06.md) +* [Solution 7 - Best Practices and Use Cases](./walkthrough/challenge-02/solution-07.md) + +## Contributors + +* Sascha Petrovski [GitHub](https://github.com/saschape/) [LinkedIn](https://www.linkedin.com/in/sascha-petrovski/) +* Tristan Daude [LinkedIn](https://www.linkedin.com/in/tristandaude/) \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-01/solution-01.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-01/solution-01.md new file mode 100644 index 000000000..958f94de5 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-01/solution-01.md @@ -0,0 +1,62 @@ +# Walkthrough Challenge 1 - Get to know and Register + +**[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-02/solution-02.md) + +Duration: 10 minutes + +## Prerequisites + +The following procedure creates a virtual network with a resource subnet, and a delegated ANF subnet. +Please ensure that you successfully verified the [General prerequisits](../../Readme.md#general-prerequisites) before continuing with this challenge. + +### **Task 1: Documentation, Links, Content...** + +* [Azure NetApp Files Essentials](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-understand-storage-hierarchy) + +### **Task 2: Register for NetApp Resource Provider** + +1. From the Azure portal, select the Azure Cloud Shell icon on the upper right-hand corner: + + + +2. If you have multiple subscriptions on your Azure account, select the one that you want to configure for Azure NetApp Files: + +```bash +az account set --subscription +``` + +3. In the Azure Cloud Shell console, enter the following command to register the Azure Resource Provider: + +```bash +az provider register --namespace Microsoft.NetApp --wait +``` + +The --wait parameter instructs the console to wait for the registration to complete. The registration process can take some time to complete. + +4. Verify that the Azure Resource Provider has been registered. To verify, enter the following command in the Azure Cloud Shell console: + +```bash +az provider show --namespace Microsoft.NetApp +``` + +The command output appears as follows: +```bash +{ +"id": "/subscriptions//providers/Microsoft.NetApp", +"namespace": "Microsoft.NetApp", +"registrationState": "Registered", +"resourceTypes": […. +``` + + is your subscription ID. The state parameter value indicates Registered. + +5. From the Azure portal, select Subscriptions. + +6. From Subscriptions, select your subscription ID. + +7. In the settings of the subscription, select Resource providers to verify that Microsoft.NetApp Provider indicates the Registered status: + +![image](../img/solution-02-azure-netapp-files-registered-resource-providers.png) + + +You successfully completed challenge 1! 🚀🚀🚀 diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-02/solution-02.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-02/solution-02.md new file mode 100644 index 000000000..16d076736 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-02/solution-02.md @@ -0,0 +1,93 @@ +# Walkthrough Challenge 2 - Setup Network Configuration + +[Previous Challenge Solution](../challenge-01/solution-01.md) - **[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-03/solution-03.md) + +Duration: 20 minutes + +## Prerequisites + +The following procedure creates a virtual network with a resource subnet, and a delegated ANF subnet. +Please ensure that you successfully verified the [General prerequisits](../../Readme.md#general-prerequisites) before continuing with this challenge. + +The participant/group number is the second octet in the network address +10.1.0.0/16 +10.2.0.0/16 +... + + +### **Task 1: Create a Virtual Network and Subnet** + +1. Log in to the [Azure portal](https://portal.azure.com/#home). + +2. In the portal, search for and select Virtual networks. + +3. On the Virtual networks page, select + Create. + +4. On the Basics tab of Create virtual network, enter, or select the following information: + +* Subscription: **Use the default subscription** +* Ressource Group: **rg-hostpool{Group Number}** +* Virtual network name: **vnet-hostpool{Group Number}** +* Region: **Germany West Central** + + + +5. Select Next to proceed to the IP Addresses tab, enter or select the following information: + +* Address Space: Group Number 1 = **10.1.0.0/16**, Group Number 2 = **10.2.0.0/16 ...** + + + +6. Click on **Add a Subnet** and enter or select the following information: + + + +* Subnet purpose: **Default** +* Name: Enter **subnet-hostpool{Group Number}** +* IPv4 address range: Group Number 1 = **10.1.0.0/16, Group Number 2 = 10.2.0.0/16 ...** +* Starting address: Group Number 1 = **10.1.0.0, Group Number 2 = 10.2.0.0 ...** +* Size: Leave the default of **/24** (256 addresses). + +8. Select **Save** + +9. Select **Review + create** at the bottom of the window. When validation passes, select Create + + + +### **Task 2: Delegate a subnet to Azure NetApp Files** + +1. Navigate to Virtual networks in the Azure portal. + +2. Select the **virtual network** that you previously created. + + + +2. From Virtual network, select Subnets then the **+Subnet** button. + + + +3. Create a new subnet to use for Azure NetApp Files by completing the following required fields in the Add Subnet page: + +* Subnet purpose: **Default** +* IPv4 address range: Group Number 1 = **10.1.0.0/16, Group Number 2 = 10.2.0.0/16 ...** +* Starting address: Group Number 1 = **10.1.1.0, Group Number 2 = 10.2.1.0 ...** + +* Name: Specify **anf-subnet-hostpool{Group Number}** as the subnet name. +* Address range: Specify **/24** the IP address range. + +4. Scroll down to **Subnet delegation** + +5. Select **Microsoft.NetApp/volumes**. + + + +Note: You can also create and delegate a subnet when you [create a volume for Azure NetApp Files.](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-create-volumes) + + +💥[**Considerations:**](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-delegate-subnet) +1. In scenarios involving high application volume counts, consider larger subnets +2. Once the delegated network is created, its network mask cannot be altered. +3. In each VNet, only one subnet can be delegated to Azure NetApp Files. + + +You successfully completed challenge 2! 🚀🚀🚀 diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-03/solution-03.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-03/solution-03.md new file mode 100644 index 000000000..6062fc8c7 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-03/solution-03.md @@ -0,0 +1,138 @@ +# Walkthrough Challenge 3 - Setting Up Azure NetApp Files + +[Previous Challenge Solution](../challenge-02/solution-02.md) - **[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-04/solution-04.md) + +Duration: 30 minutes + +## Prerequisites + +Please ensure that you successfully verified the [General prerequisits](../../Readme.md#general-prerequisites) before continuing with this challenge. + +### **Task 1: Create a NetApp account in Azure NetApp Files** + +1. In the Azure portal's search box, enter **Azure NetApp Files** and then select **Azure NetApp Files** from the list that appears. + + + +2. Select + **Create** to create a new NetApp account. + +3. In the New NetApp Account window, provide the following information: + +* Enter **anf-account-hostpool{Group Number}** for the account name. +* Select your subscription. +* Select the previously created resource group **rg-hostpool-{Group Number}** +* Select your account location to "Germany West Central" +* Account Type: **NetApp Account** + + + +4. Select **Create** to create your new NetApp account. + +### **Task 2: Create a capacity pool** + +1. From the Azure NetApp Files management sidebar, select your NetApp account **anf-account-hostpool{Group Number}** + + + +2. From the Azure NetApp Files management sidebar, select **Capacity pools** in the section "storage service" + + + +3. Select + **+ Add pools** and provide information for the capacity pool: + +* Name: **capacity-pool-hostpool{Group Number}** +* Service Level: **Standard** +* Size (TiB): **1 (TiB)** +* Enable Cool Access: **Enabled** +* QoS Type: **Auto** +* Encryption: **Single** + + + +5. Select **Create** + +6. Check if capacity pool has been created. + + + +### **Task 3: Create an NFS volume for Azure NetApp Files** + +1. In NetApp Account window **anf-account-hostpool{Group Number}** click on **Volumes** in the "Storage service" section. + + + +2. Select **+ Add volume** to create a new volume and enter the following information: + +* Volume Name: **vol1-nfs-hostpool{Group Number}** +* Capacity Pool: (**capacity-pool-hostpool{Group Number}**). +* Quote (GiB): **100** +* Virtual Network: **vnet-hostpool{Group Number}** + + + +4. Select **Protocol**, and then complete the following actions: + +* Protocol typ: **NFS** +* File path: **Leave default** +* Versions: **NFSv3** + + + +5. Select **Review + create** to display information for the volume you're creating. + + + +6. Select **Create** to create the volume. + + + +7. The created volume appears in the Volumes menu. (This can take some time...) + + + +### **Task 4: Create a Linux VM and mout the NFS volume** + +1. Select **Virtual Machines** blade + +2. Select **Create** and **Virtual Machine** and enter these parameters + + + + +3. Click on **Disks** and leave the defaults + +4. Click on **Networking** and enter the vnet and default subnet (not the delegated subnet) you had created in the previous challenge + + + +5. Click **Review + create** and **Create** + +5. Once deployment has finished to Networking configuration and add an inbound rule for your IP to the NSG + +6. Log into you VM using public IP via puTTY + +7. Run the following commands + +```bash +sudo su +apt update +apt install fio +apt install nfs-common +mkdir /netapp-mnt +cd /netapp-mnt +``` +8. Go back to your NetApp account and click on the NFS volume you had created + +9. On the left side find **Mount instructions**, select it and copy the mount command + +10. Paste it into putty and make sure the share will be mounted to /netapp-mnt + +Example: + +```bash +mount -t nfs -o rw,hard,rsize=262144,wsize=262144,vers=3,tcp 10.100.1.5:/myvol1 /netapp-mnt +``` +11. Copy some files to the share + + +You successfully completed challenge 3! 🚀🚀🚀 \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-04/solution-04.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-04/solution-04.md new file mode 100644 index 000000000..f35393dd2 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-04/solution-04.md @@ -0,0 +1,92 @@ +# Walkthrough Challenge 4 - Setting Up Azure NetApp Files for VDI/AVD + +[Previous Challenge Solution](../challenge-03/solution-03.md) - **[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-05/solution-05.md) + + +# Prerequisites +The pre-provisioned AVD setup already has a designated Hostpool for each attendee. +Your Hostpool is microhack_hostpool{Group Number} + +The username and password will be provided during the session. + +### Task 1: Configure AD connection in NetApp account + +1. Log in to the [Azure portal](https://portal.azure.com/#home) + +2. Pick Azure NetApp Files service + +3. From the Azure NetApp Files management sidebar, select your NetApp account, e.g. myaccount1 + +4. On the left side expand **Azure Netapp Files** and click on **Active Directory connections** + + + +5. Click **Join** and enter the following values (leave all other fields blank): + +* Primary DNS: **10.100.0.4** +* AD DNS Domain Name: **microhack.test** +* AD Site Name: **Default-First-Site-Name** +* SMB Serve: **MH** +* Organizational Unit Path: **OU=Hostpool{Group Number}** +* AES Encryption: **checked** +* Username: **provided during the session** +* Password: **provided during the session** + + + + +6. Click **OK** + +### Task 2: Create a new SMB volume + +1. On the left side expand **Storage service**, click on **Volumes** and **Add volume**. + + + +2. Enter the following values (leave all other fields blank) + +* Volume Name: **vol2-smb-hostpool{Group Number}** +* Capacity Pool: **capacity-pool-hostpool{Group Number}** +* Quota (GiB): **100** +* Max. Throughput: What throughput value did you get? Why can't you change it? +* Virtual Network: **vnet-hostpool{Group Number}** +* Delegated subnet: **anf-subnet-hostpool{Group Number}** + + + +2. Click on **Next** or **Protocol** and enter the following values (leave all other fields blank): + +* Protocol Type: **SMB** +* Active Directory: **microhack.test** +* Share name: **Leave Default** + + + +3. Click on **Review + create** and **create** + + + +### Task 3: Integration of your volume into AVD (Trainer Task) + +1. Click on your new volume +2. On the left side under **Storage Service** click on **Mount instructions** to identify the UNC path of your volume + +![image](../img/solution-04-smb-mount-instructions.png) + +The UNC path of your share needs to be entered in the AD Group Policy attribute **VHD locations** which is assigned to your OU (see AD connection) + +### Task 4: Test and verify correct AVD integration of your SMB volume + +1. Login to AVD using your assigned AVD user + +2. Goto **Settings** and select **Manage disks and volumes** + +3. Can you see the attached VHD disks? + +4. Now select **Map network drive** and mount you SMB share manually + +5. Can you find your home directory on the share? + + +You successfully completed challenge 4! 🚀🚀🚀 + diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-05/solution-05.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-05/solution-05.md new file mode 100644 index 000000000..9c9995529 --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-05/solution-05.md @@ -0,0 +1,94 @@ +# Walkthrough Challenge 5 - Managing and Monitoring Azure NetApp Files Performance + +[Previous Challenge Solution](../challenge-04/solution-04.md) - **[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-06/solution-06.md) + +Duration: 20 minutes + +### Task 1: Configure a quick metrics dashboard + +1. Open your NetApp acoount + +2. On the left side open **Monitoring** and then click on **Metrics** + + + +3. Click on **New chart**. Now you see 2 charts in total + +4. On the upper chart, click on **Save to dashboard**, select **Pin to dashboard**, enter a name and hit **OK** + +5. Repeat the previous step on the lower chart and pin it the the same dashboard + +6. On the upper chart, click on **Scope**, click on your capacity pool and select both volumes. Hit **Apply** + +7. Click on **Metric** and select **Write throughput** + +8. On the lower chart chose the same scope and select **Read Throuput** as metric + +9. Change to service **Dashboard Hub** and view your new dashboard + +### Task 2: NFS Performance monitoring and optimization + +1. Logon to your Linux VM and mount your NFS volume + +2. Run a couple of load simualations + +Read test +```bash +sudo su +cd /netapp-mnt +fio --name=read_test --ioengine=libaio --rw=read --bs=4k --direct=1 --size=100M --numjobs=1 --runtime=60 --group_reporting +``` +Write test +```bash +fio --name=write_test --ioengine=libaio --rw=write --bs=4k --direct=1 --size=100M --numjobs=1 --runtime=60 --group_reporting --direct=1 + +``` + +3. Go to your metrics dashboard and review achvieved throughput + +4. Go to your NetApp account, select your NFS volume, double the size of your volume and save your change + +5. Repeat your FIO testing + +6. Return to your metrics dashboard and review achvieved throughput and download speed + +### Task 3: AVD/FSLogix user experience + +1. Login to the AVD environment with your user + +2. For a quick test, download Google Chrome in offline edition and note the time it took + +https://www.google.com/intl/en/chrome/next-steps.html?standalone=1 + +3. Change to your performance dashboard and review results + +4. Leave the AVD connection open and switch to your Netapp account + +5. In your NetApp account, change your AVD volume size to 300 GB and save the change + +6. Return to your AVD session and repeat the download test + +https://www.google.com/intl/en/chrome/next-steps.html?standalone=1 + +7. Change to your performance dashboard, review achieved throughput and download speed. Compare this to the first download results + +### Task 4: We need more performance + +1. Go back to you NetApp account + +2. On the left side expand **Storage service** and select **Capacity pools** + +3. Select **Add Pool**, enter a name, select **Ultra** for Service level and make it 1 TB in size and hit **Create** + +4. Once your new pool is ready, select **Volumes** on the left side + +5. Click the three dots in column **Actions** on the right side of you SMB volume, select **Change pool**, select your new pool and hit **OK** + +6. Repeat the previous steps for your NFS volume + +7. Repeat the tests from **Task 2** and **Task 3** + +8. Check your monitoring dashboard and compare the results. + +You successfully completed challenge 5! 🚀🚀🚀 + diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-06/solution-06.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-06/solution-06.md new file mode 100644 index 000000000..d418bfbeb --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-06/solution-06.md @@ -0,0 +1,68 @@ +# Walkthrough Challenge 6 - Azure NetApp Files Backup + +[Previous Challenge Solution](../challenge-05/solution-05.md) - **[Home](../../Readme.md)** - [Next Challenge Solution](../challenge-07/solution-07.md) + +Duration: 20 minutes + +### **Task 1: Create a backup vault** + +1. In your NetApp account on the left side navigate to **Backup Vaults** + +2. Select **Add Backup Vault** and assign a name to your backup vault then select **Create** + + + +### **Task 2: Configure a Backup Policy for automated backups** + +1. Select your NetApp account. + +2. On the left side under **Storage service**, select Backups. + +3. Select **Backup Policies** + +4. Select **Add** + +5. In the Backup Policy page, specify the **Backup Policy Name**. Enter the number of backups that you want to keep for daily, weekly, and monthly backups. Select **Save** + +The minimum value for Daily Backups to Keep is 2. + + + +**Example of a valid configuration** +Backup policy: +Daily: Daily Backups to Keep = 15 +Weekly: Weekly Backups to Keep = 6 +Monthly: Monthly Backups to Keep = 4 + +### **Task 3: Assign backup vault and backup policy to a volume** + +1. Navigate to Volumes then select the volume for which you want to configure backups. + +2. From the selected volume, select **Backups** then **Configure Backups**. + +3. Select your backup vault + +4. Select the previously created backup policy + + + +5. Select **Backups** to find new backup jobs (will take some time) + +### **Task 4: Run a manual backup** + +1. Pick your volume, on the left side, select **Volumes** + +2. Click on your SMB volume + +3. Select **Backups** + +4. Click on **Add Backup** + +5. Specify a backup name + +6. Select **Create** + +7. Select **Backups** to check the status of the new backup job + + +You successfully completed challenge 6! 🚀🚀🚀 \ No newline at end of file diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-07/solution-07.md b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-07/solution-07.md new file mode 100644 index 000000000..3a741e7dc --- /dev/null +++ b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/challenge-07/solution-07.md @@ -0,0 +1,21 @@ +# Walkthrough Challenge 7 - Best Practices and Use Cases + +[Previous Challenge Solution](../challenge-06/solution-06.md) - **[Home](../../Readme.md)** + +Duration: 20 minutes + +### **Task 1: Azure Netapp Files use cases** + +* [All use cases can be found here (Databases, SAP, HPC, Kubernetes, VDI, AVS and much more)](https://learn.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-solution-architectures) + +### **Task 2: Additional Documentation, Links, Content...** + +* [Architecture best practices for Azure NetApp Files](https://learn.microsoft.com/en-us/azure/well-architected/service-guides/azure-netapp-files) +* [Azure NetApp Files documentation](https://learn.microsoft.com/en-us/azure/azure-netapp-files/) +* [Azure NetApp Files Product news](https://learn.microsoft.com/en-us/azure/azure-netapp-files/whats-new) +* [Azure NetApp Files tools](https://azure.github.io/azure-netapp-files/) +* [Azure NetApp Files community articles](https://anfcommunity.com/) +* [Azure NetApp Files pricing](https://azure.microsoft.com/en-us/pricing/details/netapp/) + +You successfully completed challenge 7! 🚀🚀🚀 + diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-01-azure-netapp-files-azure-cloud-shell.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-01-azure-netapp-files-azure-cloud-shell.png new file mode 100644 index 000000000..e726d4c0d Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-01-azure-netapp-files-azure-cloud-shell.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-registered-resource-providers.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-registered-resource-providers.png new file mode 100644 index 000000000..9d9d455d8 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-registered-resource-providers.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-subnet-delegation.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-subnet-delegation.png new file mode 100644 index 000000000..6568b49ed Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-azure-netapp-files-subnet-delegation.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-basics.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-basics.png new file mode 100644 index 000000000..613957517 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-basics.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-create-anf-subnet.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-create-anf-subnet.png new file mode 100644 index 000000000..c49a05006 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-create-anf-subnet.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-ip-address.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-ip-address.png new file mode 100644 index 000000000..c9d80b87b Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-ip-address.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-review.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-review.png new file mode 100644 index 000000000..258328625 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-review.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-select-vnet.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-select-vnet.png new file mode 100644 index 000000000..0667ee146 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-select-vnet.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-subnet.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-subnet.png new file mode 100644 index 000000000..28f7632eb Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-02-create-virtual-network-subnet.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-add-volume.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-add-volume.png new file mode 100644 index 000000000..b4b41e478 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-add-volume.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-basics.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-basics.png new file mode 100644 index 000000000..55b771c56 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-basics.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-deployment.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-deployment.png new file mode 100644 index 000000000..c746de173 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-deployment.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-protocol.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-protocol.png new file mode 100644 index 000000000..1a250d1d4 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-protocol.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-review.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-review.png new file mode 100644 index 000000000..f36613015 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume-review.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume.png new file mode 100644 index 000000000..fc21b1a0c Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-add-volume.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-click-capacity-pools.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-click-capacity-pools.png new file mode 100644 index 000000000..41e62b595 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-click-capacity-pools.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-created-capacity-pool.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-created-capacity-pool.png new file mode 100644 index 000000000..e259321c5 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-created-capacity-pool.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-capacity-pool.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-capacity-pool.png new file mode 100644 index 000000000..371b613ea Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-capacity-pool.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-netapp-account.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-netapp-account.png new file mode 100644 index 000000000..2f2b74b69 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-new-netapp-account.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-select-netapp-account.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-select-netapp-account.png new file mode 100644 index 000000000..7b281647f Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-azure-netapp-files-select-netapp-account.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm1.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm1.png new file mode 100644 index 000000000..60a38a3e6 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm1.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm2.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm2.png new file mode 100644 index 000000000..6fb158cea Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm2.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm3.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm3.png new file mode 100644 index 000000000..f9859de82 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-vm3.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-volume.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-volume.png new file mode 100644 index 000000000..10a01c5c0 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-create-volume.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-created-volume-overview.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-created-volume-overview.png new file mode 100644 index 000000000..bc3f11e83 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-created-volume-overview.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-protocol-smb.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-protocol-smb.png new file mode 100644 index 000000000..d9debefd5 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-protocol-smb.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-search-azure-netapp-files.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-search-azure-netapp-files.png new file mode 100644 index 000000000..7ceee3b1a Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-search-azure-netapp-files.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-volumes.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-volumes.png new file mode 100644 index 000000000..cefb00be8 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-03-volumes.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-add-volume.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-add-volume.png new file mode 100644 index 000000000..fc21b1a0c Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-add-volume.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-active-directory-connections.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-active-directory-connections.png new file mode 100644 index 000000000..791ea0ce7 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-active-directory-connections.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-1.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-1.png new file mode 100644 index 000000000..94fdbd959 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-1.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-2.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-2.png new file mode 100644 index 000000000..18375dd80 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-azure-netapp-files-join-active-directory-2.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-mount-instructions.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-mount-instructions.png new file mode 100644 index 000000000..6fdccf2da Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-mount-instructions.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-protocol.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-protocol.png new file mode 100644 index 000000000..103183af9 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-protocol.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-vol-create.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-vol-create.png new file mode 100644 index 000000000..06a3986e0 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-smb-vol-create.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-vol-review.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-vol-review.png new file mode 100644 index 000000000..7c3525808 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-04-vol-review.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-05-monitor-metrics.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-05-monitor-metrics.png new file mode 100644 index 000000000..5b0a308e2 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-05-monitor-metrics.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-configure-enabled.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-configure-enabled.png new file mode 100644 index 000000000..96685a7a1 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-configure-enabled.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-manual.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-manual.png new file mode 100644 index 000000000..4e8942e06 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-manual.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-policy-window-daily.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-policy-window-daily.png new file mode 100644 index 000000000..e65709071 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-policy-window-daily.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-assign.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-assign.png new file mode 100644 index 000000000..bdc31d4d0 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-assign.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-create.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-create.png new file mode 100644 index 000000000..99c567fb0 Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-create.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-delete.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-delete.png new file mode 100644 index 000000000..589d7adac Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/solution-06-backup-vault-delete.png differ diff --git a/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/virtual-network-qs-resources.png b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/virtual-network-qs-resources.png new file mode 100644 index 000000000..75381d40f Binary files /dev/null and b/03-Azure/01-03-Infrastructure/11_Azure_NetApp_Files_Microhack_VDI_AVD /walkthrough/img/virtual-network-qs-resources.png differ