Creating A Management Resource Group
The first thing we need to do is create a resource group to setup a Virtual Network. We will name this resource group "runwild-sitecore-management-rg". The purpose of this resource group will be to allow us to upload our Sitecore database backups, and base install files to Azure Storage.
Creating a Storage Container
Below is a PowerShell script to create a new storage account in our resource group, create a container within the storage account and upload a base install of Sitecore to our storage container. I have downloaded a version of Sitecore 8.2 and unzipped it into a directory. Uploading this will take several minutes. In addition to our base Sitecore installs, we will also be storing ARM templates and Powershell scripts for our machines in later steps.
Creating an Automation Account
Automation accounts will allow us to handle task such as vertical scaling of our CD servers, SQL Maintenance Plans, and turning machines and infrastructure on and off. We will also use automation plans to assist with deployments and testing. Automation plans in conjunction with Log Analytics can be used to create self healing environments based on your Sitecore logs.
Creating an Azure OMS Log Analytics Workspace
Our Log Analytics resource will allow us to attach agents to our Azure VMs for harvesting and analyzing logs. These logs include our Sitecore logs, IIS, System, Network Activity and more.
Creating Our Visual Studio Team Account
Team Projects need to be created in the Azure portal as it currently stands. The only relevant settings that you should stick with is using Git. Mainly because Git is the only reasonable main stream choice for version control. (commence flame/holy war)
Team Projects will provide us with the facilities to build our project, manage deployments, store our Git repo, and offer project management functionality.
Creating Our Key Vault
Azure Key Vault is a secure credential store. We will be using Key Vault to store passwords.
Creating Our Application Insights Workspace
Finally we will create out Application Insights Workspace. Application Insights will provide us with application and server monitoring functionality.