Deploying high-performance, low-latency file storage using Azure NetApp Files
Hello and welcome to my presentation of Deploying high-performance low-latency file storage using Azure NetApp Files.
In this repo you will find the slide-deck used for the presetnation as well as the Terraform code used to deploy the demo lab.
Below is a list of things you will need to complete this lab.
- An Azure subscription, with credit available, it ain't free :)
- Please note - Not all regions support all ANF features, i.e UK West does not currently support ANF standard network features. Make sure, when you choose which region(s) you are going to be deploying into that those regions support your requirements.
- The Azure NetApp Files Resource Provider registered in your subscription. Link to do that HERE
- Azure CLI installed on your system.
- A code editor, I prefer VSCode, link HERE
- I also like to use GitHub Desktop, link HERE
- VSCode extensions help as well. I use Terraform, Azure CLI, Powershell, GitHub and few others.
- Latest version of Terraform installed (Windows users use x64 version), link HERE
- I use Chocolatey to manage my apps, link HERE
We are going to build out a lab using Terraform. The lab will include the following services and features.
- Resource Groups
- Virtual Networks
- Subnets
- Virtual Network Peers
- Virtual Machines
- Azure Keyvault
- ANF Accounts
- ANF Capacity Pools
- ANF Volumes
Below is a high-level visual overview of what we are going to deploy into Azure.
Next, we will go through the steps required to deploy the ANF Lab using Terraform and the code in this repo.
- Clone the Boston-Azure repo onto your system
- Open yout Terminal and browse to the directory where you downloaded the Terraform files
- Log in your Azure subscription. Type the command
az login
- If you are working with multiple subscription. Make sure the subscription you wish to use it set to
IsDefault
true
. You can check this by running the following commandaz account list -o table
. If you need to change the default subscription then run the follwing command.az account set --subscription "Your Subdscription Name"
- Next you need to initialise the Terraform working directory.
- Type the command
terraform init
- Create an execution plan. The plan will allow you to visualise your Terraform IaC deployment.
- Type the command
terraform plan
- Deploy, to execute the actions as defined as part of the 'plan' in the previous step.
- Type the command
terraform apply
- Once Terraform has completed its checks, you will be prompted to type
yes
to continue. Note: If you would like to suppress this request to continue, use the commandterraform apply --auto-approve
- Terraform will now start to deploy your code.
Once you have finished with your lab, you are going to want to remove the resources, afterall they do cost money! Terraform uses a tfstate file when it deploys. Providing you have not made any changes to your lab, Terraform will use this tfstate file to remove all resources.
- Type the command
terraform destroy
- Once Terraform has completed its checks, you will be prompted to type
yes
to continue. Note: If you would like to suppress this request to continue, use the commandterraform destroy --auto-approve
Thats it, you have now successfully deployed resources into Azure using Terraform.
I do hope this basic lab of deploying Azure NetApp Files with Terraform has been useful. Check out my other repo's for more Terraform examples.