In this post we will use Windows Azure Virtual Machines to move your web application from your current Linux VPS to the Microsoft Cloud, Windows Azure!
Hmm, sounds great, but why would I want to do that if I’m happy with my VPS? Let me start by listing the reasons why.
–Windows Azure Dashboard. Using the dashboard you can monitor the performance of your server; CPU usage, Disk usage, Network status. You can also configure your virtual machine, scale it up or down and add Endpoints. All that can be done using the beautiful GUI.
– Availability. Windows Azure delivers 99.95% monthly SLA, which means you guarantee your web application availability.
–Performance. Most of the feedbacks I get from my users say that they are getting better performance (download/upload time) when I moved to Azure. Thanks to the powerful data centers Microsoft runs!
You can check the case studies page to learn more
– Maintenance. Microsoft takes care of that for you! It provides automatic OS and service patching, built in network load balancing. Also it supports a deployment model that enables you to upgrade your application anytime without downtime!
– Scalability. You can scale up or down your server any time you want. For example, Lets say we have a web store application, and from monitoring the traffic we know that this web store gets heavy traffic in Christmas season. Using Azure dashboard we can easily scale up my server for this period of time, and once my web site returns to the normal traffic, I can return it back to normal size.
– Pricing, this point related to the previous one. You pay for whatever you use per hour. You can read about the Pricing from here. (In this post, we will use the 90 days trial, so you can try it first, and see if it suites your needs)
To use Windows Azure, you will need to sign up for a free 90 days trial. You can follow this tutorial to create the account.
2- From the popup menu, click on “Compute”, “Virtual Machine” and the “From Gallery”
3- Windows Azure Dashboard provides a large collection of operating systems (Windows Server, SQL Server, Biztalk, Sharepoint, & different flavors of Linux). Select the Linux image that you use right now on your Linux VPS and click in the next arrow button.
4- In the next step, we need to name the Virtual Machine, and select its size. Fill the Virtual Machine Name field. Then select the “Extra Small” size. Notice you can change this size anytime you want, Scalability, remember? :). Enter a User Name. Uncheck the upload SSH key option, check the Provide password and enter a password. Notice that we will use this User Name and Password later to access the server using SFTP. Finally Click on the next arrow.
7- Now you will have to wait for couple of minutes (for me it took two minutes) while Windows Azure is creating and starting your Virtual Machine.
|Port||The port number you got form Azure dashboard||54665|
Installing modules using SSH Client
1- We will start by installing some modules. We will need an SSH Client (Like Putty) to access the server. Start Putty Client, and enter the Host name and the Port number
2- Once the session starts, it will ask you to enter the user name and password. Enter the values and press enter. Based on the Linux flavor you installed, you can use the right commands (sudo chmod, yum … etc) to install the modules you want.
Uploading your files using FTP Client
Now that we have the server ready, we can start uploading the files to the server, start your FTP client (like FileZilla), and use the following to access the server:
Now you can easily drag and drop your VPS files to deploy them to the new server! Enjoy your powerful Virtual Machine!
You can read more about Azure & other MS techs from my blog