Improve
Updates for Rock 6.0
No updates made.Updates for Rock 8.0
No updates made.Updates for Rock 9.0
No updates made.Updates for Rock 10.0
No updates made.Updates for Rock 17.0
No updates made.Updates for Rock 18.1
No updates made.
Introduction
So you've heard about Microsoft Azure's $3,500 annual hosting credit for non-profits and you'd
like to give it a try? Good news; those who have gone before you have clearly marked the path
to success. This guide will walk you through the steps to get Rock up and running with Azure.
First, though, let's go over a few things we need to know up front.
How Do I Receive My Credit?
The $3,500 credit allows you to "spend" up to $291 per month with approved Azure products,
and you'll be able to track your usage and remaining balance in regular statements. Although the
program expires one year after you set it up, Azure for Nonprofits has stated that they plan to
do an "annualized refresh," turning this into a perpetual donation. Thanks, Microsoft!
Prerequisites
Yes, prerequisites. While Azure's hosting credit is an exciting prospect and a good fit for many
organizations, it may not work for all. Take a look at this short list to see if it will work
for you.
-
Organizations must be nonprofit or non-governmental organizations with 501(c)(3) status
under the United States Internal Revenue Code.
-
Religious organizations are allowed.
What does that mean? It essentially means that you must be licensed as a 501(c)(3) or NGO and you must
be a US-based organization.
Recommended Set Ups
Here's where the work of our community has been essential in creating the guide path for setting
up an Azure for Nonprofits account. These specs are based on organization size, and maximize the
services you'll need for the credit you can receive.
Small and Medium Organizations
Fewer than 25,000 records
Server options:
- Azure A2 VM for IIS
- Azure S2 SQL Instance
Hybrid Use Benefit
If you already own Windows Datacenter Licenses, Hybrid Use Benefit can save you money. We won't go into the details here, but know that it's an option.
Set Up Steps
When setting up your server, follow these steps below: A, B, E, G, H.
Large Organizations
25,000 - 75,000 records
Server options:
- Azure D2 VM for IIS
- Azure D11 VM for Database Server
Choose Hybrid Use Benefit
We recommend using the Hybrid Use Benefit in this configuration. Please note that this
requires a Windows Server and SQL Server Licensing if you're using HUB.
Set Up Steps
When setting up your server, follow these steps below: A, B, C, D, F, G, H.
Largest Organizations
More than 75,000 records
Server options:
- Azure D3 VM for IIS
- Azure D12 VM for Database Server
Choose Hybrid Use Benefit
We recommend using the Hybrid Use Benefit in this configuration. Please note that this
requires a Windows Server and SQL Server Licensing if you're using HUB.
Set Up Steps
When setting up your server, follow these steps below: A, B, C, D, F, G, H.
Set Up Steps
A. Register for TechSoup
-
Register for a Microsoft TechSoup account
on their website.
-
Follow the directions to get set up.
-
To complete your registration, request your Validation Token from
on this page
by selecting New To TechSoup.org.
B. Register with Microsoft Philanthropies for the Azure credit
-
Register on the
Get Started page.
-
Sign in using your TechSoup Validation Token.
-
Register for the Azure Non-Profit Sponsorship.
-
(Optional) For a little extra help, set up a free online meeting with Microsoft Support
to get your Azure account set up.
-
(Optional) If you already have an Azure account, it is important that you submit a
support request to have them merge your Azure accounts (so you can use the credit with
your current setup).
C. (Optional) Purchase Windows Server 2016 and SQL Server 2016 Licenses from TechSoup
-
Find these products on the TechSoup site.
-
Browse products in the Microsoft Server Software and Licenses category. Find Windows
Server and SQL Server, and add them to your cart.
-
Check out with required information.
-
Downloads and product keys will appear in
Volume Licensing Service Center, or VLSC,
after the donation is processed.
D. (Optional) Create A Server Image Using Hyper-V
-
Create a new VM, or virtual machine, in Hyper-V using Windows Server 2012 R2 or Server 2016.
-
Sign in and prep the image as needed.
-
Open a command prompt window as an administrator. Change the directory to
%windir%\system32\sysprep, and then run sysprep.exe.
-
In the System Preparation Tool, select Enter System Out of Box Experience (OOBE)
and make sure that Generalize is checked. In Shutdown Options, select
Shutdown. Click OK.
-
The VM will shut down.
-
The .vdkx disk from Hyper-V needs to be converted to a .vdk.
Open PowerShell (PS) and type:
Convert-VHD –Path c:\rockdiskexample.vhdx –DestinationPath
c:\rockdiskexample.vhd
-
Start PS and log into Azure:
Add-AzureAccount
-
Set the location (For region names, see the
Azure Regions page.) For
example, in the Eastern United States, you would use this:
$location = "East US"
-
Create your storage account (Note that the name must be all lower case.)
New-AzureStorageAccount –StorageAccountName
"rockstorageaccount" -Location $location -Type "Standard_LRS"
-
Create a new container like this:
New-AzureStorageContainer -Name "RockDisks" -Permission Off
-
Upload the .vdk file you created. (Note that this may take a long time!)
Add-AzureVhd -Destination "https://rockstorageaccount.blob.
core.windows.net/RockDisks>/rockdiskexample.vhd" -LocalFilePath
-
Add the VM Image to Custom Image:
Add-AzureVMImage -ImageName "RockVMImage" -MediaLocation
"https://rockstorageaccount.blob.core.windows.net/RockDisks/rockdiskexample.vhd" -OS
"Windows"
E. Create a VM in Microsoft Azure with the Web Portal
-
Create a VM in the
web portal.
Microsoft's documentation of this process is excellent.
F. Create a VM in Microsoft Azure with PowerShell
This is required if you're using Hybrid Use Benefit.
-
Download and install Azure PowerShell.
-
Start PS and log into Azure:
Add-AzureAccount
-
Create a credential object. You'll be prompted for a username and password
(this is what you'll use to log into the VM). Please note that your username
cannot be your administrator.
$cred = Get-Credential
-
Set the location (For region names, see the
Azure Regions page.) For
example, in the Eastern United States, you would use this:
$location = "East US"
-
Set a resource group name and create the group.
$resourceGroupName = "RockResourceGroup"
New-AzureRmResourceGroup -Name $resourceGroupName -$location
-
Create a public static IP address.
$publicIPName = "RockPublicIp"
$publicIP = New-AzureRmPublicIpAddress -Name $publicIPName -ResourceGroupName $resourceGroupName -Location $location -AllocationMethod Static
-
Create and define the networking components.
$subnetName = "RockSubnet"
$nicName = "RockNic"
$vnetName = "RockVnet"
$subnetconfig = New-AzureRmVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/8
$vnet = New-AzureRmVirtualNetwork -Name $vnetName -ResourceGroupName $resourceGroupName -Location $location -AddressPrefix 10.0.0.0/8 -Subnet $subnetconfig
$nic = New-AzureRmNetworkInterface -Name $nicName -ResourceGroupName $resourceGroupName -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $publicIP.Id
-
Define the virtual machine name
$vmName = "Rock01"
-
Define the VM config. There are several sizes and options to consider. You can read
Microsoft's easy-to-follow guidelines
if you are unsure which option is best for you.
$vmConfig = New-AzureRmVMConfig -VMName $vmName -VMSize "Standard_D2_v2"
-
Add the NIC (network interface controller) to the VM.
$vm = Add-AzureRmVMNetworkInterface -VM $vm -Id $nic.Id
-
Define the storage account to use for the virtual hard disk, or VHD. (Please note that
this must already exist! If if it doesn't, see step D.9 above to create one.)
$storageAcc = Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -AccountName rockstorageaccount
-
Upload the VHD and attach it to the VM.
$osDiskName = "licensing.vhd"
$osDiskUri = '{0}vhds/{1}{2}.vhd' -f $storageAcc.PrimaryEndpoints.Blob.ToString(), $vmName.ToLower(), $osDiskName
$urlOfUploadedImageVhd = https://newpointeutil.blob.core.windows.net/newpointe-images/rock.vhd
$vm = Set-AzureRmVMOSDisk -VM $vm -Name $osDiskName -VhdUri $osDiskUri -CreateOption FromImage -SourceImageUri $urlOfUploadedImageVhd –Windows
-
Finally, create your VM and define the licensing type to utilize Azure Hybrid Use Benefit:
New-AzureRmVM -ResourceGroupName $resourceGroupName -Location $location -VM $vm -LicenseType Windows_Server
G. (Optional) Set up Azure SQL
If you decide to set up SQL, you can get started
here.
Microsoft has excellent documentation on this process.
Be sure to check out the rest of the Rock guides and manuals to help you get the most out of your
Rock experience.