Welcome!

Linux Authors: Hovhannes Avoyan, Bernard Golden, Pat Romanski, Carmen Gonzalez, Elizabeth White

Related Topics: Virtualization, .NET, Linux, Open Source, Silverlight, Cloud Expo, Apache

Virtualization: Blog Post

Step-by-Step: Build Linux VMs in the Cloud with Windows Azure

Windows Azure Virtual Machines provides Linux and Windows VM support

The Windows Azure Infrastructure as a Service (IaaS) offering supports running Windows virtual machines and Linux virtual machines in the Cloud. In this article, I provide step-by-step guidance for running a new Linux virtual machine in the cloud using our Windows Azure platform.

Linux?

That’s right, Linux!

Windows Azure runs Linux VMs as a first-class citizen on our cloud platform, with support in the Preview offering for four common Linux distributions:

  • SUSE Linux Enterprise Server (SLES) 11 SP2
  • OpenSUSE 12.1
  • CentOS 6.3
  • Ubuntu 12..04.1 and 12.10

The best news is … you can try this out for FREE by signing up for a FREE Windows Azure 90-day Trial of our Virtual Machine Preview.

NOTE: When activating your FREE Trial for Windows Azure, you will be prompted for credit card information.  This information is used only to validate your identity and your credit card will not be charged, unless you explicitly convert your FREE Trial account to a paid subscription at a later point in time.

What about custom Linux images?

If the standard Linux platform images don’t meet your exact needs, there’s several options for leveraging or customizing other images for Windows Azure VMs …

  • We’ve recently announced our own Open Source VM Depot for Linux images for Windows Azure VMs. 
  • SUSE Studio provides integrated Windows Azure support for deploying customized SLES and OpenSUSE images directly to Windows Azure.  You’ll need to enable support for Windows Azure deployment under your SUSE Studio Account Settings by activating “Experimental Features”  after registering on the SUSE Studio site.
  • We also provide step-by-step guidance for preparing your own Linux images for use with Windows Azure if you need further customization flexibility.

Step-by-Step: Build a Linux Apache Web Server VM in the Windows Azure Cloud
In this scenario, we’ll work through the process of provisioning a new Linux Apache web server running SUSE Linux Enterprise Server 11 SP2 in a virtual machine on the Windows Azure cloud platform.

  1. To prepare your Windows Azure environment, make sure you’ve first completed all steps in our Getting Started article.
  2. After you’ve provisioned a new Linux virtual machine, we’ll be configuring it via a remote Secure Shell (SSH) console session.  If you don’t already have an SSH client installed on your PC, I highly recommend PuTTY.  Download PuTTY and install it before proceeding.
  3. Open Internet Explorer and browse to https://manage.windowsazure.com/ to enter the Windows Azure portal. Then, log in with your credentials.

  4. In the menu located at the bottom, select New | Compute | Virtual Machine | From Gallery to start creating a new virtual machine.

    creating-a-new-virtual-machine
    Creating a new Virtual Machine

  5. On the VM OS Selection page, click Platform Images on the left menu and select the SUSE Linux Enterprise Server 11 SP2 OS image from the list. Click the Next button to continue.

  6. On the Virtual Machine Configuration page, specify a unique Virtual Machine Name and Administrative Password to be provisioned for the new VM. 

    image
    Virtual Machine Configuration

    Note: It is suggested to use secure passwords for administrative users and service accounts, as Windows Azure virtual machines could be accessible from the Internet knowing just their public DNS host names.  You can also read this document on the Microsoft Security website that will help you select a secure password: http://www.microsoft.com/security/online-privacy/passwords-create.aspx.

    Record the username and password information that you’ve entered above for use when remotely connecting to this new virtual machine later in this step-by-step guide.

    Click the Next button to continue.

  7. On the Virtual Machine Mode page, specify a unique public DNS host name that you’ll use to initially access this new VM remotely.  For the Storage Account and Region/Affinity Group/Virtual Network fields, select the storage account and affinity group that you previously created in the Getting Started article.

    Click the Next button to continue.

    image
    Virtual Machine Mode

    Record the public DNS hostname for testing this new virtual machine after the configuration steps are complete.

  8. On the Virtual Machine Options page, accept the default values and click the Checkmark button to begin provisioning your new virtual machine.

    image
    Virtual Machine Options

  9. You will be returned to the Virtual Machines page and your new virtual machine will be listed with a status of Starting (Provisioning) while it is being initially provisioned on the Windows Azure cloud platform.

    image
    Provisioning a New Virtual Machine

    As the new virtual machine is being provisioned, you will see the Status column on the Virtual Machines page of the Windows Azure Management Portal cycle through several values including Stopped, Stopped (Provisioning), and Running (Provisioning).  When provisioning for this new Virtual Machine is completed, the Status column will display a value of Running and you may continue with the next step in this guide.

  10. After the new virtual machine has finished provisioning, click on the Name of the new Virtual Machine displayed on the Virtual Machines page of the Windows Azure Management Portal. This will navigate to a Dashboard page for this new virtual machine.

    image
    Virtual Machine Dashboard

  11. On the Virtual Machine Dashboard page, make note of the SSH Details.  You’ll use this information to connect to the new virtual machine remotely via an SSH client to configure the Apache web server daemon.

  12. On the Virtual Machine Dashboard page, click on the Endpoints link located in the top navigation area of this page.  This will navigate to the Endpoints page for this virtual machine, listing all firewall endpoint traffic that is currently permitted inbound to this virtual machine.

    image
    Virtual Machine Endpoints

    Note that SSH traffic has automatically been permitted inbound to this new Linux virtual machine, but no other network traffic is permitted by default.  In the next two steps, we’ll add a new endpoint to permit inbound web http traffic to our virtual machine.

  13. On the Virtual Machine Endpoints page, click the +Add Endpoint button located on the bottom toolbar of this page.  This will launch the Add Endpoint wizard.

    image
    Add Endpoint Wizard

    Click the Next button to continue.

  14. On the Specify the details of the endpoint wizard page, enter a name ( web-http ), a public port ( 80 ) and a private port ( 80 ) in the respective fields. 

    image
    Specify the Details of the Endpoint

    Click the Checkmark button to provision the new endpoint.

  15. On your PC, launch an SSH client, such as PuTTY, and establish a new remote SSH session to your virtual machine using the SSH details recorded in Step 9 above in the Host Name and Port fields of the SSH connection properties.

    image
    Establish a new Remote SSH Session with PuTTY

    Click the Open button to establish a remote SSH session to your virtual machine.

  16. Because this is the first time connecting to this virtual machine, you may be presented with a Security Alert dialog box prompting you to accept the host key for securing this SSH session.  

    image
    PuTTY Security Alert during First-Time SSH Connection

    Click the Yes button to accept this host key into your SSH client cache and continue with establishing the connection.

  17. In the new SSH session window, authenticate with the Username and Password information recorded above in Step 4 above.

    image
    SSH Session Window

  18. In the SSH session window, enter the following command to elevate your session for performing root-level administrative commands:

    sudo su -

    When prompted, confirm your identity by re-entering the same Password used to authenticate in Step 17 above.

  19. In the SSH session window, install the packages needed for running the YaST2 setup and configuration tool by entering each of the following commands, pressing ENTER after each line:

    zypper install yast2
    zypper install yast2-ncurses
    zypper install yast2-ncurses-pkg
    zypper install yast2-qt
    zypper install yast2-packager
    zypper install yast2-runlevel
    zypper install yast2-network
    zypper install yast2-http-server

  20. In the SSH session window, launch the YaST2 setup and configuration tool by entering the following command:

    yast2

    This will launch the YaST2 Control Center menu-based setup and configuration tool.

    image
    YaST2 Control Center

  21. In the YaST2 Control Center, press ENTER on the Software menu choice and then select Software Management by pressing ENTER again. This will launch the YaST2 Software Management tool shown below.

    image
    YaST2 Software Management

  22. In the YaST2 Software Management tool, press ALT+F to change the Filter type, select Patterns using your arrow keys and press ENTER.

    image
    Selecting a Pattern Filter

  23. In the YaST2 Software Management tool, press TAB to switch your cursor focus to the Patterns List and scroll down using your arrow keys until Web and LAMP Server is highlighted.

    image
    Selecting the Web and Lamp Server Pattern Filter

  24. In the YaST2 Software Management tool, press ALT+T to open the Actions menu, then press ALT+A to select All Listed Packages, then press ALT+I to select the option to Install All.  After this is completed, a + ( plus sign ) should appear next to each of the 9 selected packages.

    image
    Selecting to Install All Packages in the Web and Lamp Server Pattern Filter

  25. In the YaST2 Software Management tool, press ALT+A to start the installation. Press ENTER when prompted for confirmation. 

    image
    Performing the Web and Lamp Server Package Installation

    Once the installation is complete, the YaST2 Control Center main menu will appear again.

  26. In the YaST2 Control Center main menu, use arrow keys to select Network Services –> HTTP Server to configure the newly installed Web server.

    image
    Selecting the HTTP Server Wizard Configuration Tool

    Press ENTER on the HTTP Server menu selection.

  27. In the HTTP Server Wizard, press F10 on each screen of the wizard to accept default configuration values and finish the wizard. 

    image
    HTTP Server Configuration Wizard

    Once the configuration process is complete, the YaST2 Control Center main menu will appear again.

  28. In the YaST2 Control Center main menu, use arrow keys to select System –> System Services (Runlevel) to start the Web server.

    image
    Selecting System Services (Runlevel) to Start Web Server

    Press ENTER on the System Services (Runlevel) menu selection.

  29. In the YaST2 System Services (Runlevel) tool, use arrow keys to select apache2 in the Service list.  Press ALT+E to enable and start the Apache HTTP daemon.

    image
    Enabling the Apache Web Daemon

  30. In the YaST2 System Services (Runlevel) tool, after the Apache Web Daemon is started, press ENTER and then ALT+O to accept the new Runlevel changes.

    image
    Accepting the Runlevel Changes

    Press ENTER to confirm that changes will be saved.

We’re done! Let’s test it!

After the above steps are completed, the Apache Web Daemon will be running on SUSE Linux Enterprise Server 11 SP2 in a virtual machine on the Windows Azure cloud platform.

  • Test the new virtual machine by opening a new browser window and navigating to:

    http://<public_DNS_hostname>.cloudapp.net

    Use the public DNS hostname value recorded in Step 7 above.

    image
    Testing the Linux HTTP Web Server VM

What’s Next? Keep Building!

Learn more about Windows Azure Virtual Machines with this FREE online training:

In addition to running Linux virtual machines on the Windows Azure cloud platform, did you know that Windows Server 2012 Hyper-V and our FREE Hyper-V Server 2012 products support running Linux virtual machines in your on-premise data center?

  • Do It: Learn more about these products at:
    • Build your Windows Server 2012 Lab
    • Join our FREE Early Experts Virtualizer Knowledge Quest
    • Build a FREE Hyper-V Server 2012 cluster
    • Download Linux Integration Services for Hyper-V

Which Linux workloads are you planning to virtualize?

Feel free to leave your comments below with your thoughts, questions and ideas for virtualizing Linux workloads on the Windows Azure cloud platform, Windows Server 2012 and our FREE Hyper-V Server 2012.

Keith

Build Your Lab! Build Your Lab! Download Windows Server 2012
Build Your Lab in the Cloud! Don’t Have a Lab? Build Your Lab in the Cloud with Windows Azure Virtual Machines
Join our "Early Experts" study group! Want to Get Certified? Join our Windows Server 2012 "Early Experts" Study Group

More Stories By Keith Mayer

Keith Mayer is a Technical Evangelist at Microsoft focused on Windows Infrastructure, Data Center Virtualization, Systems Management and Private Cloud. Keith has over 17 years of experience as a technical leader of complex IT projects, in diverse roles, such as Network Engineer, IT Manager, Technical Instructor and Consultant. He has consulted and trained thousands of IT professionals worldwide on the design and implementation of enterprise technology solutions.

Keith is currently certified on several Microsoft technologies, including System Center, Hyper-V, Windows, Windows Server, SharePoint and Exchange. He also holds other industry certifications from IBM, Cisco, Citrix, HP, CheckPoint, CompTIA and Interwoven.

Keith is the author of the IT Pros ROCK! Blog on Microsoft TechNet, voted as one of the Top 50 "Must Read" IT Blogs.

Keith also manages the Windows Server 2012 "Early Experts" Challenge - a FREE online study group for IT Pros interested in studying and preparing for certification on Windows Server 2012. Join us and become the next "Early Expert"!

@ThingsExpo Stories
We heard for many years how developing nations would be able to develop mobile-phone networks quickly, perhaps even leapfrog developed nations, because their lack of traditional, wired networks would not inhibit them from deploying the new technology. Now there is talk of history repeating itself with the Industrial Internet--a key aspect of the emerging Internet of Things. For example, Guo Ping, Deputy Chairman of the Board of Chinese electronics giant Huawei, said in a recent report from the World Economic Forum, "The Industrial Internet will afford emerging markets a unique opportunity ...
Avnet, Inc. has announced that it ranked No. 4 on the InformationWeek Elite 100 – a list of the top business technology innovators in the U.S. Avnet was recognized for the development of an innovative cloud-based training system that serves as the foundation for Avnet Academy – the company’s education and training organization focused on technical training around top IT vendor technologies. The development of this system allowed Avnet to quickly expand its IT-related training capabilities around the world, while creating a new service that Avnet and its IT solution providers can offer to their...
Ayla Networks, whose agile Internet of Things (IoT) platform makes it easy for manufacturers to deliver secure, connected products, today announced it has been included in the list of "Cool Vendors" in the Internet of Things report by Gartner, Inc. “Gartner knows how important it is that manufacturers of all kinds of products have the right IoT solution to help turn their products into connected ‘things,’” said David Friedman, CEO and co-founder of Ayla Networks. “The market for Ayla’s IoT platform has accelerated dramatically this year compared to last year. Today’s largest manufacturers ar...
SYS-CON Events announced today that B2Cloud, a provider of enterprise resource planning software, will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY. B2cloud develops the software you need. They have the ideal tools to help you work with your clients. B2Cloud’s main solutions include AGIS – ERP, CLOHC, AGIS – Invoice, and IZUM
The Internet of Things Maturity Model (IoTMM) is a qualitative method to gauge the growth and increasing impact of IoT capabilities in an IT environment from both a business and technology perspective. In his session at @ThingsExpo, Tony Shan will first scan the IoT landscape and investigate the major challenges and barriers. The key areas of consideration are identified to get started with IoT journey. He will then pinpoint the need of a tool for effective IoT adoption and implementation, which leads to IoTMM in which five maturity levels are defined: Advanced, Dynamic, Optimized, Primitive,...
SYS-CON Events announced today that MangoApps will exhibit at SYS-CON's 16th International Cloud Expo®, which will take place on June 9-11, 2015, at the Javits Center in New York City, NY., and the 17th International Cloud Expo®, which will take place on November 3–5, 2015, at the Santa Clara Convention Center in Santa Clara, CA. MangoApps provides private all-in-one social intranets allowing workers to securely collaborate from anywhere in the world and from any device. Social, mobile, and easy to use. MangoApps has been named a "Market Leader" by Ovum Research and a "Cool Vendor" by Gartner...
The world's leading Cloud event, Cloud Expo has launched Microservices Journal on the SYS-CON.com portal, featuring over 19,000 original articles, news stories, features, and blog entries. DevOps Journal is focused on this critical enterprise IT topic in the world of cloud computing. Microservices Journal offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. Follow new article posts on Twitter at @MicroservicesE
Containers and microservices have become topics of intense interest throughout the cloud developer and enterprise IT communities. Accordingly, attendees at the upcoming 16th Cloud Expo at the Javits Center in New York June 9-11 will find fresh new content in a new track called PaaS | Containers & Microservices Containers are not being considered for the first time by the cloud community, but a current era of re-consideration has pushed them to the top of the cloud agenda. With the launch of Docker's initial release in March of 2013, interest was revved up several notches. Then late last...
There is no doubt that Big Data is here and getting bigger every day. Building a Big Data infrastructure today is no easy task. There are an enormous number of choices for database engines and technologies. To make things even more challenging, requirements are getting more sophisticated, and the standard paradigm of supporting historical analytics queries is often just one facet of what is needed. As Big Data growth continues, organizations are demanding real-time access to data, allowing immediate and actionable interpretation of events as they happen. Another aspect concerns how to deliver ...
WebRTC defines no default signaling protocol, causing fragmentation between WebRTC silos. SIP and XMPP provide possibilities, but come with considerable complexity and are not designed for use in a web environment. In his session at @ThingsExpo, Matthew Hodgson, technical co-founder of the Matrix.org, discussed how Matrix is a new non-profit Open Source Project that defines both a new HTTP-based standard for VoIP & IM signaling and provides reference implementations.
So I guess we’ve officially entered a new era of lean and mean. I say this with the announcement of Ubuntu Snappy Core, “designed for lightweight cloud container hosts running Docker and for smart devices,” according to Canonical. “Snappy Ubuntu Core is the smallest Ubuntu available, designed for security and efficiency in devices or on the cloud.” This first version of Snappy Ubuntu Core features secure app containment and Docker 1.6 (1.5 in main release), is available on public clouds, and for ARM and x86 devices on several IoT boards. It’s a Trend! This announcement comes just as...
The security devil is always in the details of the attack: the ones you've endured, the ones you prepare yourself to fend off, and the ones that, you fear, will catch you completely unaware and defenseless. The Internet of Things (IoT) is nothing if not an endless proliferation of details. It's the vision of a world in which continuous Internet connectivity and addressability is embedded into a growing range of human artifacts, into the natural world, and even into our smartphones, appliances, and physical persons. In the IoT vision, every new "thing" - sensor, actuator, data source, data con...
The WebRTC Summit 2015 New York, to be held June 9-11, 2015, at the Javits Center in New York, NY, announces that its Call for Papers is open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 16th International Cloud Expo, @ThingsExpo, Big Data Expo, and DevOps Summit.
SYS-CON Events announced today the IoT Bootcamp – Jumpstart Your IoT Strategy, being held June 9–10, 2015, in conjunction with 16th Cloud Expo and Internet of @ThingsExpo at the Javits Center in New York City. This is your chance to jumpstart your IoT strategy. Combined with real-world scenarios and use cases, the IoT Bootcamp is not just based on presentations but includes hands-on demos and walkthroughs. We will introduce you to a variety of Do-It-Yourself IoT platforms including Arduino, Raspberry Pi, BeagleBone, Spark and Intel Edison. You will also get an overview of cloud technologies s...
The Internet of Things is not new. Historically, smart businesses have used its basic concept of leveraging data to drive better decision making and have capitalized on those insights to realize additional revenue opportunities. So, what has changed to make the Internet of Things one of the hottest topics in tech? In his session at @ThingsExpo, Chris Gray, Director, Embedded and Internet of Things, discussed the underlying factors that are driving the economics of intelligent systems. Discover how hardware commoditization, the ubiquitous nature of connectivity, and the emergence of Big Data a...
SYS-CON Media announced today that @WebRTCSummit Blog, the largest WebRTC resource in the world, has been launched. @WebRTCSummit Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @WebRTCSummit Blog can be bookmarked ▸ Here @WebRTCSummit conference site can be bookmarked ▸ Here
Scott Jenson leads a project called The Physical Web within the Chrome team at Google. Project members are working to take the scalability and openness of the web and use it to talk to the exponentially exploding range of smart devices. Nearly every company today working on the IoT comes up with the same basic solution: use my server and you'll be fine. But if we really believe there will be trillions of these devices, that just can't scale. We need a system that is open a scalable and by using the URL as a basic building block, we open this up and get the same resilience that the web enjoys.
In his session at WebRTC Summit, Peter Dunkley, Technical Director at Acision, will look at creating interactive communications via the web by adding messaging, file transfer, and group communication (group chat and audio/video conferencing) into the web experience. He will also discuss potential applications of this technology in areas including B2B, B2C, P2P, and gaming. Peter Dunkley is Technical Director at Acision. He graduated from The University of Edinburgh in 2000 with a BSc (Hons) in Computer Science. After graduation Peter worked on a PSTN switch developing signalling stacks for SS...
It's time to put the "Thing" back in IoT. Whether it’s drones, robots, self-driving cars, ... There are multiple incredible examples of the power of IoT nowadays that are shadowed by announcements of yet another twist on statistics, databases, .... Sorry, I meant, Big Data(TM), tiered storage(TM), complex systems(TM), smart nations(TM), .... In his session at WebRTC Summit, Dr Alex Gouaillard, CTO and Co-Founder of Temasys, will discuss the concrete, cool, examples of IoT already happening today, and how mixing all those different sources of visual and audio input can make your life happier ...
What exactly is a cognitive application? In her session at 16th Cloud Expo, Ashley Hathaway, Product Manager at IBM Watson, will look at the services being offered by the IBM Watson Developer Cloud and what that means for developers and Big Data. She'll explore how IBM Watson and its partnerships will continue to grow and help define what it means to be a cognitive service, as well as take a look at the offerings on Bluemix. She will also check out how Watson and the Alchemy API team up to offer disruptive APIs to developers.