M*Modal (now part of the Healthcare Information Systems division of 3M), headquartered in Pittsburgh, PA, offers a new breed of AI-based speech comprehension applications. With over 1,000 employees across the U.S, the company’s hosted conversational documentation services help healthcare providers capture clinical information from dictation, and transform it directly into accessible, retrievable, and shareable electronic files. M*Modal serves hospitals, medical clinics, and medical transcription companies representing a transaction volume of more than 400 million dictation minutes a year.
M*Modal needed to ensure high availability and disaster recovery (DR) support for their key Fluency for Transcription (FFT) systems. Additionally, the company desired to modernize its upcoming Workforce Management application (WFM) to take advantage of the Azure cloud by migrating key components to Azure.
A key component of M*Modal’s technology relies on users being able to dial-in to a data center that contains specialized hardware for capturing audio dictation. Because this hardware cannot be moved to the cloud, M*Modal required a hybrid cloud environment. The data center had adequate bandwidth to support additional connectivity, so a site-to-site VPN was used to connect to Azure while a new ExpressRoute was being deployed.
M*Modal customers have very high SLA expectations. High availability is a strict business requirement, so there could be no downtime during the cloud migration. To support this, the web and application servers, supporting databases, file shares, and Active Directory domain controllers needed to be hot-migrated to Azure, and the transition from the data center to Azure needed to be seamless and transparent to M*Modal’s end-users.
The solution consisted of several components with multiple Wintellect resources focusing on each area of interest.
Networking and Infrastructure
Wintellect worked with M*Modal networking and infrastructure staff to extend their on-premise network into Azure, and to create virtualized network resources and Azure infrastructure-as-a-service (IaaS) components to their Azure subscription(s), with a focus on repeatable and reusable deployment patterns. Wintellect utilized existing Cisco routers in M*Modal’s data centers to create a virtual private network (VPN) connected to Azure, connecting the data center to Azure.
The existing database servers were configured to replicate to similar database environments hosted on virtual machines in Azure, ensuring that data was consistent between the data center and the cloud. While a portion of the data was stored in MongoDB, many of the applications relied on versions of Microsoft SQL Server ranging from 2000 Standard SP3 to 2016 Enterprise SP1, as well as an Oracle RAC environment. Similarly, Windows Server 2012 domain controllers were configured to replicate with VM’s in Azure, again ensuring consistency between the hybrid on-premises and cloud environments. All Windows Servers and databases were migrated from on-premise to be rehosted on Azure.
Wintellect utilized Azure Site Recovery (ASR) to replicate the remaining application and web servers, configuring virtual networks to support the environment in Azure. Azure Site Recovery is a native Disaster Recovery as a Service (DRaaS) offering, providing block-level, near-continuous replication and failover/recovery support for both Azure and on-premises environments. During the final migration, a failover to the Azure environment was triggered to provide a seamless cutover from the data center hosted systems to the Azure-hosted environments. The migrated virtual machines hosted applications utilizing various versions of Windows, from Windows Server Standard 2008 R2 to Windows Server Standard 2016. For hosting the Java and NodeJS environments, a mix of CentOS and RedHat Enterprise Linux (5.5, 6.5, and 6.6).
A functional disaster recovery environment was architected. This included specific action plans for each high-level system, preparing the existing systems for DR, and covered three specific areas of focus:
- Networks: Networking and connectivity requirements, including VNets, routers/firewalls, ExpressRoute, and IP addresses.
- Compute instances: Compute requirements, including migration strategies for each identified virtual machine.
- Storage/DB/File systems: Existing storage and database requirements for each system and the strategies to employ to minimize recovery time and license costs.
After the solution was architected and the action plans put in place, Wintellect performed a migration and configuration of selected environments to enable disaster recovery for the FFT application. This included configuring the virtual machines to use Azure Site Recovery, setup and configuration of networking and storage resources, and testing the failover and failback to ensure that the disaster recovery plan was functioning as expected.
To minimize future costs for stateless environments, Wintellect worked with M*Modal to recreate the virtual machines utilizing Ansible and Azure Resource Manager (ARM). By rebuilding the environments using infrastructure-as-code (IaC) principles, it enabled M*Modal to quickly set up new development/test environments. With appropriate IaC in place, systems could now be provisioned on-demand instead of relying on failover to replicated environments. This reduced the costs of the disaster recovery options, streamlined development, and enabled operations and development to collaborate on the definitions for each new system deployed.
Workforce Management Application
Wintellect performed a migration of the following environments to Azure, and created DevOps pipelines to allow for continued automated deployment to the environments:
- Two (2) Node.js based application servers, migrated to Azure Websites.
- A cluster of three (3) MongoDB servers migrated to Azure virtual machines, utilizing availability zones (AZs).
- The scheduled and long-running Node.js tasks (“back-office”) were migrated from dedicated virtual machines to Azure Web Jobs and/or Azure Functions.
Knowledge Transfer and Training
Wintellect provided interactive onboarding sessions and training to M*Modal staff to support them in their transition to cloud-based operations and management of their systems, with a focus on repeatable and reusable deployment patterns. Topics included Azure Web Sites, virtual machines, containers, and Azure subscription management.
Figure 1 - Deployment Architecture
M*Modal needed a partner that was expert at providing the Azure networking, infrastructure, and application skills needed to take their apps & infrastructure to the Azure cloud, in a manner that was simple and efficient. They also desired transition support and training in the cloud technologies that were new to them at the time.
- Wintellect is a Microsoft Gold Cloud Platform, Application Development, Data Platform, and Data Analytics partner
- Wintellect is a Microsoft Gold Learning Partner and a top trainer in Azure cloud.
- Wintellect has deep experience in developing Azure cloud application and Infrastructure solutions.
- Wintellect is a recognized leader in software and cloud architecture.
M*Modal was able to move key applications and infrastructure from on-premises to the Azure cloud quickly and easily, beginning their journey to the cloud, and significantly reducing networking TCO while increasing their agility as a business – leveraging the power of the Azure cloud.