Migrating From On-Premises To Windows Azure Cloud-An Overview
Migrating From On-Premises To Windows Azure Cloud-An Overview
Migrating From On-Premises To Windows Azure Cloud-An Overview
IT leaders and strategists are reasserting the value of information and communication technologies
in enterprises with the power of Cloud. Windows Azures ability to deploy scalable solutions
rendered as a service is bringing in a paradigm shift to organizations that encourage Cloud.
Index
An introduction to Windows Azure
01
Why migrate
Migration: An Overview
02
IaaS migration
PaaS migration
Software as a Service (SaaS)
Database migration
SharePoint migration
Office migration
Key considerations
04
07
ABOUT SUYATI
09
An introduction to
Windows Azure
Enterprises would love to host their application or software on a platform that gives
them the best ROI including high performance (speed), scalability, and affordability.
Windows Azure is a Microsoft cloud platform that bestows you with these three critical
success factors essential for the survival of any cloud program. Microsoft Windows
Azure is a platform for the public cloud, used to build scalable cloud based web
applications that store data in Microsoft datacenters.zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Windows Azure offers a flexible and open platform which facilitates to quickly build,
deploy and maintain the application universally. By using Azure, you can create a new
application as well as migrate an existing application from on-premises to cloud. This
White Paper analyzes the necessity of migrating to Windows Azure cloud. We will also
discuss the key considerations behind this migration and try to provide some insights on
some of the specific models of Azure migration like migrating to IaaS, PaaS, SaaS,
database migration, SharePoint migration, and office migration.xxxxxxxxxxxxxxxxxxx
Why migrate
The cloud offers several benefits, such as anytime availability, easy scale-up and
scale-out in a pay-as-you-go model, and freedom from buying or maintaining the
underlying infrastructure. Microsoft Windows Azure platform offers certain advantages
over and above such general advantages.ssssssssssssssssssssssssssssssssssssssssssssssss
With Windows Azure, developers may focus on their core task of development, without
having to worry about the infrastructure. Windows Azure offers SLA 99.95% for the
hosted applications. Developers having .NET skills can develop and migrate
applications on Azure by learning Azure SDK.sssssssssssssssssssssssssssssssssssssssss
Apart from leveraging the various cloud based benefits, there are technical reasons to
consider migration. For instance, Windows Server 2003 has reached end of support, and
developers who host their websites on an IIS server or Windows Server 2003 would
anyway have to migrate, and migration to the cloud offers the best option.ddddddddddd
Migration: An Overview
Migrating legacy .NET based on-premises application to Azure App Service Web Apps
is easy. The Azure Web Apps Migration Assistant in fact automates the migration
process. However, the process requires a methodological approach.dddddddddddddddd
Migration to the Azure cloud mainly occurs in two approaches: the
Infrastructure-as-a-service (IaaS) approach and the Platform-as-a-service (PaaS)
approach. In addition, it is also possible to move the database alone to Azure cloud. Let
us have a glimpse at some of the different models of Azure migration. xxxxxxxxxxxxxx
Specific models of
Azure migration
Azure migration can happen in a number of ways. Few of them are listed here:
IaaS migration
With the Infrastructure as a Service (IaaS) approach, Microsoft Azure provides the
runtime infrastructure, such as a virtual server and network connectivity, and the
subscriber installs their own OS, services and applications on such infrastructure. The
subscriber runs their selected servers in Microsoft datacenters. Subscribers may still
choose from a range of preinstalled OS such as Windows Server and Linux, offered by
Azure, and also leverage peripheral services, such as Azure Active Directory
authentication services, Traffic Manager global routing, Azure storage queues or
Service Bus messaging service, and more. The selected Azure Virtual Machine (VM)
may also come with optional SQL Server or MySQL database preinstalled.xxxxxxxxxx
The IaaS approach towards hosting applications essentially replaces the Ethernet cable
in the datacenter with an Internet connection that links to Azure. This approach allows
migrating VM to the cloud without changing application code, and all deployment,
management, testing, and monitoring systems working just as before. The IaaS
approach is also useful when the subscriber does not have access to the source code of
any application, requires non-standard OS configuration or needs to set specific file
permissions.ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
PaaS Migration
The Platform-as-a-Service approach is a much more comprehensive approach to
migration compared to IaaS. With this approach, Microsoft Azure manages everything
including the OS, database, and runtime platform. The cloud user takes care of only the
application code and its interaction with peripheral services. xxxxxxxxxxxxxxxxhhjkl
The Azure hosting platform offers simple management and deployment capabilities,
supports almost all programming languages in vogue, and integrates directly with many
source control systems. The Cloud Services approach offers better control for the user
over the platform, including the capability to run various types of roles and integrate
caching directly. Users also gain a wide range of configuration options, and the option
to deploy separate Web and worker roles. xddddddddddddddddddddddddddddddddddd
Gartner recognizes Windows Azure as a leader in the Platform as a Service (PaaS)
offering.
Database Migration
Almost all business applications use data, stored in databases such as SQL Server or a
Relational Database Management System (RDBMS).xzxxxxxxxxxxxxxxxxxxxxxxxxx
Microsoft Azure Cloud offers several database migration possibilities.
Azure SQL server hosted database is capable of being used exactly the same way as
on-premises SQL Server. It is best suited for generated data storage and migrating
applications that use SQL server. The migrated applications work without any changes
in code, unless the code requires advanced capabilities of the SQL Server, such as free
text search, distributed queries, CLR programmability procedures, XML handling
capabilities, and more.xxxxxxxxxxxxxxxxxxgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Azure offers preconfigured VMs containing SQL Server or MySQL, which works
best when migrating an application using relational database, and for PaaS migrations.
Such database server hosted in a VM is an attractive solution for storing large volumes
of data and deploying multiple databases. It offers the flexibility to choose the correct
size of VM, and also allows us to make use of multiple VMs to implement database
failover or a shared data store. It is possible to install almost any other type of data store
that runs on Windows or Linux in a VM running in Azure.xxxxxxxxxxxxxxxxxxxxxxxx
Azure also offers schema-less storage options outside the relational SQL offerings.
Azure HDInsight service is based on open source Hadoop technologies
Azure storage tables allow you to store application data
Offers storage queues to pass messages between application components
Storage drives rather act like a traditional disk-based filing system
Azure storage blobs are best suited to store unstructured data such as documents,
binary data, XML files and images.
Azure storage options are comparatively cheaper than using a VM-hosted database
server or SQL Database. But migrating to such databases requires to rewrite the
data-access code. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Azure also offers the option of keeping the database on-premises and communicating
with the database server over a virtual network or through messaging. Connection to the
cloud-hosted database from the cloud-hosted server is just as if the database and
application were located in your own datacenter.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SharePoint Migration
The Azure cloud offers a good environment to host SharePoint Server solution. Hosting
SharePoint 2013 on Windows Azure Virtual Machines facilitates rapid deployment and
infuses scalability and reliability to the application. xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Migrating SharePoint 2013 to Windows Azure is straightforward, for SharePoint
Server 2013 prerequisites come preinstalled. Simply sign-in to the Windows Azure
Portal, and navigate to the SharePoint Server 2013 Trial option, to select an appropriate
virtual machine size, such as A6, A7, or Extra Large, to use with SharePoint server.
Convert the trial version to a permanent one by entering the license key.xxxxxxxxxxxxx
Office Migration
It is possible to migrate on-premises Office files to the Azure cloud using Office 365
import services.
Access the storage account key and URL from the IMPORT page of the Office 365
admin center, and transfer the data into Office 365 by either using the in-house network
to upload files into Azure blob storage, or in case of very large volumes, physically ship
drives to Microsoft for manual transfer.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Key Considerations
There are several pre-requisites to consider before moving an application to Windows
Azure.
Cost:
At the onset, it is important to do a cost-benefit analysis. Migration to the Azure cloud
brings in a host of benefits, but it also comes at a price. Abandoning the migration half
way owing to resource crunch can lead to a disaster. By doing a proper cost-benefit
analysis, organizations can plan on how to proceed by supporting the cost and more
importantly how the perceived benefits exceed the costs.zzzzzzzzzzzzzzzzzzzzzzzzzzzz
Application compatibility:
Windows Azure comes with architectural demands, and it is important to check whether
the application to be migrated satisfies such architectural requirements.xxxxxxxxxxxxx
External / internal dependencies:
If the application to migrate has external dependencies, not all such dependencies may
be accessible through Azure. By analyzing and identifying those which are not
accessible through Azure cloud, we can create workarounds for such dependencies.xxxx
Application integration:
Similar to external and internal dependencies, if the application for migration is
integrated with other on-premise applications and shared services, appropriate
provisioning has to be made for such integrations post-migration.zzzzzzzzzzzzzzzzzzzz
Third-Party Framework and Class Libraries:
Azure does not support all third-party framework and class libraries. If any such
framework or class library is in use, the library would require some modifications or
may even have to be rewritten. However, if the migration is in the IaaS model, code
changes are not required. Rather, the server image in entirety will be migrated to the
Windows Azure virtual machine.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Compliance requirements:
The prevalent enterprise compliance and regulations that govern important aspects, such
as location of data, whether the data can be moved or stored outside the enterprises
realm and more may be disrupted when the application is migrated to the cloud.
Evaluate all such requirements, and make sure all compliance requirements will be
fulfilled even after migration.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Scalability / Elasticity:
Azure supports scalability, whereas most on-premises infrastructure do not do so.
Identify whether the application design of the app being migrated supports scalability,
to leverage the scalability feature offered by Azure.xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Application class:
Evaluate the importance or classification of the application under migration. Critical
line-of-business applications demand high availability, and appropriate provisions have
to be made in Azure.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
UI analysis:
It may not always be possible to migrate the UI interface directly to Azure using the
PaaS model. Some amount of re-engineering works may be required to modify existing
web application code to use Azure SDK, and some non-web applications may have to
be kept on-premises as well.ccccccccccccccccccccccccccccccccccccccccccccccccccccc
Database compatibility:
Analyze whether the existing database is the best fit post-migration. If not, the data
would have to be migrated to a new database in the Azure cloud.xxxxxxxxxxxxxxxxxxx
Security:
Security is an important causality when applications are migrated. Make sure to
provision for the same level of security as before, and enhance the security levels to
make it more suitable for the cloud based environment after migration. Consider data
security, authentication, authorization, and all other applicable security levels.xxxxxxxx
Authentication:
Analyze the authentication mechanism in the legacy application, and evaluate whether
the same will be compatible with the Azure cloud. Azure Web App supports Anonymous
Authentication by default and Forms Authentication, but does not support basic
authentication.
xxxxxxxxxx
Application maintenance / management:
It is also important to identify how logs are maintained and where they are stored.
Session and Identity provider: Make sure to include the session and identify provider
(ADFS / ACS information) in the web configuration file before starting the migration
process.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Session state management: In Azure, each web role occurrence operates on its own
VMserver and is configured behind a load balancer. The ASP.NET session state is not
automatically shared across cases in this load balanced environment. There are various
approaches to address this incompatibility. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Use a Table storage session provider:
A custom provider compiled into class library (.dll file)
Enables developers to store session state inside Windows Azure table storage
Relatively affordable, well tested and ready for consumption
In most cases, no re-engineering work is required
Use the default session state management- Inproc:
Inproc session state functions only for a single instance set in load balanced
environments such as Windows Azurexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
If more than one instance is used, it might result in inconsistencyxxxxxxxxxxxxxxxxx
Use Windows Azure SQL database session provider:
Essentially a subset of SQL server
It can also be used as storage for session state
Can be derived from SQL server session provider with a few modifications
Cost effective when used with the existing database
Third-Party Library References: If the third-party library or content references are
not included as part of the Azure package, the migration report generates an error. Make
sure to include the same before the start of the process.xxxxxxxxxxxxxxxxxxxxxxxxxx
About Suyati
Suyati provides marketing technology and integration services for companies that
wish to combine the best of breed solutions and create a unified approach to customer
acquisition. This unified digital marketing approach requires system integration
between various CMS and CRM platforms, and a slew of ecommerce, Marketing
Automation, Social Media Listening, email and social marketing, and customer
service systems. Our specialized knowledge in Salesforce, open source and .Net
based systems enables us to build effective custom integrated solutions for our
clients.ddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
Suyatis custom technology solutions have been deployed in companies in the US,
Western Europe and Australia, and have helped many enterprises leverage the
web/cloud/mobile technologies to acquire customers through integrated digital
marketing. Suyati is based in Chicago with product engineering capability out of the
US and India.dddddddddddddddddddddddddddddddddddddddddddddddddddddddd
References:
http://www.mindtree.com/sites/default/files/mindtree-whitepaper-migrating-an-e
xisting-on-premise-application-to-windows-azure-cloud.pdfcccccccccccccccccc
https://azure.microsoft.com/en-us/documentation/articles/fundamentals-introduc
tion-to-azure/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
http://cloudinteropelements.cloudapp.net/Migrate-MySQL-Apps-and-Data-to-W
indows-Azure.aspxccccccccccccccccccccccccccccccccccccccccccccccccccccccc
https://azure.microsoft.com/en-us/blog/migrate-on-premise-virtualized-workloa
ds-to-azure-using-azure-site-recovery/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
https://msdn.microsoft.com/en-in/magazine/jj991979.aspx
http://blogs.technet.com/b/wbaer/archive/2013/04/16/get-started-with-sharepoint
-server-2013-fast-on-windows-azure.aspx
https://technet.microsoft.com/en-us/library/mt210445.aspx
http://blogs.technet.com/b/haroldwong/archive/2013/02/18/migration-and-deplo
yment-windows-azure-as-a-paas.aspx
http://blogs.technet.com/b/tothesharepoint/archive/2013/10/26/sharepoint-gainin
g-momentum-on-windows-azure.aspx
https://msdn.microsoft.com/en-in/magazine/jj991979.aspx
https://azure.microsoft.com/en-in/marketplace/partners/microsoft/cloudservice/
http://www.gartner.com/it-glossary/infrastructure-as-a-service-iaas/
http://www.gartner.com/it-glossary/platform-as-a-service-paas/
http://www.gartner.com/it-glossary/software-as-a-service-saas/