Date: May 7, 2020Reading Time: 3 minutes
As a software engineer for customer experience with SIOS, I often help companies who are migrating their on-premises high availability clustering environments to the cloud.
Cloud migration is a process, not a destination. When we engage a customer transitioning to the cloud, it’s often late in the planning process, which isn’t ideal, but not unusual in a cloud migration. Below are six cloud migration challenges we see all too frequently.
Time – Understanding how long it takes for data transfer to the cloud
How long will it take to get your data from on-premise into the cloud? It can vary quite drastically depending on your application, type of data, and cloud provider. One often overlooked challenge is the time required to sync data from the primary node to secondary node, and in some cases to the disaster recovery (DR) site. Customers who don’t account for resync times are left twiddling their thumbs while data replicates.
Cost – Understanding cost implications of data transfer within the cloud
Data transfer within a cloud region is free of charge. Data transfer between regions will incur a cost. Typically, we see architectures where primary and secondary nodes are located in separate cloud availability zones within a region. Cost can increase significantly when a DR site is introduced because the DR site will always be in another region. Disaster recovery for data-rich applications like SAP NetWeaver may be cost inhibitive to replicate across regions.
Replication Between Regions
Inter-region replication introduces another cloud migration challenge: replication type. Asynchronous or synchronous replication within an AZ is determined by the RTO and RPO requirements of the customer. Regardless of instance size, data replication will experience some latency when crossing between regions. SIOS recommends asynchronous replication between regions to reduce the impact of that latency. Concurrency Labs provided some insightful information on latency between EC2 regions.
Cloud Configuration quirks
Ready-made OS images can be deployed from the cloud. This convenience comes at a cost, introducing another factor to configuration management. The cloud-init service included on SuSE Enterprise Linux images optimized for cloud can remove user-defined virtual IP addresses. Nothing stops a PoC quite like a virtual IP address disappearing every two minutes!
The scale of cloud computing provides greater security than a business can afford in an on-premise datacenter. Cloud workloads take advantage of cutting-edge security without even knowing it. For example, by default AWS EC2 instances block any traffic that is not sent by or sent to the instance itself. This is a great feature for securing a network in the cloud. If a system requires Network Address Translation (NAT), EC2 default security measures will cause IP addresses to fail. Disabling source/destination check from the console will resolve the issue. Depending on a user’s familiarity with AWS this can take between a few clicks to a few support calls. Understanding the specifics of how a system interacts in an environment is key to a successful cloud migration.
Cloud User Acceptance Testing (UAT)
Customers coming from an on-prem system need to be reminded that resources are no longer a limiting factor. In the cloud, systems can effortlessly be copied and run in isolation of production, something not trivial on-premise. On-demand access to IT resources allows UAT of HA and DR to expand beyond “shut down the primary node”. Networks can be sabotaged, kernels can be panicked, even databases can be corrupted and none of this will impact production! Identifying and testing these scenarios improves HA and DR posture.
Executing a successful cloud migration requires input from all stakeholders and some challenges are to be expected. Availability and disaster recovery are core aspects of any enterprise workload. Whether SIOS is already part of your current system or will be part of your future cloud migration, get us involved!
-Harrison Howell, Software Engineer for Customer Experience