Windows Azure now supports 4 flavors of Linux and 5 VM sizes. Microsoft embraces Linux in order to see their cloud computing platform adopted, and promises even more support for other OSes and all programming languages.
Rumors circulated in January that Microsoft was enabling Linux on their cloud platform, Red Hat being mentioned as the flavor that would run on Azure. It turns out that the rumors were at least partially true. Microsoft has enabled Linux on Azure, but not Red Hat Linux.
Scott Guthrie, CVP Windows Azure, Application Platform, has recently announced a plethora of new features and enhancements to their cloud solution starting with a new touch-optimized interface for the Azure portal, running in all browsers (no Silverlight), and a 3-months free trial for those who want to see how the new Microsoft cloud works. Guthrie dubbed Azure as the platform for any OS, programming language, database and tool with a global distribution of their data centers and a 99.95% monthly SLA. Also, all Azure SDKs will be made available over GitHub under an Apache 2 license.
While Microsoft has a long way until it implements all the features mentioned, an important step has been made: Azure supports 4 flavors of Linux besides 4 Windows editions:
- Microsoft SQL Server 2012 running on Windows Server 2008 R2
- Windows Server 2008 R2 SP1
- Windows Server 2012 RC
- Windows Server 8 – currently not available
- OpenLogic CentOS 6.2
- SUSE Linux Enterprise Server 11 SP2
- Ubuntu Server 12.04 LTS
- Open SUSE 12.1
While the portal provides pre-built VM images to use, the user has the option to create and load custom Windows or Linux VHDs, the operation requiring the Hyper-V Manager included in Windows Server and some command-line tools: CSUpload or Windows Azure Command-Line Tools for Linux and Mac. The documentation is not very clear, but it seems that Linux images can be created on a Linux machine without Hyper-V Manager.
The VMs available start with XS and shared CPU, up to XL-8 cores, as shown in the following table:
Virtual Machine Size | CPU Cores | Memory | Temporary Storage Space | Disk Space for Local Storage Resources |
---|---|---|---|---|
Extra Small |
Shared |
768 MB |
20 GB |
20 GB |
Small |
1 |
1.75 GB |
50 GB |
20 GB |
Medium |
2 |
3.5 GB |
100 GB |
100 GB |
Large |
4 |
7 GB |
200 GB |
200 GB |
Extra Large |
8 |
14 GB |
400 GB |
400 GB |
Each VM can have attached a number of disks for storing data, and communicates with other VMs through endpoints, which are simply TCP or UDP ports that can be configured individually. Multiple VMs can be load balanced. Setting up a Linux XS machine took about 4 minutes in our tests, somewhat longer than on AWS. But we should mention that the features are still in preview.
The documentation also explains how to set up a LAMP Stack, MySQL, and MongoDB on a Linux VM. It is expected that Azure will support other flavor of Linux, especially Red Hat.
Programming can be done in .NET, Node.js, PHP, Java, and Python on Windows, Mac and Linux, exception making .NET development supported only via VS 2010 and VS 2012 on Windows.
It seems that Microsoft no longer sees Linux as a threat on the server, but it rather embraces it in order to see their cloud platform adopted by as many as possible. This move shows the importance of cloud computing for the Redmond software maker.