likely cheaper to install a regular Microsoft Azure Windows Server virtual machine
and then install SQL Server and use your own SQL license. If you need SQL Server
short term, such as for a specific project, then using the Microsoft Azure SQL image
with included SQL Server license is likely more cost-effective than buying a license.
There is an important point about virtual machines and how the billing works. Prior to
June 2013, a virtual machine was charged while it existed, whether it was running or
not. A big change was announced in June 2013 at TechEd related to Microsoft Azure—
stopped virtual machines would no longer be billed, and billing would be per minute
instead of rounded to the nearest hour. This makes it sound like all you have to do is
to shut down the virtual machine and you stop paying for it, but this is not the case.
There are two types of shutdowns for a Microsoft Azure IaaS VM. A virtual machine
can be stopped and it can be deallocated. It’s only when a virtual machine is
deallocated that billing stops, but this also affects the IP address of the virtual
machine.
If you stop a VM from within the guest OS of the VM, or you use the Stop-AzureRmVM
cmdlet with the -StayProvisioned parameter, the VM stays allocated in the Microsoft
Azure fabric. The VM still has reserved resources, and it will keep the IP address it was
dynamically assigned via DHCP (Dynamic IP, or DIP). A VM shut down this way is
considered stopped, but not deallocated, which means that it will continue to be billed.
Its status in the Microsoft Azure portal will show as Stopped.
If you stop a VM from the Microsoft Azure portal by using the Shut Down button, the
VM is actually deallocated from Microsoft Azure resources. It no longer has resources
reserved, and it loses its network configuration and therefore its IP address lease.
When you start the VM, it is reprovisioned in Microsoft Azure, resources are assigned,
a network adapter is added, and it gets a new IP lease, which means that its IP address
will change. This type of deprovisioning also happens when the Stop-AzureRmVM
cmdlet is used without the -StayProvisioned parameter. The VM will show as Stopped
(Deallocated) and VMs in this status will not incur any billing.
Here’s a summary:
Shutdown within the VM or Stop-AzureVM -StayProvisioned: Billing continues for
the VM, and it keeps resources reserved, including keeping its leased IP address.
Shutdown from Microsoft Azure portal or Stop-AzureVM without -StayProvisioned:
Billing stops for the VM, and all resources are deprovisioned, including network
adapters, which means that the IP address lease is lost.
This is critical to understand, because when using cloud services, you will use VMs
differently from how you use them on premises. On-premises VMs run 24/7—since
you have the hardware, why wouldn’t you run them all the time? If VMs are shut
down and consolidated, it would be possible to power down certain hosts, which
would save some electricity. However, the additional work required to orchestrate this
behavior and understanding of when services are required is not a worthwhile
investment of effort for 99.9 percent of organizations. In the cloud, the behavior has