Case Study: Firstech - Amazon Aurora Migration

October 28, 2024

Case Study: Firstech - Aurora RDS

Summary

Firstech’s mission is to enhance the safety of every car-owner’s driving experience. For the past 20 years, Firstech has focused on creating innovative solutions for enhancing driver safety, comfort, and convenience. Their primary product line is a new brand of remote starters, which offer better features and a more tech-friendly installation experience. Firstech’s innovation has earned them six CES Innovation Awards and three Mobile Electronics Top Vendor Awards. Their products are available at over 2000 retail locations across North America.

Problem

Firstech needed a highly available and performant Postgres database solution. Cost of the solution was also a driver in the decision making process. Additionally, there was a manual intervention anytime a failover occurred (whether manual or automated). This resulted in downtime until existing monitoring detected application issues, which then required research into the failure cause.

Why AWS?

Firstech is an existing enterprise client of AWS, depending on a suite of services including ECS, RDS, IoT, Kinesis for their primary product line of automotive remote starter devices. They are familiar with the services and wished to consolidate more of their digital infrastructure with AWS. Understanding that Heroku services use AWS internally, they hoped to benefit from cost savings by managing the infrastructure directly. They also desired to benefit from having more direct control over the infrastructure in AWS, consolidating the logging and tools to familiar AWS services and consolidating billing interfaces, oversight and activity overhead.

Solution

The customer’s RDS instances were migrated from standalone RDS to Aurora. As part of a second phase of the initiative, the Aurora instances were migrated from provisioned instances to serverless instances to allow the database to scale up and down according to the level of activity on the customer’s application.

Additionally, using EventBridge alongside Lambda allowed us to devise a solution to automatically restart related ECS services during a failover. Eventbridge was configured to execute the Lambda upon RDS failover. The Lambda would then restart the desired ECS services, re-establishing the connection to the newly promoted RDS instance.

Results

Using Aurora, with its shared storage subsystem, resulted in reduced costs due to I/O (with Aurora ~1000K/month). It also increased the reliability of failovers. Serverless has cut approximately 1-2K per month from costs and will be more with additional application write optimizations in progress.

Downtime during RDS failovers is now < 1 min when it used to be significantly longer.

Firstech and Ordinary Experts continue their working relationship with several exciting initiatives on the horizon. Ordinary Experts will move on to provide infrastructure assistance in refactoring their primary application. There is a large initiative following to expand Firstech’s main Drone application infrastructure to be multi-region for disaster recovery and automatic failover.

About Ordinary Experts

Ordinary Experts is an AWS Consulting Partner, focused on DevOps and Infrastructure as Code on AWS. Ordinary Experts works with businesses from enterprises to start-ups to automate and secure their AWS environments. Ordinary Experts’ team is based primarily in the US, with some near-shore resources in Mexico. Ordinary Experts also runs AWS Immersion Days for its clients and has the AWS CloudFormation Delivery service validation.