Recently, more and more people have to deal with incorrect opinions regarding the use of Open Source based on Windows Azure. Whether it’s a question at an event, or a discussion on a forum, periodically myths about the Windows Azure platform arise, the most popular ones, in my opinion, I’ll dispel:
Myth 1: Windows Azure does not support Open Source.
I hear this myth quite often. Windows Azure supports a large and growing number of open source applications, systems, and languages. Developers working in. NET, Java, PHP, Node.js, and Python can use the freely available SDKs for these languages to get started quickly and make full use of Windows Azure. Despite the fact that with each new update of the Azure platform - the list of supported Open Source technologies is increasing - most still do not know, even that such opportunities exist. A complete list of open source technologies can be found
here .
Fig. 1 - Supported Open Source Technologies in Windows AzureFor fans of social coding'a there is a pleasant opportunity to deploy your site directly from the repositories: CodePlex, Github, Bitbucket, using Git.
Figure 2. - Git-publishing projectMyth 2: Java development in Windows Azure is much more complicated than .Net.
This is what I heard several times from Java developers. Once again, having heard such an opinion, I decided to try it myself to deploy a simple application. What I heard is completely different from what I saw, deploying a Java application took me a few minutes along with installing the Eclipse + SDK for WinAzure. The source code for the Windows Azure SDK is in the open form, you can find them on GitHub in the
appropriate section .
Yes, if you already have a finished project, you need to revise the project architecture, consider the cost, scalability, disadvantages, advantages specific to Windows Azure (SQL Azure firewalls, load balancers, etc.).
Fig.3 - Publishing a project from EclipseMyth 3: Providing the ability to use Open Source-technologies - Microsoft does not release regular updates.
Windows Azure pursues the goal of developing the platform in various directions without thereby restricting the developer in the choice of technologies used. After analyzing the chronology of the SDK update and the Windows Azure Training Kit, I did not notice any particular preferences in favor of specific technologies.
')
Table 1. - Latest SDK updates for various languages
As the table shows, the SDK for different languages has also been updated since the last major update of the Azure platform in June.
Myth 4: In Windows Azure, only Windows Server 2008 R2 / 2012 can be used as virtual machines.
As I wrote earlier, Azure supports Open Source, and supports Linux distributions for use as a virtual machine. Not only supports, but also offers the same simple process of creating VM's on various operating systems, including those running Linux, from the Windows Azure Management Portal gallery. You can create a Linux-based virtual machine and access it using an SSH client, the same OpenSSH. This requires only information from the management portal: the host name and port.
Figure 4. - Gallery of suggested images for creating VM’sMyth 5: Lack of materials about the deployment and migration of Open Source applications to the cloud.
I came across this every time I read the forums, and I was perplexed. There are tons of resources and blogs dedicated to building applications in the cloud. Here are just some of them:
Myth 6: Difficulties with publishing sites to the cloud.
Publishing applications from Visual Studio and other IDEs (Eclipse, WebMatrix) is only a matter of creating a profile for publishing in which you only need to enter the settings of the subscription you use. There is also the possibility to publish using Git, it will be interesting in particular for those who are engaged in continuous development on GitHub, CodePlex or Bitbucket. Windows Azure allows you to manually download a service pack for a site through the management portal, while deploying from GitHub, CodePlex or Bitbucket takes place in a continuous process where Windows Azure will pull in the latest updates for your project.
Fig. 5 - The history of the publication of the project using GitYou can turn around using WebMatrix, you only need to load the settings profile - .pubsetsettings and load it into WebMatrix.
Fig. 6 - Publishing a site from WebMatrixFor especially brutal, you can deploy your projects using FTP;)
Myth 7: In Windows Azure, Microsoft only supports SQL Database.
One of the funniest myths I've ever met. Windows Azure provides many services to help manage data in the cloud:
- The SQL database, formerly known as Azure SQL Database, allows you to quickly build, scale, and expand applications in the cloud using familiar Microsoft SQL Server tools and technologies;
- the tables provide NoSQL features at a low price for applications with simple data access needs;
- Blobs provide inexpensive storage for data such as video, audio and images.
Data can also be stored in MySQL (
tutorial ), CouchDB, MongoDB (
tutorial ), etc.
Myth 8: Windows Azure is an expensive cloud solution, where you pay is not clear for what.
A strange statement, possibly due to the fact that the majority is accustomed to paying a certain fixed amount without spending the amount of resources for which they paid. First, before migrating to Windows Azure, you can see how much your project will cost - by calculating the total cost of the project, or each service separately.
Fig. 7 - Windows Azure Resource CalculatorSites for which large resources are not required can be published free of charge (up to 10 sites), this includes mobile services. If you use several paid services, then all costs can be traced in the corresponding menu - subscription management. In addition, if you only plan to place the service, its cost can be calculated
here .
In addition, those who want to try Windows Azure can get a free trial for 90 days. Developers with a MSDN subscription can start
using Windows Azure for free , members of the BizSpark program can also get
free access to the subscription . For companies who want to save, we offer a flexible
system of discounts up to 32% .
Myth 9: Most of the popular protocols and languages are not available on Windows Azure.
Windows Azure supports popular standards, protocols, and languages, including SOAP, REST, XML, Java, PHP, and Ruby. In addition, initially, the platform itself supports several languages, like VB.net, C #, C ++ and T-SQL as part of SQL Azure. Developers have the ability to select multiple languages to create their own applications, including:
- .NET (C # and Visual Basic), C ++
- PHP, Ruby, Python
- Java
Also supported is AMQP (Advanced Message Queueing Protocol) - an open protocol for sending messages between system components with low latency and high speed. Support for such a protocol allows you to create cross-platform hybrid applications using the Service Bus. Applications can be built from components in different languages and work on different operating systems, while freely exchanging structured messages.
All this suggests that developers are not limited in what technologies and languages to choose for their applications.
Myth 10: VM's creation is limited only to those VHDs that are represented in the image gallery.
In the root is not the correct assumption, as I said, to create a virtual machine in Windows Azure, you can select the VHD file that is offered in the gallery, but you can also create your own image and upload it to Windows Azure as a VHD file for this CSUpload is a command line tool.
For example, in the summer of this year, it became possible to use ALT Linux, it’s not in the image gallery yet, but it is precisely for this that it is possible to upload your own VHD images.
After creating a virtual machine, you can connect via ssh, vnc or using putty (Windows). To connect you will need some information, go to the control panel of the virtual machine and in the QuickGlance panel there will be all the data for connection.
Fig. 8 - Setting up a connection to a Linux virtual machineThere is a great
tutorial on how to prepare a Linux VHD image for upload to Windows Azure.