The boom of public and private cloud services has created a substantial amount of competition among providers. Major players, like Microsoft, have been pushing to create the best possible cloud-computing environment by adapting products and services around the feedback from the user and developer community. The result for everyone is a better, more competitive service, and Microsoft is certainly ahead of the curve.
There’s a bit of a misconception about Microsoft Azure: some are convinced the platform is tailored for a mostly Microsoft environment. Indeed, until the last decade, Microsoft mostly focused on integrating their own services with each other, but this ideal has since shifted. This year, we’ve seen a major shift towards other platforms – namely Linux-based systems – populating in the arsenal of tools available from Microsoft.
Microsoft acknowledges that by “playing nice” with other parties, everyone benefits, which has proved to be a major contributor in the recent growth of the Azure platform. In this blog, we’ll look at Microsoft’s blossoming relationship with Linux, the Azure Stack and how Linux integrates, as well as benefits from using Azure to host operating systems besides Windows.
The Relationship Between Microsoft and Linux
In its early days, Microsoft started off much like Apple in the sense that the company focused on developing its own solutions for practically everything. Today, both companies – especially Microsoft – are much more accepting of working with other platforms as applying this concept is beneficial to customers.
One of the most interesting developments in Microsoft’s cloud services is that native Azure services run on Linux. This shift to a more platform-tolerant mentality began when ASP.NET was transitioned into an open source project, ultimately opening Microsoft’s eyes to the value of incorporating at least some OSS into their model. As of October 2017, more than 40% of all machines running on Azure are running Linux, and there’s no sign of this changing anytime soon.
Unlike Hyper-V, which started off rocky with Linux until 2009, Azure provides much more than basic virtualization support. Whereas Hyper-V was mostly designed to optimize available hardware around running multiple instances of Windows, the Azure hypervisor supports just about everything. Even VMware, which was once highly reluctant to adapt around Microsoft Azure, decided to partner up with Microsoft, meaning customers can even run VMware on Azure.
What is a Microsoft Azure Stack and How Does Linux Fit In?
Not all customers that are using Azure are running the system on Microsoft’s hosted infrastructure –some are taking advantage of the Azure Stack, which can be deployed on premises or on top of compatible cloud services. Quite simply, this greatly expands options for a functional hybrid cloud.
Regarding running Linux, there are a couple different ways to create and utilize VMs. If you’re utilizing Microsoft’s infrastructure, the system will automatically be connected to the Azure marketplace. Here, a vast assortment of different software that’s been tested to work on the Azure platform will be available for integration. For Azure stacks that are running in an outside datacenter, the marketplace syndication tool allows these installations to easily access verified software.
By using Linux distributions from the Azure marketplace, you’re ensured compatibility with the underlying platform as well as the extensions that integrate into the console. It is also still possible to prepare unique images outside of what’s included on the Azure Stack marketplace by using Microsoft’s provisioning tools. Further, you can deploy functioning distributions to the marketplace for others to securely access with the Azure Resource Manager via a blog storage URI.
For those using Microsoft’s infrastructure, several pricing options are available for Linux virtual machines. As most of these systems don’t require licensing, it is incredibly economical to run a Linux VM on Azure whether selecting a pay-as-you-go model or opting for a term commitment.
Benefits of Selecting Microsoft Azure to Run Linux VMs
Considering Microsoft’s formerly tenuous relationship with Linux, it’s interesting to see that Azure is now an ideal platform for running Linux VMs. Microsoft’s change in mentality is apparent in Azure’s highly agnostic architecture, meaning it’s substantially more accepting than Hyper-V architecture, and exceedingly compatible with a majority of platforms on the market.
Executing Acceptance of Linux by Design
This underlying attitude is observed in how platforms (like Linux) are positioned as equal to Microsoft counterparts. You’re not funneled into trying to force incompatible systems to properly interact on a consistent basis.
For example, production environments that rely on Linux systems and demand constant uptime to maintain productivity and meet deadlines won’t suffer when running on Azure. Companies that are looking to supplement their computing power with a hybrid solution by adopting Microsoft Azure, as well as those planning on revamping computing clusters with the Azure Stack, will have the same performance as a bare metal installation that’s optimized for Linux. Instead of trying to adapt a workaround around some existing Microsoft service, the company has created solutions from the ground up, which means fewer problems.
In summary, Azure isn’t merely some updated version of Hyper-V – it’s a unique solution, specifically tailored to accommodate a breadth of technologies.
Scaling and Security for Every Network
Even though there’s a small limitation with dynamic virtual disks and custom Linux distros because of potential conflict, that’s the extent of scaling issues. This mostly applies to machines that have been ported from another platform and with custom distributions you’ve created for Azure. Typically, when you go to resize a VM using the Azure CLI, it should populate when you list your resource group – and if it doesn’t, you might have simply forgotten to deallocate the VM resources from the cluster. If it still doesn’t appear, force changing the parameters isn’t recommended, especially if it’s a custom distribution as this can corrupt the machine.
For verified systems found in the Azure marketplace, storage for the disk or volume can be easily scaled up or down.
With regard to computing resources, both Linux and Microsoft machines can automatically scale in either an on-premise Azure Stack or in a hosted environment. Both unexpected and planned events where computing requirements exceed regular thresholds can be accommodated, thus circumventing issues that lead to downtime. Too, the same security compliance prerequisites are applied to every component of the Azure network (e.g. Windows and Linux VMs, virtual switches, etc.) which prevents frustrations that come from one component creating a widespread security issue for an entire network.