Join the DZone community and get the full member experience.
Join For Free
Download this eBook outlining the critical components of success for SaaS companies - and the new rules you need to play by. Brought to you in partnership with NuoDB.
High Level Goals For This Post
Table of Contents Exercise 1: Getting Started
|Purpose ||To defy conventional belief that MS doesn’t do Linux.|
To demonstrate standing up Linux VMs running Drupal
|** Important Note ** |
|Druipal Installation is the next post|
|Key Lessons || |
- Working with the Windows Azure Portal to manage virtual instances
- Understanding your Linux options
- Downloading and Installing Putty
- Interacting with the Linux VM using a terminal session
Exercise 2: Selecting a flavor of Linux
Exercise 3: Configuration Details for your Linux VM
Exercise 4: Opening Ports, Connecting with Putty
Exercise 5: Putty – Working with your Linux VM at the command line
Exercise 1: Getting Started Part 1: Using the Portal
Part 2: Creating the Virtual Machine
Part 3: Working with the Gallery
- This post is about install Linux in Windows Azure
- You can choose from various Linux installations
- Be sure to choose openSUSE for these posts
- Download, install, and run Putty to help you administer Linux
Creating a virtual machine
Internet Explorer and browse 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 | Virtual Machine | From Gallery to start creating a new virtual machine.
Working with the gallery
- Select "From Gallery" to start creating a new virtual machine.
- Gallery will provide a list of available operating systems.
Exercise 2: Selecting a flavor of Linux Part 1: The available flavors of Linux
Part 2: Naming the Linux VM
Part 3: Specifying VM Details
Selecting a flavor of Linux
- Not including your own, you can choose your VM to run the following Systems:
- Microsoft SQL Server 2012
image contains the full version of SQL Server, including all components
except Distributed Replay, Always On, and Clustering capabilities.
- Windows Server 2008 R2 SP1
Server 2008 R2 is a multi-purpose server designed to increase the
reliability and flexibility of your server or private cloud
- Windows Server 2012 RC
Server 2012 incorporates Microsoft's experience building and operating
public clouds, resulting in a dynamic, highly available server platform.
It offers a scalable, dynamic and multi-tenant-aware infrastructure
that helps securely connect across premises.
- CentOS 6.2
- This distribution of CentOS version 6.2 is provided by OpenLogic and contains an installation of the Basic Server packages
- OpenSUSE Linux 64 Bits (IAAS M1 Preview)
- This is the distribution with Yast2
- Suse Linux Enterprise Server
Linux Enterprise Server is a highly reliable, scalable, and secure
server operating system, built to power mission-critical workloads in
both physical and virtual environments. It is an affordable,
interoperable, and manageable open source foundation
- Ubuntu Server 12.04
- Ubuntu Server 12.04 amd64 20120528.1
- Ubuntu Server 12.04 (Precise Pangolin) amd64 20120528.1 Cloud Image
Naming the Virtual Machine (Linux)
- You will need to provide:
- Virtual Machine Name
- User Name
- Size (larger VMs allow up to 14GB of memory)
- Some guidelines regarding Administrator account
- Rename the Default Administrator Account
- When you rename the default Administrator account, it removes the obvious indication that this account has elevated privileges.
- Although an attacker still needs the password to use the default Administrator account, a renamed default Administrator account adds an additional layer of protection against elevation of privilege attacks.
- Note: Renaming the default administrator account hinders only certain types of attack.
- Additionally, tools are available that enumerate group members, and these always list the original administrator account first.
- For the best protection against attacks on your built-in administrator account, create a new administration account and then disable the built-in account.
Specifying Linux VM Details
- The DNS name is the name of your Linux OS in the cloud
- Specify a storage account or automatically generate one
- This is so you can store tables, blobs, and queues
- Specify region or affinity
- Affinity is a useful concept.
- It allows you to group dependant Windows Azure services, and deploy those in one place if possible
your services are dependant on each other it is good if those are
co-located, so that transactions between them are executed faster.
- The best option is if the network hops between your hosted services are minimized as much as possible
- Lowering your bill - For the most part bandwidth within the data center is free of charge
Exercise 3: Configuration Details for your Linux VM Part 1: Understanding Availability Set
Part 2: Fault tolerance for the Virtual Machine
Part 3: Dashboard, Endpoints, and Configuration
Understanding Availability Set
- Availability sets means that your VMs will be distributed across different fault domains in the data center.
- This means if an entire rack goes down, you will have a running instance available
Your Virtual Machine Running (Portal)
- The Linux OS is up and running after just a few minutes.
- We now need to test connectivity
- We will use the Putty tool(s)
Understanding the Dashboard, Endpoints, and Configuration
- You have a few choices here:
- Usage Overview
- Public Virtual IP Address
- SSH Details
- Deployment ID
- Subscription Name
- Subscription ID
- Protocol (UDP or TCP)
- Public Port
- Private Port
- Load Balanced
- Virtual Machine Size
- Availability Set
Exercise 4: Opening Ports, Connecting with Putty Part 1: How to open endpoints to your Linux VM
Part 2: Opening a TCP port
Part 3: Working With Putty
How to open endpoints to your Linux VM
- Each VM can have attached a number of disks for storing data, and communicates with other VMs through endpoints
- Endpoints are simply TCP or UDP ports that can be configured individually
Opening a TCP port
- Note the:
- Public Port (access from outside the data center)
- Private Port (from within the data center)
Working with Putty
- Now that you have provisioned and configured a Linux Virtual Machine, you will connect by using an SSH client.
- Note: You can download Putty, a free SSH client for Windows, here:
- Putty offers the following:
- PuTTY (the Telnet and SSH client itself)
- PSCP (an SCP client, i.e. command-line secure file copy)
- PSFTP (an SFTP client, i.e. general file transfer sessions much like FTP)
- PuTTYtel (a Telnet-only client)
- Plink (a command-line interface to the PuTTY back ends)
- Pageant (an SSH authentication agent for PuTTY, PSCP, PSFTP, and Plink)
- PuTTYgen (an RSA and DSA key generation utility).
Exercise 5: Putty – Working with your Linux VM at the command line Part 1: Starting Putty
Part 2: Working in a Linux Terminal Session
- Login with your credentials
- User Name and Password (you provided this previously)
- You can get the SSH details from the portal
Your terminal screen to your Linux VM – Your are In!
- You will need to login with your previous password.
- Once you do that, you are in!
Conclusion - Final Thoughts Using
the portal to configure a Linux distribution is remarkably simple. What
isn’t addressed is adding additional software, like Apache, MySQL, etc.
But the wizard like approach makes working with Linux and Azure simple
and straightforward. Future posts will take the Linux VM one step
Published at DZone with permission
Bruno Terkaly, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.