How SkyTouch Technology migrated and optimized its business-critical applications to the AWS Cloud to gain business agility and cost benefits
SkyTouch Technology was launched in 2013 as a division of Choice Hotels, one of the largest hotel chains in the world. SkyTouch offers the industry’s first and most widely used cloud-based hotel property management system. Since partnering with AWS in 2018, SkyTouch has grown to become the most widely used Hotel Operating Platform with more than 6,800 property installations.
In this blog post, I will share SkyTouch Technology’s migration of its critical business applications to AWS and the opportunities this migration created for SkyTouch.
Motivation for Migration
SkyTouch’s two primary motivations for moving to AWS are increased business agility and saving on operating cost. The time to delivery of new product features is a critical component of SkyTouch’s business.
The hotel industry is one of the industries hit hardest by the COVID-19 pandemic. According to STR, a hospitality data tracker, the occupancy rate dropped more than 30 percent and the revenue per available room dropped more than 50 percent. SkyTouch was facing at least two big challenges under the pandemic. One was how to save on operating costs and the other was how to improve their operational efficiency and scalability.
SkyTouch’s initial architecture consisted of two monolithic applications, supported by several smaller services. One of their business-critical applications, choiceADVANTAGE®, offers hotel property management capability, full rate, inventory synchronization, and automatically manages reservations
to over 6,800 hotels worldwide. The major databases behind these systems were SQL Server and Informix installations. This architecture severely limited their ability to deliver features rapidly because they could not scale development in a monolithic architecture and infrastructure changes were difficult and time consuming to accomplish in the physical data center.
To overcome these challenges, SkyTouch began a journey to decompose the monolithic applications into a microservices architecture, a project that would be very difficult to accomplish with the limitations of their data center. Instead, migrating to AWS provides a number of key benefits unavailable in their datacenter:
- Easily rehost Windows applications and SQL Server databases to Amazon Elastic Compute Cloud (Amazon EC2) with minimized downtime.
- Flexibility to rapidly provision infrastructure on demand with Amazon EC2.
- Capability to deploy software rapidly and with fewer errors through automation, leveraging the APIs and tooling support provided by AWS.
- Ability to leverage AWS services – such as Amazon Simple Queue Service (Amazon SQS), Amazon Relational Database Service (Amazon RDS) for SQL Server, Amazon Elasticache, and Serverless on AWS – to accelerate software development and reduce the operational overhead of infrastructure management.
Migrating to AWS also provided a number of cost benefits. Leveraging AWS Auto Scaling capabilities, along with the ability to quickly provision and decommission infrastructure, is a key cost management enabler. SkyTouch’s demand is highly cyclical, both on a daily and seasonal basis. Provisioning infrastructure that can easily scale up during busy summer months and scale down when demand is lower allows SkyTouch to match capacity to demand. This flexibility also significantly reduces the overhead of right-sizing infrastructure resources, eliminating the overhead and long lead times required to purchase and provision new hardware in the data center. Finally, AWS provides more flexibility with licensing for Microsoft Windows Server and SQL Server databases since the license is bundled with the instances and charged only when the instance is running.
Key Steps of Migration
The migration to AWS was a major undertaking. Not only did SkyTouch need to minimize the impact of downtime for their customers, they also had to plan for numerous integrations between systems, customers, and third parties. The AWS Migration Acceleration Program (MAP) for Windows helped SkyTouch reach migration goals even faster with best practices, tools, and incentives.
In the first phase of the migration, the team worked through the network architecture, planned connectivity from their physical data center and ensured that the design would meet security and compliance requirements (see Figure 1). In parallel, all of the system integration points were identified and validated.
In the second phase, the team provisioned all the necessary infrastructure in a test environment, restored the databases using backups transferred from the data center to Amazon Simple Storage Service (Amazon S3) and deployed the applications. Extensive testing was performed to validate functionality and integration points and properly configure and size the infrastructure to handle the production traffic volumes.
Once testing was complete, the SkyTouch team set up the production environment and worked through planning the production cutover. In order to migrate their SQL Server databases, they joined the new production cluster to the existing on-premises availability group. This allowed SkyTouch to synchronize the databases between AWS and their data center, with the benefit of validation prior to cutover and a quick failover path should any major problems occur during the migration. The planning process ensured all of the cutover steps were coordinated in such a way as to minimize downtime, prevent data loss, and validated proper and ordered flow of asynchronous messaging. All the careful planning and testing paid dividends, as SkyTouch was able to fully cut over to the new AWS environment in four hours.
Figure 1. Skytouch Network Architecture
In phase 1, SkyTouch ran into two main challenges. The first challenge was to ensure compliance with PCI, SOX, and overall security requirements, especially around the networking and data flows between AWS and the data center. SkyTouch mitigated this by working closely with their compliance and InfoSec teams during the design phase to continuously refine the network architecture. AWS Transit Gateway became a key solution that allowed SkyTouch to maintain proper network segmentation between their production and non-production AWS accounts and the physical data center.
The other challenge in phase 1 was determining all the application integration points. As a 17-year-old legacy application that is core to SkyTouch’s business, there were numerous integrations with both internal and external systems that had been added over the life of the system. The SkyTouch migration team met with application owners and architecture teams from across the organization to determine which integration points existed and how the integrations worked. The team also walked through source code and configuration files and monitored network traffic to both validate what was learned and identify items that were missed.
With phase 2, SkyTouch was very concerned with mitigating risks to the migration, especially the production cutover. The primary mitigation strategies that SkyTouch used including:
- SkyTouch ensured that they had all of the affected teams engaged during the testing phase to quickly solve any integration issues.
- The team performed extensive load testing to identify and resolve any potential performance concerns. The SkyTouch team made heavy use of application performance monitoring tools, Amazon CloudWatch, and database monitoring to evaluate application performance and compare to on-premise baselines.
- SkyTouch completed multiple walkthroughs of the cutover plan to iron out the order of steps and ensure that nothing was missed.
- Teams pre-staged the entire production environment prior to the cutover to minimize downtime. For one of the primary steps, the team joined the new Amazon RDS for SQL Server instances to the existing on-premises availability group. This allowed SkyTouch to fully replicate the production databases well ahead of the actual cutover date to perform validation.
- SkyTouch ensured that all of their infrastructure provisioning and application deployments were fully automated to reduce the risk of user error and to enable them to rapidly deploy through multiple test environments, which significantly reduced the time it took to provision new environments.
One year after the migration of their hotel property management system to AWS, SkyTouch has realized all the benefits that were expected from the migration.
- Application and database performance has been outstanding. Application latency has dropped considerably – even with running on similar-sized compute instances compared to their on-premise environment – due to newer, more efficient hardware and Nitro hypervisors in AWS. This improvement was also due in part to the database running much more efficiently, with faster transaction performance under load and reduced blocking and wait times. For choiceADVANTAGE®, the average latency reduced by nearly 30 percent. The SkyTouch team also eliminated frequent latency spikes that occurred under heavy load during peak hours. Additionally, application stability was greatly improved as the application now runs with ½ the CPU utilization at the same load when compared to virtual machines with the same vCPU and physical memory allocation in the data center.
The key factors that drove these improvements:
- Greater ability to fine-tune the performance of individual Amazon EBS storage volumes on the database allowed SkyTouch to eliminate high latency wait times under heavy load.
- Ability to match appropriate instance types and sizes, such as X/R instance families for memory-intensive database workloads with specific SkyTouch workloads. SkyTouch took advantage of more efficient hardware, such as Graviton, and hypervisor technologies, such as Nitro, when they became available. In the physical datacenter, technology had long upgrade cycles when new technologies become dated, even before being deployed.
- Downtime for the SkyTouch property management system was reduced by 77 percent year over year. SkyTouch deployed software and configuration changes faster with zero downtime. They also used AWS Auto Scaling to increase capacity during heavy traffic periods and transient workload spikes to increase stability and reduce mean time to repair.
- SkyTouch has made significant progress in its journey towards a microservices architecture, with nine new SkyTouch microservices running in the AWS production environment and several more in development.
- Fully automated software delivery pipelines have been developed for microservice and serverless applications, and SkyTouch is currently working towards full automation of all legacy applications as well.
- SkyTouch optimized infrastructure costs by implementing auto scaling and taking advantage of savings plans and reserved instances, providing a savings of 35 percent over on-demand pricing.
- One significant positive impact of the migration related to the pandemic itself was SkyTouch’s ability to rapidly scale the environment based on demand. Travel rapidly increased to pre-pandemic levels beginning with Memorial Day 2021. SkyTouch quickly increased instance sizes on databases and changed infrastructure in real-time based on the impact of changing user traffic, ensuring that all systems were available and performant. With a lot of uncertainty around what the demand for travel would look like in 2021, it would have been very difficult to plan and adjust capacity to match their user traffic in a traditional data center.
What are the next steps for SkyTouch’s AWS cloud journey? Stay tuned…
AWS can help you assess how your company can get the most out of cloud. Join the millions of AWS customers that trust us to migrate and modernize their most important applications in the cloud. To learn more on modernizing Windows Server or SQL Server, visit Windows on AWS. Contact us to start your modernization journey today.