Linux on Azure—a Strange Place to Find a Penguin

Taking Azure for a Spin

Using Microsoft Azure requires a free Windows Live account, as well as a credit card to open a charge account. If your employer participates in the Microsoft Developer Network (MSDN) program, you already may be entitled to a free quantity of Azure services every month. Once your account is set up, you can head to the management portal and start adding services.

The Azure control panel is, quite simply, gorgeous. Perhaps pretty controls are not a big selling point for a cloud service, but the Azure interface is marvelously interactive. As you set up services, messages on the status of operations appear at the bottom of the screen asynchronously. Performance graphs and history are integrated into the display, and the panel feels much more like a desktop app than a "click-submit-and-wait" Web interface.

Figure 1. The Azure management portal is easy to use and attractively designed.

Figure 2. The Azure portal displays task message and status.

Azure offers several flavors of Linux: CentOS 6.2, Ubuntu 12.04, SUSE Linux Enterprise Server and OpenSUSE 12.1. It's possible to roll your own image and upload it, but this requires working with Microsoft's Hyper-V server product, which is something the average Linux user is unlikely to have handy.

Figure 3. Five different Linux options are offered when creating a VM.

For this article, I create a CentOS 6.2 VM called "penguin1". A DNS name is created automatically for the VM in the domain, which then can be CNAME'd if you own your own domain.

Figure 4. Setting Up penguin1 in Azure

VMs are not directly exposed to the Internet, but rather are given 10.x IP addresses. Inside the Azure panel, users then can configure endpoints to open firewall ports and map them as they like. For example, to set up a Web server, it's necessary to create a port 80 (and perhaps 443) endpoint, which can be mapped to any port desired on the VM.

Figure 5. Adding a Network Endpoint to Set Up a Web Server

This network firewall is a nice security feature. By default, only port 22 (SSH) is configured. If you intend to change your default SSH port (as often is done to prevent script-kiddie scanning), you'll need to change the endpoint in the Azure management portal as well. You also have the option of changing it in the management portal and mapping it back to 22 on the VM.

Creating "From Gallery" gives you the most options for creation. After supplying basic information, such as name and size, provisioning begins immediately and takes about ten minutes to complete in my experience.


Andrew Fabbro is a senior technologist living in the Portland, Oregon, area. He's used Linux since Slackware came on floppies and presently works for Con-way, a Fortune 500 transportation company.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Engine Yard PaaS for Azure

Mike Mersch's picture

Thank you for this very informative post Andrew. Since this post Engine Yard, a leading OSS PaaS, formed a partnership with Windows Azure to provide an additional level of managed services for Developers choosing to take advantage of your advice. Ruby, PHP and Node.JS apps running on Linux, on Azure, is a great choice for cloud based web and mobile apps.

Thank you for the effort you

distribution prospectus paris's picture

Thank you for the effort you have made in creating this blog, better shared information that's also one of the values ​​of democracy ... if I can do anything to help this site I'd be happy .. Good luck!

Voyance gratuite par mail

Both EC2 and Azure are

Joe Borg's picture

Both EC2 and Azure are extremely expensive, for what you get. No one seems to be jumping on Digital Ocean's bandwagon. I've been using them for about 6 months now and a foot has not been put wrong.

Windows Azure now "General Availability" with Microsoft SLA

Mark Sorenson's picture

Scott Guthrie's Blog

Thanks Andrew for the review of Windows Azure and Linux. FYI, very recently (April 16) Microsoft announced General Availability of Windows Azure Infrastructure Services (i.e. Linux and Windows Virtual Machines, Virtual Network). This means users can now run their Virtual Machines in full production with a Service Level Agreement backed by Microsoft. As part of General Availability, new sizes are available for both Linux and Windows Virtual Machines. More info available at the Scott Guthrie Blog, link above.

Mark Sorenson
Product Planner for Infrastructure Services (IaaS, PaaS, Virtual Networks)
Windows Azure, Microsoft Corporation

Reply to comment | Linux Journal

Guides To Israel's picture

Hello there, I believe your blog may be having web
browser compatibility problems. Whenever I take a look at your blog in Safari, it looks fine but when opening in Internet Explorer,
it has some overlapping issues. I simply wanted to provide you with a quick heads up!
Other than that, great blog!