| By Keith Mayer | Article Rating: |
|
| January 12, 2013 05:00 PM EST | Reads: |
4,483 |
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.
- Do It: Sign up for your FREE Windows Azure 90-Day Trial Account so that you can follow along with the steps in this article.
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.
- To prepare your Windows Azure environment, make sure you’ve first completed all steps in our Getting Started article.
- 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.
-
Open Internet Explorer and browse to https://manage.windowsazure.com/ to enter the Windows Azure portal. Then, log in with your credentials.
-
In the menu located at the bottom, select New | Compute | Virtual Machine | From Gallery to start creating a new virtual machine.
-
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
button to continue. -
On the Virtual Machine Configuration page, specify a unique Virtual Machine Name and Administrative Password to be provisioned for the new VM.
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
button to continue. -
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
button to continue.
Virtual Machine Mode
Record the public DNS hostname for testing this new virtual machine after the configuration steps are complete. -
On the Virtual Machine Options page, accept the default values and click the
button to begin provisioning your new virtual machine.
Virtual Machine Options -
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.
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. -
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.
Virtual Machine Dashboard -
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.
-
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.
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. -
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.
Add Endpoint Wizard
Click the
button to continue. -
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.
Specify the Details of the Endpoint
Click the
button to provision the new endpoint. -
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.
Establish a new Remote SSH Session with PuTTY
Click the Open button to establish a remote SSH session to your virtual machine. -
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.
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. -
In the new SSH session window, authenticate with the Username and Password information recorded above in Step 4 above.
SSH Session Window -
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. -
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 -
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.
YaST2 Control Center -
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.
YaST2 Software Management -
In the YaST2 Software Management tool, press ALT+F to change the Filter type, select Patterns using your arrow keys and press ENTER.
Selecting a Pattern Filter -
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.
Selecting the Web and Lamp Server Pattern Filter -
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.
Selecting to Install All Packages in the Web and Lamp Server Pattern Filter -
In the YaST2 Software Management tool, press ALT+A to start the installation. Press ENTER when prompted for confirmation.
Performing the Web and Lamp Server Package Installation
Once the installation is complete, the YaST2 Control Center main menu will appear again. -
In the YaST2 Control Center main menu, use arrow keys to select Network Services –> HTTP Server to configure the newly installed Web server.
Selecting the HTTP Server Wizard Configuration Tool
Press ENTER on the HTTP Server menu selection. -
In the HTTP Server Wizard, press F10 on each screen of the wizard to accept default configuration values and finish the wizard.
HTTP Server Configuration Wizard
Once the configuration process is complete, the YaST2 Control Center main menu will appear again. -
In the YaST2 Control Center main menu, use arrow keys to select System –> System Services (Runlevel) to start the Web server.
Selecting System Services (Runlevel) to Start Web Server
Press ENTER on the System Services (Runlevel) menu selection. -
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.
Enabling the Apache Web Daemon -
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.
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.
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:
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
Published January 12, 2013 Reads 4,483
Copyright © 2013 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
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"!
- Cloud People: A Who's Who of Cloud Computing
- Cloud Expo New York: Cloud Is Changing the Economics of Business
- Windows Azure IaaS Reaches General Availability
- AMD and Adobe Collaborate on Upcoming Version of Adobe Premiere Pro Software to Enable Breakthrough Video Editing Performance Through Open Standards
- State and Local Governments Adopt Microsoft Dynamics CRM to Improve Citizen Service Delivery
- Enterasys Spotlights SDN's Impact on Traditional Networking in Upcoming Webinar
- New Relic Q1 2013 Blazes Past Growth Targets and Reaches 40,000 Active Customer Accounts
- Cloud Expo New York: Deploying Hybrid Cloud for Performance and Uptime
- Cloud Expo New York: Delivering Digital Marketing on the Cloud
- Gravitant Supports General Dynamics Information Technology in Offering New Cloud Brokerage Services to Government Entities
- Big Data Isn’t About the Database, It’s About the Application
- Cloud Expo New York: Rethink IT and Reinvent Business with IBM SmartCloud
- Cloud People: A Who's Who of Cloud Computing
- Cloud Expo New York: Best CIO Practices Shared from SHI’s Customers
- Cloud Expo New York Speaker Profile: Greg O'Connor – AppZero
- Cloud Expo New York: Cloud Is Changing the Economics of Business
- Cloud Expo New York: How to Use Google Apps Script
- Windows Azure IaaS Reaches General Availability
- Cloud Computing Bootcamp at Cloud Expo New York
- AMD and Adobe Collaborate on Upcoming Version of Adobe Premiere Pro Software to Enable Breakthrough Video Editing Performance Through Open Standards
- State and Local Governments Adopt Microsoft Dynamics CRM to Improve Citizen Service Delivery
- Enterasys Spotlights SDN's Impact on Traditional Networking in Upcoming Webinar
- New Relic Q1 2013 Blazes Past Growth Targets and Reaches 40,000 Active Customer Accounts
- Salesforce.com Executives to Participate in Upcoming Investor Events
- The Top 150 Players in Cloud Computing
- Six Benefits of Cloud Computing
- Where Are RIA Technologies Headed in 2008?
- FullArmor GPAnywhere Secures Microsoft Application Virtualization Applications Through Group Policy
- SYS-CON's Virtualization Conference & Expo: Themes & Topics
- SYS-CON's Virtualization Journal Opens Its "Readers' Choice Awards" Nominations
- "Virtualization Is Now a Key Strategic Theme," Says Citrix CTO
- Application Virtualization: Instant Migration to Vista, Fast Delivery, Secure Access, Side-by-Side Deployments
- Application Virtualization
- Integration with Windows Vista, Microsoft Excel, and Microsoft Application Virtualization
- The Top 250 Players in the Cloud Computing Ecosystem
- What's the Difference Between Cloud Computing and SaaS?
























