One of the first things cloud architect Bill Zack did after moving from Connecticut to Nashville in 2013 was to form a Microsoft Azure User Group. Launched with just four initial members, the Nashville Azure User Group has a membership well above 800 and growing.
“It’s been exploding,” Zack says of the user group in his new hometown. “I’d like to take credit for it, but I think the growth of Azure had something to do with it,” he adds with a laugh. The future of Azure was no laughing matter five years ago. At the time, Amazon Web Services (AWS) had a distinct lead in capabilities and enterprise customers over Microsoft, and any other cloud infrastructure service provider.
AWS is still the leading cloud provider but as Microsoft invested billions in expanding the global footprint of Azure and has belatedly though aggressively added infrastructure services and features that let customers migrate their virtual machines, it has narrowed the gap. Google has an equally extensive footprint and IBM and Oracle are also gaining ground. But Microsoft Azure has established itself as the clear No. 2.
Azure isn’t a mere opportunity for Microsoft. The company has staked its future on the success of Azure coupled with its cloud-based Microsoft 365 and Office 365 management and productivity services. While that’s been evident for some time, the company has stepped up the urgency and focus over the past year. Driving Azure consumption is the top directive to Microsoft employees and partners. Every major offering and initiative at Microsoft is built on growing the usage of Azure. “Microsoft is becoming a cloud-first company,” says Dmitri Tcherevik, chief technology officer of Progress Software. ‘Everything they do is about Azure and making Azure successful.”
Microsoft’s Azure migration focus
Making Azure successful, of course, requires enterprises of all sizes to migrate their traditional Microsoft software and workloads to the cloud — or at least a hybrid cloud-based architecture. While that’s not a trivial process, Microsoft is now doubling down on that priority by offering broad migration options with as little friction as possible. Microsoft stepped up its migration effort at last fall’s Ignite conference when it announced a coordinated set of programs across the board to offer migration options that will fit different business, infrastructure and application models and wide risk-factors.
The programs include collections of best practices, tools and specific partnerships with ISVs and hardware suppliers to all phases of migration and ongoing management. Although not markedly different from what other major cloud providers emphasize, Microsoft’s migration resources are all focused on three key processes: assess, migrate and optimize.
“We look across those three big areas and make sure that we have a set of tools and capabilities built into Azure to help customers assess ahead of the migration, do the actual migration and then optimize after the migration,” says Corey Sanders, Microsoft’s corporate VP for Azure Compute. “On top of that we also have a large set of partners that can fold into that, each sometimes into multiple stages and sometimes into individual stages.”
As of mid-May, Microsoft referenced 17 solutions, though there are many others in the Azure marketplace that fall under the migration and optimization umbrella, including various security tools. Microsoft also has partnerships with systems integrators and managed service suppliers.
Among its ISV partnerships, one example Sanders points to is Turbonomic, which is focused mostly on optimization and understanding the cost and the implications of running those services in an on-premises environment and in an Azure environment, and offering a multi cloud view. “It plays in very nicely to our overall approach which is making sure we’re helping customers where they need the help. We have the services where they want the services, but we also partner with solutions where they may have other needs and they have other desires,” Sanders says.
Another example is Attunity, which provides data connectors and relational database and data warehouse migration software. In November, Attunity and Microsoft inked a partnership facilitating the migration from various databases — Oracle, Teradata, Netezza, DB2, MySQL and even Microsoft’s SQL Server to Azure SQL. The utility, Attunity Replicate for Microsoft Migration includes a free tool for those who complete certain types of migrations within a year. “Since we’ve launched that, we’ve had many hundreds of downloads and customer engagements,” says Itamar Ankorion, Attunity’s chief marketing officer. “We are very excited about the traction this offering has had to the Azure marketplace.”
Assessing Azure readiness
Customers will often use these partner tools to enhance those offered by Microsoft, many of which are offered free to accelerate adoption. Looking to address the first phase of migration, assessment, Microsoft recently started offering its new Azure Migrate service. Azure Migrate is a free offering that provides an appliance-based, agentless discovery of enterprise on-premises datacenter infrastructure. The initial service can discover VMware-based virtualized Linux and Windows virtual machines, with support for Hyper-V VMs and physical servers slated to arrive imminently.
Microsoft also offers an agent-based discovery tool as an option with Azure Migrate that can provide views of interdependencies, allowing organizations to determine if the machines that host existing multi-tier applications are suited for Azure. The tool also can help determine the sizing of Azure VMs for the application and help determine cost including potential discounts using Microsoft’s Hybrid Benefit program, which will apply discounts available from enterprise Software Assurance licensing to Azure.
In the assessment phase, Microsoft’s Azure Migrate tool also helps determine migration priorities aligned with business objectives. The tool helps map the source and target environments and address the infrastructure and application dependencies. The Microsoft tools map out recommendations for which Azure resources to use and suggests what migration options are best for any given architecture of application servers.
Lift and shift
Many get started by moving their virtual machines to Azure, using what is commonly referred to as the “lift and shift” approach. “We get a lot of customers that have a datacenter and maybe their equipment is reaching the end of life and they’re trying to decide whether to replace it or not,” Stratum’s Zack says. “That tends to push them toward a cloud solution.”
Microsoft’s own Azure Site Recovery (ASR) service is a common tool for migrating workloads to the public cloud, Zack says. Many organizations first use of Azure is for backup and disaster recovery. “I always joke that migration is always just failover and then you never come back,” Zack says.
Nick Colyer, solutions principal for cloud & DevOps at Chicago-based AHEAD, agrees. “We use Azure Site Recovery a lot,” Colyer says, especially among those who don’t want to pay extra for migration tools. Azure Migrate also helps Colyer determine what workloads and VMs are suited for Azure and whether to use IaaS or get out of OS and infrastructure management going directly to PaaS services. There’s no distinct pattern for how customers make these decisions, he explains.
Some will move incrementally, others will put a large percentage of workloads into production quickly, he says. Much of the decision depends on the maturity of an organization’s IT and cloud services management team and their appetite for risk. “In some cases, they’ll move slowly, so even when they say 20 percent they’ll probably move more over time,” Colyer says. “The other big thing that plays a bigger part is how well they understand their applications. If they have a very good institutional knowledge and the people that built these things are still there and are able to move them, then there’s more appetite to do that.”
In addition to Azure Migrate, Microsoft and ASR, Microsoft recently started rolling out its Azure Database Migration Service for moving relational data to the cloud, and Azure Data Box, an appliance that lets you ship large amounts of data to a Microsoft datacenter, typically useful for first time migrations where there could be terabytes or more of data to move.
There are four paths to migration an organization can go down. The aforementioned lift-and-shift is the first. Microsoft and other cloud providers often refer to this as rehosting. This nocode migration option effectively moves applications and data without changing it and comes with the least risk and most ease. It’s the fastest approach, but the most suitable for an older application that doesn’t justify or require the addition of new capabilities. But the assessment phase may show that those workloads may not be conducive for the lift and shift approach, perhaps because running them in Azure will consume costly compute services, among other reasons.
Strangling the monolith
If that’s the case, the second option, refactoring or repackaging, is an expeditious way to extend the application infrastructure without rewriting the application code. Applications that are refactored are typically brought into container services such as Kubernetes, Docker or Mesosphere. This approach is necessary for organizations who want to make sure their applications scale better on Azure, says Progress Software’s Tcherevik. “The answer to that is to start rewriting your monolithic applications into collections of microservices because these microservices can be deployed independently, they can be managed independently, scaled independently. So that is for developers a natural next step,” he says.
Proponents of moving to a microservices architecture often refer to this as “strangling the monolith.” Tcherevik is among them. “As the business processes change inside a company, the monolith needs to be updated,” he says. “Traditionally you would just go in and rewrite portions of that monolith but now instead of rewriting it, you would implement new functionality or functionality that requires significant changes. You would integrate it with the monolith through an API gateway of sorts.”
In Azure, once the application logic is packaged into containers, they’ll work within the IaaS services as well as to managed PaaS offerings including the Azure SQL Database Managed Instance, Azure Database Service for Postgre SQL, Azure Database for MySQL and Azure Cosmos DB. Others, such as migration from Cassandra and MongoDB databases to Microsoft’s new CosmosDB, the globally distributed multi-model database service in Azure, are in the pipeline.
Those going with the PaaS approach and want to ensure multi-cloud support or be able to use common APIs will often go with platforms based on Cloud Foundry, which Azure and other cloud providers support, as well as OpenShift, supported by Red Hat. Microsoft, which has a development partnership with Red Hat, last month released the Red Hat OpenShift Container Platform, which is now in the Azure Marketplace.
According to Microsoft, the refactoring migration option makes sense for those who have committed to a DevOps methodology, have applications that organizations don’t want to rewrite but need to scale in the cloud with minimal management of VMs.
Decompose and rewrite
The third, and more ambitious option, is re-architecting applications enabling customers to use capabilities in Azure such as autoscaling and dynamic reconfiguration. This involves having developers decompose the monolithic application code into micro-services that can integrate with each other to create an app, but without the interdependencies, which lets organizations test, deploy, scale and manage separately.
This makes sense for business-critical functions where organizations want to leverage existing development efforts but anticipate the need to add functionality and scale, thereby requiring them to move to a continuous integration/continuous development (CI/CD) DevOps model.
The final and boldest approach to cloud migration is rebuilding to create cloud-native applications. Arguably this isn’t actually migration so much as building new greenfield apps that are based on event-driven functions and don’t need to specifically use or manage existing infrastructure. Driving this event-driven model is Microsoft’s PaaS serverless capabilities, known as Azure Functions. It provides highly available Azure Storage and can now tap Microsoft’s new CosmosDB service. These are suited for bursty, or transaction type of applications.
Whichever migration approach an organization takes, and many are likely to use multiple options depending on the use case, the final phase is optimization. That includes cost management using the Azure Cost Management Service managed by Microsoft subsidiary Cloudyn, securing applications and data via the Azure Security Center, monitoring via the dashboards in the Azure Portal and data alerts and protection with Azure Backup.