Welcome!

Apache Authors: Liz McMillan, Elizabeth White, Pat Romanski, John Mertic, Janakiram MSV

Related Topics: Containers Expo Blog, Microsoft Cloud, Linux Containers, Open Source Cloud, Silverlight, @CloudExpo, Apache

Containers Expo Blog: 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
The cloud market growth today is largely in public clouds. While there is a lot of spend in IT departments in virtualization, these aren’t yet translating into a true “cloud” experience within the enterprise. What is stopping the growth of the “private cloud” market? In his general session at 18th Cloud Expo, Nara Rajagopalan, CEO of Accelerite, explored the challenges in deploying, managing, and getting adoption for a private cloud within an enterprise. What are the key differences between wh...
"Tintri was started in 2008 with the express purpose of building a storage appliance that is ideal for virtualized environments. We support a lot of different hypervisor platforms from VMware to OpenStack to Hyper-V," explained Dan Florea, Director of Product Management at Tintri, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
The security needs of IoT environments require a strong, proven approach to maintain security, trust and privacy in their ecosystem. Assurance and protection of device identity, secure data encryption and authentication are the key security challenges organizations are trying to address when integrating IoT devices. This holds true for IoT applications in a wide range of industries, for example, healthcare, consumer devices, and manufacturing. In his session at @ThingsExpo, Lancen LaChance, vic...
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.
Big Data, cloud, analytics, contextual information, wearable tech, sensors, mobility, and WebRTC: together, these advances have created a perfect storm of technologies that are disrupting and transforming classic communications models and ecosystems. In his session at @ThingsExpo, Erik Perotti, Senior Manager of New Ventures on Plantronics’ Innovation team, provided an overview of this technological shift, including associated business and consumer communications impacts, and opportunities it m...
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...
WebRTC is bringing significant change to the communications landscape that will bridge the worlds of web and telephony, making the Internet the new standard for communications. Cloud9 took the road less traveled and used WebRTC to create a downloadable enterprise-grade communications platform that is changing the communication dynamic in the financial sector. In his session at @ThingsExpo, Leo Papadopoulos, CTO of Cloud9, discussed the importance of WebRTC and how it enables companies to focus o...
Big Data engines are powering a lot of service businesses right now. Data is collected from users from wearable technologies, web behaviors, purchase behavior as well as several arbitrary data points we’d never think of. The demand for faster and bigger engines to crunch and serve up the data to services is growing exponentially. You see a LOT of correlation between “Cloud” and “Big Data” but on Big Data and “Hybrid,” where hybrid hosting is the sanest approach to the Big Data Infrastructure pro...
In his General Session at 16th Cloud Expo, David Shacochis, host of The Hybrid IT Files podcast and Vice President at CenturyLink, investigated three key trends of the “gigabit economy" though the story of a Fortune 500 communications company in transformation. Narrating how multi-modal hybrid IT, service automation, and agile delivery all intersect, he will cover the role of storytelling and empathy in achieving strategic alignment between the enterprise and its information technology.
Buzzword alert: Microservices and IoT at a DevOps conference? What could possibly go wrong? In this Power Panel at DevOps Summit, moderated by Jason Bloomberg, the leading expert on architecting agility for the enterprise and president of Intellyx, panelists peeled away the buzz and discuss the important architectural principles behind implementing IoT solutions for the enterprise. As remote IoT devices and sensors become increasingly intelligent, they become part of our distributed cloud enviro...
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place June 6-8, 2017, at the Javits Center in New York City, New York, is co-located with 20th Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry p...
"LinearHub provides smart video conferencing, which is the Roundee service, and we archive all the video conferences and we also provide the transcript," stated Sunghyuk Kim, CEO of LinearHub, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Things are changing so quickly in IoT that it would take a wizard to predict which ecosystem will gain the most traction. In order for IoT to reach its potential, smart devices must be able to work together. Today, there are a slew of interoperability standards being promoted by big names to make this happen: HomeKit, Brillo and Alljoyn. In his session at @ThingsExpo, Adam Justice, vice president and general manager of Grid Connect, will review what happens when smart devices don’t work togethe...
"There's a growing demand from users for things to be faster. When you think about all the transactions or interactions users will have with your product and everything that is between those transactions and interactions - what drives us at Catchpoint Systems is the idea to measure that and to analyze it," explained Leo Vasiliou, Director of Web Performance Engineering at Catchpoint Systems, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York Ci...
The 20th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held June 6-8, 2017, at the Javits Center in New York City, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Containers, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportunity. Submit your speaking proposal ...
Discover top technologies and tools all under one roof at April 24–28, 2017, at the Westin San Diego in San Diego, CA. Explore the Mobile Dev + Test and IoT Dev + Test Expo and enjoy all of these unique opportunities: The latest solutions, technologies, and tools in mobile or IoT software development and testing. Meet one-on-one with representatives from some of today's most innovative organizations
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in Embedded and IoT solutions, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 7-9, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/Big Data, HPC and E...
SYS-CON Events announced today that Linux Academy, the foremost online Linux and cloud training platform and community, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Linux Academy was founded on the belief that providing high-quality, in-depth training should be available at an affordable price. Industry leaders in quality training, provided services, and student certification passes, its goal is to c...
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.