Companies are looking to upgrade their Windows 7 SP1 or Windows 8.1 devices to Windows 10. There are now many methods to do this beyond the typical wipe and load scenario. Windows 10 offers an in-place upgrade method from Windows 7 SP1 (Pro or Ent) or Windows 8.1 (Pro or Ent) to Windows 10 Enterprise.
An in-place upgrade to Windows 10 essentially takes Microsoft’s ISO (unedited) and runs setup.exe inside the ISO. The ISO is usually approximately 4GB in size.
The question is, how do you get the bits down to the people, especially to remote people who may not go to an office or have a VPN connection to the office? One method could be to use Azure Blob storage. You can take the newest version of Windows 10 (from your VLSC), mount it using a Windows 8.1 or newer OS, select all the contents inside the ISO, and zip it. By doing this, you don’t have to worry about Windows 7 SP1 users needing a third party tool to mount the ISO.
Once you have the zip file, download AzCopy (AzCopy Information and download link can be found at https://azure.microsoft.com/en-us/documentation/articles/storage-use-azcopy/), and use it to transfer the zip file to your storage account container in Azure.
Ensure that the storage account container is set to “Public Blob” so that the URL for the blob can be accessed publically. You would send the users a link similar to “https://mvalerions.blob.core.windows.net/mvalerions/Win10ver1511updated.zip” which is the URL for the zipped file.
You then can create a batch file to send to the users in an email (since you don’t want your product key to be public), when they are ready to do the in-place upgrade to Windows 10.
Example batch file command:
“start /wait C:TempWin10ver1511updatedsetup.exe /auto upgrade /migratedrivers all /dynamicupdate enable /showoobe none /pkey <Company’s product key for Windows 10>”
The Windows setup.exe command line options can be found at https://msdn.microsoft.com/en-us/library/windows/hardware/dn938368%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396.
The costs associated with the outbound data transfer for the blob storage can be found at https://azure.microsoft.com/en-us/pricing/details/data-transfers/. Take into consideration the Zones that Azure mentions, as the price increases for the next level zone.
If you take into consideration 500 remote users in zone 1, for example.
500 users * 4GB = 2000GB
$0.087 per GB * 2000GB = $174 USD
$174 USD to send out the bits to 500 remote users in zone 1 is a lot cheaper than mailing USB sticks to those same users. The process is also much simpler.
Another option if there are many users geographically spread around the globe, is to use Azure’s CDN (content delivery network) in order to provide the zip file to the closest Azure datacenter where the user is physically located. More information about Azure’s CDN pricing can be found at https://azure.microsoft.com/en-us/pricing/details/cdn/.