Migrating SAP to Azure: An Overview

An Introduction to HPC for Big Data
December 24, 2019
Migrating SAP to Azure: A Practical Guide
February 26, 2020
Show all

Migrating SAP to Azure: An Overview

SAP is a set of tools and solutions for analytics and databasing. It is a key component for many business processes and is used by 80% of Fortune 500 companies. SAP is also used by Microsoft; the two companies have been partners for over 25 years. A recent development in this partnership was the announcement that SAP is now fully supported on Microsoft Azure. 

Azure support for SAP is a significant opportunity for organizations that are already using or are planning to migrate to the cloud. However, migrating SAP to Azure can be a complex process that requires significant expertise and effort. 

The following guide provides a high-level overview of this process to give you a basic understanding of the requirements of migration. For a more in depth guideline, you can refer to Azure’s SAP Deployment Checklist.

Preparing for Migration

The preparation phase of a migration can be the longest. It requires research, negotiation, budgeting, and communication. When preparing, you need to perform the following steps.

1) Create an Inventory

When preparing for migration, you need to start with an inventory of your SAP components. This inventory includes applications that you want to move and any SAP interfaces you are using. 

2) Decide on an Architecture

Next, you need to determine your desired architecture. Three-tier designs are recommended for greater flexibility and easier maintenance. Three-tier designs include a database, application, and presentation layer.

Part of architecture planning is choosing a deployment method. 

  • Self-deployment—you can choose between deploying on Large Instances or Virtual Machines (VMs). Large Instances are dedicated servers with isolated resources. VMs share resources with other tenants but are significantly cheaper.
  • Managed deployment—you can use SAP Cloud Platform (CP). SAP CP is a fully-managed service that handles configuration and deployment for you.

3) Determine Your Network and Regions

Once you know what architecture you want to use, you need to decide which regions you plan to deploy to. You also need to determine how you will connect to these regions across your deployment and from your on-premise resources.

4) Choose a Migration Method

Finally, once you understand what resources you need to move and what sort of architecture you’re moving to, you can select your migration method. The method you choose depends on how your current resources are hosted, what applications you’re using, and how your data is stored. 

Your migration method has a significant impact on the timing and success of your migration. It is important to make sure you fully understand the implications of whatever method you choose.

Defining the Details of Your Architecture

There are four areas to focus on when deciding the details of your architecture—security, scalability and performance, availability and recoverability, and efficiency.

1) Security 

To determine the proper security settings for your future deployment, you need to first understand what parts of security you are responsible for. The table below shows the breakdown of security responsibility you need to follow.

Your ResponsibilitiesShared ResponsibilityProvider Responsibilities
Self deploymentData governance and rights management, endpoints, account and access management, identity and directory infrastructure, applications, network controls, and OS
Physical hosts,  data centers, and networks
SAP CP deploymentData governance and rights management, endpoints, and account and access managementIdentity and directory infrastructure, applications, and network controlsOS, physical hosts,  data centers, and networks

When configuring for security, you should include the following services:

  • Azure Active Directory—enables single sign-on (SSO). SSO reduces the number of credentials you need to create and makes user management easier.
  • Network Security Groups—enables you to filter traffic and restrict public access to resources. Network Security Groups help you isolate your deployment and limit access to authorized users.
  • Azure Disk Encryption—enables you to encrypt VM disks and storage. Encryption ensures that only users with an authorized encryption key can access your disks and data.

2) Scalability and Performance

During configuration, you need to right-size your resources for optimal performance. This includes compute, storage, and network resources. If you undersize you will have bottlenecks and if you oversize you will pay for unused resources.

Keep in mind that you can scale up resources when needed. You can scale by either increasing compute capacity or by adding additional servers. However, this isn’t instantaneous. Scaling is most efficient when you know that you’ll have temporarily higher demands.

You should consider using ExpressRoute for a private, dedicated connection. This connection service provides more reliability, lower latency, faster speed, and better security than a standard connection. It is also a good idea to enable Accelerated Networking. Accelerated Networking further decreases the latency and increases the speed of your network transfers.

3) Availability and Recoverability

Use multiple small application servers instead of one large server to provide resiliency and protect against unplanned downtime. 

There are multiple ways to ensure availability and data duplication:

  • Availability Sets—protect against failures in data centers. Availability Sets duplicate data on multiple VMs within a single data center.
  • Availability Zones—protect against the failure of entire data centers. Availability Zones duplicate data on multiple data centers within a region. 
  • Region Pairs—protect against regional outages or disasters. Region Pairs duplicate data in multiple regions. This regional duplication enables disaster recovery.

Regardless of your data duplication, ensure that you have backups of both your database and your applications. You can use built-in HANA System Replication for your database and Azure Site-to-Site Recovery for your applications. You can also create manual backups although this is a more laborious process.

4) Efficiency 

Make sure you are only moving the data and applications you need. Moving unnecessary data or applications wastes time, bandwidth, and storage space. Using a hybrid storage solution that integrates with Azure can help ease this process. Hybrid storage makes it easier to transfer data between on-premise and cloud locations. It can enable you to easily move additional files later if you find you need them.

If you need to run SAP applications 24/7, consider using Azure Reserved Instances. These instances are cheaper but require that you prepay for services. 

Try to automate your deployment wherever possible to reduce configuration errors and ensure consistency. There are templates available that you can use for automation. These templates use Terraform modules to deploy components and Ansible playbooks to install and configure your database and applications.

Running a Test Deployment

A test deployment enables you to make adjustments and refine your configurations before going to production. During this deployment, you should verify VM types, storage, networking, availability and disaster recovery, and communication timeout settings. 

Test your availability and disaster recovery procedures by shutting off select VMs and running backup and restore sequences. 

Test your security to ensure that users are only able to take the actions you expect. Ensure that databases can’t be accessed publicly and that data is encrypted. In this deployment, it is best practice to use simulated data whenever possible. Simulated data reduces your risk of private data being breached if your set-up is not secure.

Compare your test deployment performance to your current implementation. When comparing, make sure to evaluate multiple jobs and workloads. You should include your highest anticipated and average levels.

During your testing, it helps to create documentation of your configurations and processes. You can use this document as guidance when maintaining your production system. 


Migrating SAP to Azure enables you to take advantage of the benefits of the cloud, including flexibility and scalability. SAP in Azure can also provide significant cost savings, particularly if your current infrastructure needs an upgrade. 

Hopefully, this article helped you understand some of what a migration entails. Using the guidelines here and the resources provided, you can begin planning a successful migration of your SAP workloads.

Tao is a passionate software engineer who works in a leading big data analysis company in Silicon Valley. Previously Tao has worked in big IT companies such as IBM and Cisco. Tao has a MS degree in Computer Science from University of McGill and many years of experience as a teaching assistant for various computer science classes.

Leave a Reply

Your email address will not be published.


get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!

Level Up Big Data Pdf Book


get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!

Jenkins Level Up

Get started with Jenkins!!!

get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!